|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--gov.sns.xal.model.alg.Tracker
|
+--gov.sns.xal.model.alg.EnvelopeTracker
Tracking algorithm for EnvelopeProbe's. The EnvelopeProbe's
state, which is a CorrelationMatrix object, is advanced using the linear
dynamics portion of any beamline element (IElement exposing object) transfer
map. The linear portion is represented as a matrix, thus, the state advance is accomplished
with a transpose conjugation with this matrix.
The effects of space charge are also included in the dynamics calculations. Space charge
effects are also represented with a matrix transpose conjugation, however, the matrix is
computated using the values of the probe's correlation matrix. The result is a nonlinear
effect. The space charge forces are computed using a linear fit to the fields generated by
an ellipsoidal charge distribution with the same statistics described in the probe's
correlation matrix. The linear fit is weighted by the beam distribution itself, so it is
more accurate in regions of higher charged density. For a complete description see the reference
below.
EllipsoidalCharge,
Theory and Technique
of Beam Envelope Simulation| Field Summary | |
static java.lang.String |
OPTION_TAG
data node label for EnvelopeTracker settings |
static java.lang.Class |
s_clsProbeType
probe type recognized by this algorithm |
static int |
s_intVersion
current algorithm version |
static java.lang.String |
s_strTypeId
string type identifier for algorithm |
static java.lang.String |
USE_SPACECHARGE_TAG
label for use simple tracking (no space charge) |
| Fields inherited from class gov.sns.xal.model.alg.Tracker |
ATTRTAG_DEBUG, ATTRTAG_TYPE, ATTRTAG_UPDATE, ATTRTAG_VER, CALC_RFGAP_PHASE, NODETAG_ALG, NODETAG_TRACKER, NODETAG_TRAJ, UPDATE_ALWAYS, UPDATE_CUSTOM, UPDATE_ENTRANCE, UPDATE_ENTRANCEANDEXIT, UPDATE_EXIT |
| Constructor Summary | |
EnvelopeTracker()
Creates a new instance of EnvelopeTracker |
|
| Method Summary | |
protected void |
advanceState(IProbe ifcProbe,
IElement ifcElem,
double dblLen)
Advances the probe state through a subsection of the element with the specified length. |
void |
doPropagation(IProbe probe,
IElement elem)
Propagates the probe through the element. |
void |
load(DataAdaptor daptArchive)
Load the parameters of the algorithm from a data source exposing the IArchive interface. |
| Methods inherited from class gov.sns.xal.model.alg.Tracker |
advanceProbe, getArchive, getDebugMode, getElemPosition, getProbeUpdatePolicy, getStartElementId, getStopElementId, getType, getVersion, initialize, propagate, registerProbeType, save, setDebugMode, setElemPosition, setProbeUpdatePolicy, setStartElementId, setStopElementId, unsetStartElementId, unsetStopElementId, useRfGapPhaseCalculation, validElement, validProbe |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
public static final java.lang.String OPTION_TAG
public static final java.lang.String USE_SPACECHARGE_TAG
public static final java.lang.String s_strTypeId
public static final int s_intVersion
public static final java.lang.Class s_clsProbeType
| Constructor Detail |
public EnvelopeTracker()
| Method Detail |
public void doPropagation(IProbe probe,
IElement elem)
throws ModelException
doPropagation in class Trackerprobe - probe to propagateelem - element acting on probe
ModelException - invalid probe type or error in advancing probeTracker.advanceProbe(gov.sns.xal.model.IProbe, gov.sns.xal.model.IElement, double),
Tracker.validProbe(gov.sns.xal.model.IProbe)
protected void advanceState(IProbe ifcProbe,
IElement ifcElem,
double dblLen)
throws ModelException
ifcElem - interface to the beam elementifcProbe - interface to the probedblLen - length of element subsection to advance through
ModelException - bad element transfer matrix/corrupt probe statepublic void load(DataAdaptor daptArchive)
IArchive interface.
The superclass load method is called first, then the properties
particular to EnvTrackerAdapt are loaded.
- Specified by:
load in interface IArchive- Overrides:
load in class Tracker
- Parameters:
daptArchive - data source containing algorithm configuration- See Also:
gov.sns.tools.data.IArchive#load(gov.sns.tools.data.DataAdaptor)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||