gov.sns.xal.model.elem
Class IdealDrift

java.lang.Object
  |
  +--gov.sns.xal.model.elem.Element
        |
        +--gov.sns.xal.model.elem.ThickElement
              |
              +--gov.sns.xal.model.elem.IdealDrift
All Implemented Interfaces:
IComponent, IElement

public class IdealDrift
extends ThickElement

Represents a drift space in a particle beam transport/accelerator system.


Field Summary
static java.lang.String s_strType
          string type identifier for all IdealDrift objects
 
Fields inherited from interface gov.sns.xal.model.IElement
LightSpeed, Permeability, Permittivity, UnitCharge
 
Constructor Summary
IdealDrift()
          JavaBean constructor - creates a new unitialized instance of IdealDrift BE CAREFUL
IdealDrift(java.lang.String strId, double dblLen)
          Creates a new instance of IdealDrift
 
Method Summary
 double elapsedTime(IProbe probe, double dblLen)
          Returns the time taken for the probe to drift through part of the element.
 double energyGain(IProbe probe, double dblLen)
          Return the energy gain imparted to a probe object.
 PhaseMap transferMap(IProbe probe, double dblLen)
          Computes the partial tranfer map for an ideal drift space.
 
Methods inherited from class gov.sns.xal.model.elem.ThickElement
getLength, setLength
 
Methods inherited from class gov.sns.xal.model.elem.Element
compDriftingTime, getId, getType, getUID, initializeFrom, print, propagate, setId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

s_strType

public static final java.lang.String s_strType
string type identifier for all IdealDrift objects

See Also:
Constant Field Values
Constructor Detail

IdealDrift

public IdealDrift(java.lang.String strId,
                  double dblLen)
Creates a new instance of IdealDrift

Parameters:
strId - string identifier for the element
dblLen - length of the drift

IdealDrift

public IdealDrift()
JavaBean constructor - creates a new unitialized instance of IdealDrift BE CAREFUL

Method Detail

elapsedTime

public double elapsedTime(IProbe probe,
                          double dblLen)
Returns the time taken for the probe to drift through part of the element.

Specified by:
elapsedTime in interface IElement
Specified by:
elapsedTime in class Element
Parameters:
probe - propagating probe
dblLen - length of subsection to propagate through meters
Returns:
the elapsed time through sectionUnits: seconds

energyGain

public double energyGain(IProbe probe,
                         double dblLen)
Return the energy gain imparted to a probe object.

Specified by:
energyGain in interface IElement
Specified by:
energyGain in class ThickElement
Parameters:
dblLen - dummy argument
probe - dummy argument
Returns:
returns a zero value

transferMap

public PhaseMap transferMap(IProbe probe,
                            double dblLen)
                     throws ModelException
Computes the partial tranfer map for an ideal drift space. Computes the transfer map for a drift of length dblLen.

Specified by:
transferMap in interface IElement
Specified by:
transferMap in class ThickElement
Parameters:
dblLen - length of drift
probe - requires rest and kinetic energy from probe
Returns:
transfer map of an ideal drift space for this probe
Throws:
ModelException - should not be thrown