|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--gov.sns.xal.model.elem.Element
|
+--gov.sns.xal.model.elem.ThinElement
Classes derived from ThinElement are modeled as having no length. Thus, space charge effects are neglected here. The IElement interface method getLength() always returns zero. However, a ThinElement may have an "effective length" which is a parameter used to determine it's effect on the beam, that is, it is used to compute the transfer matrix.
| Field Summary |
| Fields inherited from interface gov.sns.xal.model.IElement |
LightSpeed, Permeability, Permittivity, UnitCharge |
| Constructor Summary | |
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. |
|
| Method Summary | |
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 tranfer matrix for subsection of this element of length dblLen for the specified given probe. |
| 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 |
| Constructor Detail |
public ThinElement(java.lang.String strType)
strType - type identifier string of element
public ThinElement(java.lang.String strType,
java.lang.String strId)
strType - type string of elementstrId - string identifier of the element| Method Detail |
protected abstract double elapsedTime(IProbe probe)
probe - propagating probe
protected abstract double energyGain(IProbe probe)
protected abstract PhaseMap transferMap(IProbe probe)
throws ModelException
ModelExceptionpublic double getLength()
getLength in interface IComponentgetLength in class Element
public double elapsedTime(IProbe probe,
double dblLen)
elapsedTime in interface IElementelapsedTime in class Elementprobe - propagating probedblLen - length of subsection to propagate through meters
public double energyGain(IProbe probe,
double dblLen)
energyGain in interface IElementenergyGain in class Elementprobe - Probe for which energy gain is to be computed
public 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 IElementtransferMap in class ElementdblLen - length of subelementprobe - probe containing parameters for the subsectional transfer matrix
ModelException - unable to compute transfer map#transferMap()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||