Package xal.model.probe
Class EnsembleProbe
Represents an ensemble of particles. This
IProbe type maintains
an Ensemble object which is a collection of
Particles. Thus, this probe designed for multi-particle
simulation.- Author:
- Christopher Allen
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intuse grid finite difference schemestatic final intuse grid Fourier transform methodstatic final intno field calculation scheme specifiedstatic final intuse 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_LABELFields 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 aProbeStateobject.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 objectintReturn the field calculation methodReturn the coordinates of the ensemble centroid.protected EnsembleProbeStatereadStateFrom(DataAdaptor container) Read the contents of the suppliedDataAdaptorand return an instance of the appropriate Trajectory species.voidsetEnsemble(Ensemble ens) Set the EnsembleProbe state to the value of the argument NOTE: the copy operation can be expansive for largeEnsemblesvoidsetFieldCalculation(int enmFldCalc) Set the field calculation methodMethods inherited from class xal.model.probe.BunchProbe
beamDCPerveance, beamPerveance, bunchCharge, getBeamCurrent, getBunchFrequency, setBeamCurrent, setBunchFrequencyMethods 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 ofEnsembleProbewhich is a deep copy of the argument NOTE: the copy operation can be expansive for largeEnsembles- Parameters:
probe- object to be copied
-
-
Method Details
-
createProbeState
Creates a state snapshot of this probe's state and returns it as aProbeStateobject.- Specified by:
createProbeStatein classBunchProbe<EnsembleProbeState>- Returns:
- a
EnsembleProbeStateencapsulating the probe's current state - See Also:
-
createEmptyProbeState
Creates a new, emptyEnsembleProbeState.- Specified by:
createEmptyProbeStatein 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:
createTrajectoryin 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:ProbeCreates a deep copy of the probe- Specified by:
copyin 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 largeEnsembles- Parameters:
ens-Ensembleobject 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:ProbeRead the contents of the suppliedDataAdaptorand return an instance of the appropriate Trajectory species.- Specified by:
readStateFromin classProbe<EnsembleProbeState>- Parameters:
container-DataAdaptorto read a Trajectory from- Returns:
- a ProbeState for the contents of the DataAdaptor
- Throws:
DataFormatException- error encountered reading the DataAdaptor
-