public abstract class ThinElement extends Element
LightSpeed, Permeability, Permittivity, UnitCharge
Constructor and Description |
---|
ThinElement(java.lang.String strType)
Creates a new instance of ThinElement specifying the element type
identifier.
|
ThinElement(java.lang.String strType,
java.lang.String strId)
Creates a new instance of ThinElement specifying with the element
type identifier and the instance identifier.
|
Modifier and Type | Method and Description |
---|---|
protected abstract double |
elapsedTime(IProbe probe)
Returns the time taken for the probe to propagate through element.
|
double |
elapsedTime(IProbe probe,
double dblLen)
Returns the time taken for the probe to drift through part of the
element.
|
protected abstract double |
energyGain(IProbe probe)
Calculate the energy gain for this element on the supplied probe.
|
double |
energyGain(IProbe probe,
double dblLen)
Calculate the energy gain for this element.
|
double |
getLength()
Return the length of this element
|
protected abstract PhaseMap |
transferMap(IProbe probe)
Compute the transfer matrix of this element.
|
PhaseMap |
transferMap(IProbe probe,
double dblLen)
Compute the transfer matrix for subsection of this element of length
dblLen for the specified given probe. |
addCloseElements, applyAlignError, backPropagate, backPropagate, compDriftingTime, compProbeLocation, getAlignX, getAlignY, getAlignZ, getCloseElements, getHardwareNodeId, getId, getPosition, getType, getUID, initializeFrom, print, propagate, propagate, setAlign, setAlignX, setAlignY, setAlignZ, setHardwareNodeId, setId, setPosition, toString
public ThinElement(java.lang.String strType)
strType
- type identifier string of elementpublic ThinElement(java.lang.String strType, java.lang.String strId)
strType
- type string of elementstrId
- string identifier of the elementprotected abstract double elapsedTime(IProbe probe)
probe
- propagating probeprotected abstract double energyGain(IProbe probe)
protected abstract PhaseMap transferMap(IProbe probe) throws ModelException
ModelException
public double getLength()
getLength
in interface IComponent
getLength
in class Element
public double elapsedTime(IProbe probe, double dblLen)
elapsedTime
in interface IElement
elapsedTime
in class Element
probe
- propagating probedblLen
- length of subsection to propagate through meterspublic double energyGain(IProbe probe, double dblLen)
energyGain
in interface IElement
energyGain
in class Element
probe
- Probe for which energy gain is to be computeddblLen
- length of subsection to calculate energy gainpublic PhaseMap transferMap(IProbe probe, double dblLen) throws ModelException
dblLen
for the specified given probe. Because this is a thin
element (with no length), the length parameter is ignored in computing the
transfer matrix.transferMap
in interface IElement
transferMap
in class Element
dblLen
- length of subelementprobe
- probe containing parameters for the subsectional transfer matrixModelException
- unable to compute transfer map#transferMap()