|
||||||||||
| 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.Trace3dTracker
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.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 |
| 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 | |
Trace3dTracker()
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. |
| Methods inherited from class gov.sns.xal.model.alg.Tracker |
advanceProbe, getArchive, getDebugMode, getElemPosition, getProbeUpdatePolicy, getStartElementId, getStopElementId, getType, getVersion, initialize, load, 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 s_strTypeId
public static final int s_intVersion
public static final java.lang.Class s_clsProbeType
| Constructor Detail |
public Trace3dTracker()
| 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 state
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||