38 SIZE,
"RINGDEFINITION",
"The \"RINGDEFINITION\" element defines basic ring parameters.") {
41 "The assumed harmonic number of the ring (i.e. number of bunches in the ring on a given "
44 "LAT_RINIT",
"The initial radius of the first element to be placed in the ring [m].");
47 "The initial angle around the ring of the first element to be placed. [deg]");
50 "The angle relative to the tangent of the ring for the first element to be placed [deg].");
52 "BEAM_PHIINIT",
"The initial angle around the ring of the beam [deg].");
64 "IS_CLOSED",
"Set to 'false' to disable checking for closure of the ring");
67 "Minimum allowed radius during tracking [m]. If not defined, any radius is allowed. If "
68 "MIN_R is defined, MAX_R must also be defined.");
71 "Maximum allowed radius during tracking [m]. If not defined, any radius is allowed. If "
72 "MAX_R is defined, MIN_R must also be defined.");
Attribute makeBool(const std::string &name, const std::string &help)
Make logical attribute.
double getReal(const Attribute &attr)
Return real value.
Attribute makeReal(const std::string &name, const std::string &help)
Make real attribute.
bool getBool(const Attribute &attr)
Return logical value.
Ring describes a ring type geometry for tracking.
void setSymmetry(double symmetry)
void setBeamRInit(double rInit)
void setIsClosed(bool isClosed)
void setLatticeThetaInit(double thetaInit)
void setHarmonicNumber(double cyclHarm)
void setLatticePhiInit(double phiInit)
void setRingAperture(double minR, double maxR)
void setScale(double scale)
void setBeamPRInit(double pRInit)
void setBeamPhiInit(double phiInit)
void setRFFreq(double rfFreq)
void setLatticeRInit(double rInit)
ElementBase * getElement() const
Return the embedded CLASSIC element.
void setElement(ElementBase *)
Assign new CLASSIC element.
std::vector< Attribute > itsAttr
The object attributes.
virtual void updateUnknown(ElementBase *)
Transmit the ``unknown'' (not known to OPAL) attributes to CLASSIC.
virtual void print(std::ostream &) const
Print the object.
virtual void update()
Update the embedded CLASSIC element.
OpalElement(int size, const char *name, const char *help)
Exemplar constructor.
void registerOwnership() const
virtual void print(std::ostream &) const
virtual ~OpalRingDefinition()
virtual OpalRingDefinition * clone(const std::string &name)