| OPAL (Object Oriented Parallel Accelerator Library)
    2.2.0
    OPAL | 
The MULTIPOLE element. More...
#include <OpalMultipole.h>


| Public Types | |
| enum | { KN = COMMON, DKN, KS, DKS, SIZE } | 
| The attributes of class OpalMultipole.  More... | |
|  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, COMMON } | 
| The common attributes for all elements.  More... | |
| enum | ValueFlag { ACTUAL_FLAG, IDEAL_FLAG, ERROR_FLAG } | 
| Switch for value desired on ATTLIST command.  More... | |
|  Public Types inherited from Element | |
| enum | ReferenceType { IS_ENTRY, IS_CENTRE, IS_EXIT } | 
| Reference for element positioning.  More... | |
| Public Member Functions | |
| OpalMultipole () | |
| Exemplar constructor.  More... | |
| virtual | ~OpalMultipole () | 
| virtual OpalMultipole * | clone (const std::string &name) | 
| Make clone.  More... | |
| virtual void | print (std::ostream &) const | 
| Print the object.  More... | |
| virtual void | fillRegisteredAttributes (const ElementBase &, ValueFlag) | 
| Fill in all registered attributes.  More... | |
| virtual void | update () | 
| Update the embedded CLASSIC multipole.  More... | |
|  Public Member Functions inherited from OpalElement | |
| virtual | ~OpalElement () | 
| virtual double | getLength () const | 
| Return element length.  More... | |
| const std::string | getTypeName () const | 
| Return the element's type name.  More... | |
| std::pair < ElementBase::ApertureType, std::vector< double > > | getApert () const | 
| const std::string | getWakeF () const | 
| Return the element's type name.  More... | |
| 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.  More... | |
| virtual void | updateUnknown (ElementBase *) | 
| Transmit the ``unknown'' (not known to OPAL) attributes to CLASSIC.  More... | |
|  Public Member Functions inherited from Element | |
| virtual | ~Element () | 
| virtual bool | canReplaceBy (Object *object) | 
| Test if replacement is allowed.  More... | |
| virtual const std::string | getCategory () const | 
| Return the object category as a string.  More... | |
| virtual bool | shouldTrace () const | 
| Trace flag.  More... | |
| virtual bool | shouldUpdate () const | 
| Update flag.  More... | |
| virtual double | getEntrance (ReferenceType) const | 
| Return arc length from origin to entrance (negative !).  More... | |
| virtual double | getExit (ReferenceType) const | 
| Return arc length from origin to exit (positive !).  More... | |
| virtual void | setShared (bool) | 
| Set shared flag.  More... | |
| ElementBase * | getElement () const | 
| Return the embedded CLASSIC element.  More... | |
| void | setElement (ElementBase *) | 
| Assign new CLASSIC element.  More... | |
|  Public Member Functions inherited from Object | |
| virtual | ~Object () | 
| void | copyAttributes (const Object &) | 
| Copy attributes from another object.  More... | |
| virtual void | execute () | 
| Execute the command.  More... | |
| virtual Attribute * | findAttribute (const std::string &name) | 
| Find an attribute by name.  More... | |
| virtual const Attribute * | findAttribute (const std::string &name) const | 
| Find an attribute by name.  More... | |
| virtual Object * | makeTemplate (const std::string &, TokenStream &, Statement &) | 
| Macro handler function.  More... | |
| virtual Object * | makeInstance (const std::string &name, Statement &, const Parser *) | 
| Macro handler function.  More... | |
| virtual void | parseShortcut (Statement &) | 
| Parser for single-attribute commands.  More... | |
| virtual void | printValue (std::ostream &) const | 
| virtual void | printHelp (std::ostream &) const | 
| Print help.  More... | |
| virtual void | replace (Object *oldObject, Object *newObject) | 
| Replace references.  More... | |
| bool | isBuiltin () const | 
| True, if [b]this[/b] is a built-in object.  More... | |
| virtual bool | isShared () const | 
| Shared flag.  More... | |
| void | setDirty (bool) | 
| Set/reset the [b]modified[/b] flag.  More... | |
| bool | isDirty () const | 
| True, if the [b]modified[/b] flag is set.  More... | |
| void | setFlag (bool) | 
| Flag/unflag this object, e. g. to control output of objects for.  More... | |
| bool | isFlagged () const | 
| True, if [b]this[/b] is flagged by setFlag(true).  More... | |
| const Object * | getBaseObject () const | 
| Return the object's base type object.  More... | |
| const std::string & | getOpalName () const | 
| Return object name.  More... | |
| Object * | getParent () const | 
| Return parent pointer.  More... | |
| bool | isTreeMember (const Object *subTree) const | 
| Test for tree membership.  More... | |
| void | setOpalName (const std::string &name) | 
| Set object name.  More... | |
| void | setParent (Object *) | 
| Set parent object.  More... | |
| void | clear () | 
| Clear the occurrence counter.  More... | |
| int | increment () | 
| Increment and return the occurrence counter.  More... | |
| int | occurrenceCount () | 
| Return the occurrence counter.  More... | |
| void | registerReference (Invalidator *a) | 
| Register a reference to this object.  More... | |
| void | unregisterReference (Invalidator *a) | 
| Unegister a reference to this object.  More... | |
| void | registerOwnership (const AttributeHandler::OwnerType &itsClass) const | 
|  Public Member Functions inherited from RCObject | |
| int | addReference () const | 
| Increment reference count.  More... | |
| int | removeReference () const | 
| Decrement the reference count.  More... | |
| bool | isShared () const | 
| Test for sharing.  More... | |
| Private Member Functions | |
| OpalMultipole (const OpalMultipole &) | |
| void | operator= (const OpalMultipole &) | 
| OpalMultipole (const std::string &name, OpalMultipole *parent) | |
| Additional Inherited Members | |
|  Static Public Member Functions inherited from OpalElement | |
| static AttCell * | findRegisteredAttribute (const std::string &name) | 
| Find a registered attribute.  More... | |
| static void | setRegisteredAttribute (const std::string &, double) | 
| Store a registered real attribute.  More... | |
| static void | setRegisteredAttribute (const std::string &, const std::string &) | 
| Store a registered string attribute.  More... | |
|  Static Public Member Functions inherited from Element | |
| static Element * | find (const std::string &name) | 
| Find named Element.  More... | |
|  Public Attributes inherited from Object | |
| std::vector< Attribute > | itsAttr | 
| The object attributes (see Attribute.hh).  More... | |
|  Protected Member Functions inherited from OpalElement | |
| OpalElement (int size, const char *name, const char *help) | |
| Exemplar constructor.  More... | |
| OpalElement (const std::string &name, OpalElement *parent) | |
| Clone constructor.  More... | |
| void | registerOwnership () const | 
|  Protected Member Functions inherited from Element | |
| Element (int size, const char *name, const char *help) | |
| Constructor for exemplars.  More... | |
| Element (const std::string &name, Element *parent) | |
| Constructor for clones.  More... | |
|  Protected Member Functions inherited from Object | |
| Object (int size, const char *name, const char *help) | |
| Constructor for exemplars.  More... | |
| Object (const std::string &name, Object *parent) | |
| Constructor for clones.  More... | |
|  Protected Member Functions inherited from RCObject | |
| RCObject () | |
| Default constructor.  More... | |
| RCObject (const RCObject &) | |
| Copy constructor.  More... | |
| 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.  More... | |
| 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).  More... | |
| 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).  More... | |
| static AttCell * | registerRealAttribute (const std::string &name) | 
| Register a ``real'' element attribute.  More... | |
| static AttCell * | registerStringAttribute (const std::string &name) | 
| Register a ``string'' element attribute.  More... | |
|  Protected Attributes inherited from Object | |
| bool | builtin | 
| Built-in flag.  More... | |
| bool | modified | 
| Dirty flag.  More... | |
| bool | flagged | 
| Object flag.  More... | |
|  Static Protected Attributes inherited from OpalElement | |
| static std::map< std::string, OwnPtr< AttCell > > | attributeRegistry | 
| The registry for named attributes.  More... | |
The MULTIPOLE element.
Definition at line 28 of file OpalMultipole.h.
| anonymous enum | 
The attributes of class OpalMultipole.
| Enumerator | |
|---|---|
| KN | |
| DKN | |
| KS | |
| DKS | |
| SIZE | |
Definition at line 33 of file OpalMultipole.h.
| OpalMultipole::OpalMultipole | ( | ) | 
Exemplar constructor.
Definition at line 38 of file OpalMultipole.cpp.
References DKN, DKS, Object::itsAttr, KN, KS, Attributes::makeRealArray(), OpalElement::registerOwnership(), and Element::setElement().
Referenced by clone().

