Package xal.model.probe
Class EnsembleProbe
Represents an ensemble of particles. This
IProbe
type maintains
an Ensemble
object which is a collection of
Particle
s. Thus, this probe designed for multi-particle
simulation.- Author:
- Christopher Allen
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
use grid finite difference schemestatic final int
use grid Fourier transform methodstatic final int
no field calculation scheme specifiedstatic final int
use a full potential summation of each particleFields inherited from class xal.model.probe.Probe
COMMENT_LABEL, PROBE_LABEL, stateCurrent, TEXT_LABEL, TIME_LABEL, trajHist, TYPE_LABEL
Fields inherited from interface xal.model.IProbe
LIGHT_SPEED, PERMITTIVITY, UNIT_CHARGE
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a new (empty) instance of EnsembleProbeEnsembleProbe
(EnsembleProbe probe) Copy Constructor. -
Method Summary
Modifier and TypeMethodDescriptioncopy()
Creates a deep copy of the probeCreates a new, emptyEnsembleProbeState
.Creates a state snapshot of this probe's state and returns it as aProbeState
object.Creates a trajectory of the proper type for saving the probe's history.electricField
(R3 ptFld) Get the electric field at a point in R3 from the ensemble.Return the correlation matrix of the distributionReturn the Ensemble state objectint
Return the field calculation methodReturn the coordinates of the ensemble centroid.protected EnsembleProbeState
readStateFrom
(DataAdaptor container) Read the contents of the suppliedDataAdaptor
and return an instance of the appropriate Trajectory species.void
setEnsemble
(Ensemble ens) Set the EnsembleProbe state to the value of the argument NOTE: the copy operation can be expansive for largeEnsemble
svoid
setFieldCalculation
(int enmFldCalc) Set the field calculation methodMethods inherited from class xal.model.probe.BunchProbe
beamDCPerveance, beamPerveance, bunchCharge, getBeamCurrent, getBunchFrequency, setBeamCurrent, setBunchFrequency
Methods inherited from class xal.model.probe.Probe
applyState, cloneCurrentProbeState, deepCopy, getAlgorithm, getArchive, getBeta, getComment, getCurrentElement, getCurrentElementTypeId, getCurrentHardwareId, getCurrentState, getGamma, getInitialState, getKineticEnergy, getLongitinalPhase, getMomentum, getPosition, getSpeciesCharge, getSpeciesName, getSpeciesRestEnergy, getTime, getTimestamp, getTrajectory, initialize, initializeFrom, load, lookupLastStateFor, newProbeInitializedFrom, performPostProcessing, readFrom, reset, save, setAlgorithm, setComment, setCurrentElement, setCurrentElementTypeId, setCurrentHardwareId, setKineticEnergy, setLongitudinalPhase, setPosition, setSpeciesCharge, setSpeciesName, setSpeciesRestEnergy, setTime, setTimestamp, setTracking, update
-
Field Details
-
FLDCALC_NONE
public static final int FLDCALC_NONEno field calculation scheme specified- See Also:
-
FLDCALC_SUMMATION
public static final int FLDCALC_SUMMATIONuse a full potential summation of each particle- See Also:
-
FLDCALC_GRIDFD
public static final int FLDCALC_GRIDFDuse grid finite difference scheme- See Also:
-
FLDCALC_GRIDFT
public static final int FLDCALC_GRIDFTuse grid Fourier transform method- See Also:
-
-
Constructor Details
-
EnsembleProbe
public EnsembleProbe()Creates a new (empty) instance of EnsembleProbe -
EnsembleProbe
Copy Constructor. Create a new instance ofEnsembleProbe
which is a deep copy of the argument NOTE: the copy operation can be expansive for largeEnsemble
s- Parameters:
probe
- object to be copied
-
-
Method Details
-
createProbeState
Creates a state snapshot of this probe's state and returns it as aProbeState
object.- Specified by:
createProbeState
in classBunchProbe<EnsembleProbeState>
- Returns:
- a
EnsembleProbeState
encapsulating the probe's current state - See Also:
-
createEmptyProbeState
Creates a new, emptyEnsembleProbeState
.- Specified by:
createEmptyProbeState
in classBunchProbe<EnsembleProbeState>
- Returns:
- a new, empty
EnsembleProbeState
- Since:
- Jul 1, 2014
-
createTrajectory
Creates a trajectory of the proper type for saving the probe's history.- Specified by:
createTrajectory
in classProbe<EnsembleProbeState>
- Returns:
- a new, empty
Trajectory<EnsembleProbeState>
for saving the probe's history
-
phaseMean
Return the coordinates of the ensemble centroid.- Returns:
- (homogeneous) phase space coordinates of ensemble centroid
-
getCorrelation
Return the correlation matrix of the distribution- Returns:
- symmetric 7x7 covariance matrix in homogeneous coordinates
- See Also:
-
copy
Description copied from class:Probe
Creates a deep copy of the probe- Specified by:
copy
in classProbe<EnsembleProbeState>
-
setFieldCalculation
public void setFieldCalculation(int enmFldCalc) Set the field calculation method- Parameters:
enmFldCalc
- field calculation method enumeration
-
setEnsemble
Set the EnsembleProbe state to the value of the argument NOTE: the copy operation can be expansive for largeEnsemble
s- Parameters:
ens
-Ensemble
object to be copied
-
getFieldCalculation
public int getFieldCalculation()Return the field calculation method -
getEnsemble
Return the Ensemble state object -
electricField
Get the electric field at a point in R3 from the ensemble.- Parameters:
ptFld
- field point to evaluation ensemble field- Returns:
- electric field at field point
-
readStateFrom
Description copied from class:Probe
Read the contents of the suppliedDataAdaptor
and return an instance of the appropriate Trajectory species.- Specified by:
readStateFrom
in classProbe<EnsembleProbeState>
- Parameters:
container
-DataAdaptor
to read a Trajectory from- Returns:
- a ProbeState for the contents of the DataAdaptor
- Throws:
DataFormatException
- error encountered reading the DataAdaptor
-