|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
#include <OpalMultipoleT.h>


Public Types | |
| enum | { TP = COMMON , RFRINGE , LFRINGE , HAPERT , VAPERT , MAXFORDER , ROTATION , EANGLE , BBLENGTH , ANGLE , MAXXORDER , VARRADIUS , ENTRYOFFSET , SCALING_MODEL , SIZE } |
Public Types inherited from OpalElement | |
| enum | { TYPE , APERT , LENGTH , ELEMEDGE , WAKEF , PARTICLEMATTERINTERACTION , ORIGIN , ORIENTATION , X , Y , Z , THETA , PHI , PSI , DX , DY , DZ , DTHETA , DPHI , DPSI , OUTFN , DELETEONTRANSVERSEEXIT , COMMON } |
| The common attributes for all elements. More... | |
Public Types inherited from Element | |
| enum | ReferenceType { IS_ENTRY , IS_CENTRE , IS_EXIT } |
| Reference for element positioning. More... | |
Public Member Functions | |
| OpalMultipoleT () | |
| OpalMultipoleT * | clone (const std::string &name) override |
| void | update () override |
| void | print (std::ostream &os) const override |
| Print the object. | |
Public Member Functions inherited from OpalElement | |
| virtual | ~OpalElement () |
| virtual double | getLength () const |
| Return element length. | |
| const std::string | getTypeName () const |
| Return the element's type name. | |
| std::pair< ApertureType, std::vector< double > > | getApert () const |
| const std::string | getWakeF () const |
| Return the element's type name. | |
| const std::string | getParticleMatterInteraction () const |
| const std::string | getWMaterial () const |
| const std::string | getWakeGeom () const |
| std::vector< double > | getWakeParam () const |
| const std::string | getWakeConductivity () const |
| virtual void | parse (Statement &) |
| Parse the element. | |
| virtual void | updateUnknown (ElementBase *) |
| Transmit the `‘unknown’' (not known to OPAL) attributes to CLASSIC. | |
Public Member Functions inherited from Element | |
| virtual | ~Element () |
| virtual bool | canReplaceBy (Object *object) |
| Test if replacement is allowed. | |
| virtual const std::string | getCategory () const |
| Return the object category as a string. | |
| virtual bool | shouldTrace () const |
| Trace flag. | |
| virtual bool | shouldUpdate () const |
| Update flag. | |
| virtual double | getEntrance (ReferenceType) const |
| Return arc length from origin to entrance (negative !). | |
| virtual double | getExit (ReferenceType) const |
| Return arc length from origin to exit (positive !). | |
| virtual void | setShared (bool) |
| Set shared flag. | |
| ElementBase * | getElement () const |
| Return the embedded CLASSIC element. | |
| void | setElement (ElementBase *) |
| Assign new CLASSIC element. | |
Public Member Functions inherited from Object | |
| virtual | ~Object () |
| void | copyAttributes (const Object &) |
| Copy attributes from another object. | |
| virtual void | execute () |
| Execute the command. | |
| virtual Attribute * | findAttribute (const std::string &name) |
| Find an attribute by name. | |
| virtual const Attribute * | findAttribute (const std::string &name) const |
| Find an attribute by name. | |
| virtual Object * | makeTemplate (const std::string &, TokenStream &, Statement &) |
| Macro handler function. | |
| virtual Object * | makeInstance (const std::string &name, Statement &, const Parser *) |
| Macro handler function. | |
| virtual void | parseShortcut (Statement &, bool eval=true) |
| Parser for single-attribute commands. | |
| virtual void | printValue (std::ostream &) const |
| virtual void | printHelp (std::ostream &) const |
| Print help. | |
| virtual void | replace (Object *oldObject, Object *newObject) |
| Replace references. | |
| bool | isBuiltin () const |
| True, if [b]this[/b] is a built-in object. | |
| virtual bool | isShared () const |
| Shared flag. | |
| void | setDirty (bool) |
| Set/reset the [b]modified[/b] flag. | |
| bool | isDirty () const |
| True, if the [b]modified[/b] flag is set. | |
| void | setFlag (bool) |
| Flag/unflag this object, e. g. to control output of objects for. | |
| bool | isFlagged () const |
| True, if [b]this[/b] is flagged by setFlag(true). | |
| const Object * | getBaseObject () const |
| Return the object's base type object. | |
| const std::string & | getOpalName () const |
| Return object name. | |
| Object * | getParent () const |
| Return parent pointer. | |
| bool | isTreeMember (const Object *subTree) const |
| Test for tree membership. | |
| void | setOpalName (const std::string &name) |
| Set object name. | |
| void | setParent (Object *) |
| Set parent object. | |
| void | clear () |
| Clear the occurrence counter. | |
| int | increment () |
| Increment and return the occurrence counter. | |
| int | occurrenceCount () |
| Return the occurrence counter. | |
| void | registerReference (Invalidator *a) |
| Register a reference to this object. | |
| void | unregisterReference (Invalidator *a) |
| Unegister a reference to this object. | |
| void | registerOwnership (const AttributeHandler::OwnerType &itsClass) const |
Public Member Functions inherited from RCObject | |
| int | addReference () const |
| Increment reference count. | |
| int | removeReference () const |
| Decrement the reference count. | |
| bool | isShared () const |
| Test for sharing. | |
Private Member Functions | |
| OpalMultipoleT (const OpalMultipoleT &)=delete | |
| void | operator= (const OpalMultipoleT &)=delete |
| OpalMultipoleT (const std::string &name, OpalMultipoleT *parent) | |
Static Private Attributes | |
| static constexpr double | DefaultMAXFORDER = 3.0 |
| static constexpr double | MinimumMAXFORDER = 1.0 |
| static constexpr double | MaximumMAXFORDER = 20.0 |
| static constexpr double | DefaultMAXXORDER = 20.0 |
Additional Inherited Members | |
Static Public Member Functions inherited from Element | |
| static Element * | find (const std::string &name) |
| Find named Element. | |
Public Attributes inherited from Object | |
| std::vector< Attribute > | itsAttr |
| The object attributes. | |
Protected Member Functions inherited from OpalElement | |
| OpalElement (int size, const char *name, const char *help) | |
| Exemplar constructor. | |
| OpalElement (const std::string &name, OpalElement *parent) | |
| Clone constructor. | |
| void | registerOwnership () const |
Protected Member Functions inherited from Element | |
| Element (int size, const char *name, const char *help) | |
| Constructor for exemplars. | |
| Element (const std::string &name, Element *parent) | |
| Constructor for clones. | |
Protected Member Functions inherited from Object | |
| Object (int size, const char *name, const char *help) | |
| Constructor for exemplars. | |
| Object (const std::string &name, Object *parent) | |
| Constructor for clones. | |
Protected Member Functions inherited from RCObject | |
| RCObject () | |
| Default constructor. | |
| RCObject (const RCObject &) | |
| Copy constructor. | |
| virtual | ~RCObject ()=0 |
| RCObject & | operator= (const RCObject &right) |
Static Protected Member Functions inherited from OpalElement | |
| static void | printMultipoleStrength (std::ostream &os, int order, int &len, const std::string &sName, const std::string &tName, const Attribute &length, const Attribute &vNorm, const Attribute &vSkew) |
| Print multipole components in OPAL-8 format. | |
| static void | printAttribute (std::ostream &os, const std::string &name, const std::string &image, int &len) |
| Print an attribute with a OPAL-8 name (as an expression). | |
| static void | printAttribute (std::ostream &os, const std::string &name, double value, int &len) |
| Print an attribute with a OPAL-8 name (as a constant). | |
Protected Attributes inherited from Object | |
| bool | builtin |
| Built-in flag. | |
| bool | modified |
| Dirty flag. | |
| bool | flagged |
| Object flag. | |
Definition at line 25 of file OpalMultipoleT.h.
| anonymous enum |
| Enumerator | |
|---|---|
| TP | |
| RFRINGE | |
| LFRINGE | |
| HAPERT | |
| VAPERT | |
| MAXFORDER | |
| ROTATION | |
| EANGLE | |
| BBLENGTH | |
| ANGLE | |
| MAXXORDER | |
| VARRADIUS | |
| ENTRYOFFSET | |
| SCALING_MODEL | |
| SIZE | |
Definition at line 29 of file OpalMultipoleT.h.
| OpalMultipoleT::OpalMultipoleT | ( | ) |
Default constructor initialises UI parameters.
Definition at line 26 of file OpalMultipoleT.cpp.
References ANGLE, BBLENGTH, DefaultMAXFORDER, DefaultMAXXORDER, EANGLE, ENTRYOFFSET, HAPERT, Object::itsAttr, LFRINGE, Attributes::makeBool(), Attributes::makeReal(), Attributes::makeRealArray(), Attributes::makeString(), MAXFORDER, MAXXORDER, OpalElement::registerOwnership(), RFRINGE, ROTATION, SCALING_MODEL, Element::setElement(), TP, VAPERT, and VARRADIUS.
Referenced by clone().

|
privatedelete |
|
private |
Definition at line 67 of file OpalMultipoleT.cpp.
References name, and Element::setElement().

|
overridevirtual |
Inherited copy constructor
Implements Object.
Definition at line 72 of file OpalMultipoleT.cpp.
References name, and OpalMultipoleT().

|
privatedelete |
|
overridevirtual |
Print the object.
Reimplemented from OpalElement.
Definition at line 76 of file OpalMultipoleT.cpp.
References OpalElement::print().

|
overridevirtual |
Update the MultipoleT with new parameters from UI parser
Reimplemented from OpalElement.
Definition at line 80 of file OpalMultipoleT.cpp.
References ANGLE, BBLENGTH, EANGLE, ENTRYOFFSET, Attributes::getBool(), Element::getElement(), Attributes::getReal(), Attributes::getRealArray(), Attributes::getString(), HAPERT, Object::itsAttr, OpalElement::LENGTH, LFRINGE, MAXFORDER, MaximumMAXFORDER, MAXXORDER, MinimumMAXFORDER, RFRINGE, ROTATION, SCALING_MODEL, MultipoleT::setElementLength(), Units::T2kG, TP, OpalElement::update(), OpalElement::updateUnknown(), VAPERT, VARRADIUS, and WARNMSG.

|
staticconstexprprivate |
Default value for maximum series expansion order
Definition at line 68 of file OpalMultipoleT.h.
Referenced by OpalMultipoleT().
|
staticconstexprprivate |
Definition at line 71 of file OpalMultipoleT.h.
Referenced by OpalMultipoleT().
|
staticconstexprprivate |
Definition at line 70 of file OpalMultipoleT.h.
Referenced by update().
|
staticconstexprprivate |
Definition at line 69 of file OpalMultipoleT.h.
Referenced by update().