gov.sns.xal.model.alg
Class ParticleTracker

java.lang.Object
  |
  +--gov.sns.xal.model.alg.Tracker
        |
        +--gov.sns.xal.model.alg.ParticleTracker
All Implemented Interfaces:
IAlgorithm, IArchive, java.rmi.Remote

public class ParticleTracker
extends Tracker

Algorithm for tracking a single particle, represented by the class ParticleProbe through a XAL modeling element, represented by an object exposing the IComponent interface.


Field Summary
static java.lang.Class s_clsProbeType
          probe type recognized by this algorithm
static int s_intVersion
          current version of this algorithm
static java.lang.String s_strTypeId
          string type identifier for this 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
ParticleTracker()
          Creates a new instance of ParticleTracker
 
Method Summary
protected  void advanceState(ParticleProbe probe, IElement ifcElem, double dblLen)
          Advances the probe state through the element.
 void doPropagation(IProbe ifcProbe, 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

s_strTypeId

public static final java.lang.String s_strTypeId
string type identifier for this algorithm

See Also:
Constant Field Values

s_intVersion

public static final int s_intVersion
current version of this algorithm

See Also:
Constant Field Values

s_clsProbeType

public static final java.lang.Class s_clsProbeType
probe type recognized by this algorithm

Constructor Detail

ParticleTracker

public ParticleTracker()
Creates a new instance of ParticleTracker

Method Detail

doPropagation

public void doPropagation(IProbe ifcProbe,
                          IElement elem)
                   throws ModelException
Propagates the probe through the element.

Specified by:
doPropagation in class Tracker
Parameters:
elem - element acting on probe
ifcProbe - probe to propagate
Throws:
ModelException - invalid probe type or error in advancing probe
See Also:
Tracker.advanceProbe(gov.sns.xal.model.IProbe, gov.sns.xal.model.IElement, double), Tracker.validProbe(gov.sns.xal.model.IProbe)

advanceState

protected void advanceState(ParticleProbe probe,
                            IElement ifcElem,
                            double dblLen)
                     throws ModelException
Advances the probe state through the element.

Parameters:
probe - probe being modified
dblLen - length of element to advance
Throws:
ModelException - bad element transfer matrix/corrupt probe state