| 
 | virtual | 
Definition at line 66 of file OpalMultipole.cpp.
| 
 | private | 
| 
 | private | 
Definition at line 60 of file OpalMultipole.cpp.
References Element::setElement().

| 
 | virtual | 
Make clone.
Implements Object.
Definition at line 70 of file OpalMultipole.cpp.
References OpalMultipole().

| 
 | virtual | 
Fill in all registered attributes.
Reimplemented from OpalElement.
Definition at line 81 of file OpalMultipole.cpp.
References OpalElement::ACTUAL_FLAG, Physics::c, OpalElement::ERROR_FLAG, MultipoleWrapper::errorField(), OpalElement::fillRegisteredAttributes(), MultipoleWrapper::getDesign(), Multipole::getField(), MultipoleWrapper::getField(), OpalData::getInstance(), OpalElement::getLength(), OpalData::getP0(), OpalElement::IDEAL_FLAG, BMultipoleField::normal(), BMultipoleField::order(), OpalElement::registerRealAttribute(), ElementBase::removeAlignWrapper(), AttCell::setReal(), and BMultipoleField::skew().

| 
 | private | 
| 
 | virtual | 
Print the object.
Reimplemented from OpalElement.
Definition at line 75 of file OpalMultipole.cpp.
References OpalElement::print().

| 
 | virtual | 
Update the embedded CLASSIC multipole.
Reimplemented from OpalElement.
Definition at line 116 of file OpalMultipole.cpp.
References Physics::c, DKN, DKS, Element::getElement(), OpalData::getInstance(), OpalElement::getLength(), OpalData::getP0(), Attributes::getRealArray(), Object::itsAttr, KN, KS, ElementBase::removeWrappers(), ElementBase::setElementLength(), MultipoleRep::setField(), BMultipoleField::setNormalComponent(), Multipole::setNormalComponent(), BMultipoleField::setSkewComponent(), Multipole::setSkewComponent(), OpalElement::update(), and OpalElement::updateUnknown().

 1.8.5
 1.8.5