public interface IElement extends IComponent
IElement
exposed objects may interact with physical aspects of the particle
beam which are expressed by the IProbe interface.
These interactions between IElement
objects and
IProbe
objects are defined by dynamics objects exposing
the IAlgorithm
interface.
Modifier and Type | Field and Description |
---|---|
static double |
LightSpeed
Speed of light in a vacuum (meters/second)
|
static double |
Permeability
Magnetic permeability of free space (Henries/meter)
|
static double |
Permittivity
Electric permittivity of free space (Farad/meter)
|
static double |
UnitCharge
The unit electric charge (Farads)
|
Modifier and Type | Method and Description |
---|---|
double |
elapsedTime(IProbe probe,
double dblLen)
Returns the time taken for the probe
probe to propagate
through a subsection of the element with length dblLen . |
double |
energyGain(IProbe probe,
double dblLen)
Returns energy gain provided by a subsection of the element during the
given length for the particular probe.
|
PhaseMap |
transferMap(IProbe probe,
double dblLen)
Compute the transfer matrix for subsection of this element of length
dblLen for the specified given probe. |
backPropagate, backPropagate, getHardwareNodeId, getId, getLength, getType, initializeFrom, propagate, propagate
static final double LightSpeed
static final double UnitCharge
static final double Permittivity
static final double Permeability
double elapsedTime(IProbe probe, double dblLen)
probe
to propagate
through a subsection of the element with length dblLen
.probe
- propagating probedblLen
- length of subsection to propagate through metersdouble energyGain(IProbe probe, double dblLen)
probe
- determine energy gain for this probedblLen
- length of subsection to calculate energy gainPhaseMap transferMap(IProbe probe, double dblLen) throws ModelException
dblLen
for the specified given probe. That is, this method should
return the incremental transfer matrix.dblLen
- length of sub-elementprobe
- probe containing parameters for the sub-sectional transfer matrixModelException
- unable to compute transfer maptransferMap(IProbe, double)