38 "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 turn).");
43 "The initial radius of the first element to be placed in the ring [m].");
47 "The initial angle around the ring of the beam [deg].");
49 "An initial pr momentum offset of the beam.");
51 "The initial radius of the beam [m].");
53 "The rotational symmetry of the lattice.");
58 "The nominal RF frequency of the ring [MHz].");
61 "Set to 'false' to disable checking for closure of the ring");
63 "Minimum allowed radius during tracking [m]. If not defined, any radius is allowed. If MIN_R is defined, MAX_R must also be defined.");
65 "Maximum allowed radius during tracking [m]. If not defined, any radius is allowed. If MAX_R is defined, MIN_R must also be defined.");
void setBeamRInit(double rInit)
static AttCell * registerStringAttribute(const std::string &name)
Register a ``string'' element attribute.
Interface for basic beam line object.
virtual void fillRegisteredAttributes(const ElementBase &, ValueFlag)
Fill in all registered attributes.
ValueFlag
Switch for value desired on ATTLIST command.
virtual ElementBase * removeWrappers()
Return the design element.
virtual OpalRingDefinition * clone(const std::string &name)
void setIsClosed(bool isClosed)
std::vector< Attribute > itsAttr
The object attributes (see Attribute.hh).
void fillRegisteredAttributes(const ElementBase &base, ValueFlag flag)
virtual ElementBase * makeWrappers()
Allow errors.
void setScale(double scale)
constexpr double pi
The value of .
virtual ~OpalRingDefinition()
void setRingAperture(double minR, double maxR)
Base class for all beam line elements.
void setBeamPRInit(double pRInit)
void setElement(ElementBase *)
Assign new CLASSIC element.
void registerOwnership() const
virtual void print(std::ostream &) const
ElementBase * getElement() const
Return the embedded CLASSIC element.
void setBeamPhiInit(double phiInit)
void setLatticeThetaInit(double thetaInit)
Ring describes a ring type geometry for tracking.
void setRFFreq(double rfFreq)
double getReal(const Attribute &attr)
Return real value.
Attribute makeString(const std::string &name, const std::string &help)
Make string attribute.
Attribute makeReal(const std::string &name, const std::string &help)
Make real attribute.
void setHarmonicNumber(double cyclHarm)
static AttCell * registerRealAttribute(const std::string &name)
Register a ``real'' element attribute.
void setLatticeRInit(double rInit)
void setLatticePhiInit(double phiInit)
void setSymmetry(double symmetry)
virtual void print(std::ostream &) const
Print the object.
std::string getString(const Attribute &attr)
Get string value.