OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
OPAL
|
#include <OpalRBend3D.h>
Public Types | |
enum | { ANGLE = COMMON , K0 , K0S , E1 , FMAPFN , GAP , HAPERT , DESIGNENERGY , 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 , 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 | |
OpalRBend3D () | |
Exemplar constructor. More... | |
virtual | ~OpalRBend3D () |
virtual OpalRBend3D * | clone (const std::string &name) |
Make clone. More... | |
virtual void | update () |
Update the embedded CLASSIC bend. More... | |
virtual void | print (std::ostream &) const |
Print the object. 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 &, bool eval=true) |
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 | |
OpalRBend3D (const OpalRBend3D &) | |
void | operator= (const OpalRBend3D &) |
OpalRBend3D (const std::string &name, OpalRBend3D *parent) | |
Private Attributes | |
OpalWake * | owk_m |
ParticleMatterInteraction * | parmatint_m |
Additional Inherited Members | |
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. 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... | |
Protected Attributes inherited from Object | |
bool | builtin |
Built-in flag. More... | |
bool | modified |
Dirty flag. More... | |
bool | flagged |
Object flag. More... | |
Definition at line 26 of file OpalRBend3D.h.
anonymous enum |
Enumerator | |
---|---|
ANGLE | |
K0 | |
K0S | |
E1 | |
FMAPFN | |
GAP | |
HAPERT | |
DESIGNENERGY | |
SIZE |
Definition at line 30 of file OpalRBend3D.h.
OpalRBend3D::OpalRBend3D | ( | ) |
Exemplar constructor.
Definition at line 28 of file OpalRBend3D.cpp.
References ANGLE, DESIGNENERGY, E1, FMAPFN, GAP, HAPERT, Object::itsAttr, K0, K0S, Attributes::makeReal(), Attributes::makeString(), OpalElement::registerOwnership(), and Element::setElement().
Referenced by clone().
|
virtual |
Definition at line 62 of file OpalRBend3D.cpp.
References owk_m, and parmatint_m.
|
private |
|
private |
Definition at line 54 of file OpalRBend3D.cpp.
References name, and Element::setElement().
|
virtual |
Make clone.
Implements Object.
Definition at line 67 of file OpalRBend3D.cpp.
References name, and OpalRBend3D().
Referenced by update().
|
private |
|
virtual |
Print the object.
Reimplemented from OpalElement.
Definition at line 152 of file OpalRBend3D.cpp.
References OpalElement::print().
|
virtual |
Update the embedded CLASSIC bend.
Reimplemented from OpalElement.
Definition at line 72 of file OpalRBend3D.cpp.
References ANGLE, clone(), ParticleMatterInteraction::clone(), DESIGNENERGY, E1, endl(), ERRORMSG, OpalWake::find(), ParticleMatterInteraction::find(), ElementBase::fixPosition(), FMAPFN, GAP, ElementBase::getCSTrafoGlobal2Local(), Element::getElement(), ElementBase::getName(), Object::getOpalName(), CoordinateSystemTrafo::getOrigin(), Attributes::getReal(), CoordinateSystemTrafo::getRotation(), Attributes::getString(), ParticleMatterInteraction::handler_m, HAPERT, ParticleMatterInteraction::initParticleMatterInteractionHandler(), OpalWake::initWakefunction(), ElementBase::isPositioned(), Object::itsAttr, K0, K0S, OpalElement::LENGTH, owk_m, parmatint_m, OpalElement::PARTICLEMATTERINTERACTION, ElementBase::RECTANGULAR, ElementBase::releasePosition(), ElementBase::setAperture(), BendBase::setBendAngle(), ElementBase::setCSTrafoGlobal2Local(), BendBase::setDesignEnergy(), ElementBase::setElementLength(), BendBase::setEntranceAngle(), BendBase::setFieldAmplitude(), BendBase::setFieldMapFN(), BendBase::setFullGap(), ElementBase::setParticleMatterInteraction(), ElementBase::setWake(), sin(), OpalElement::update(), OpalElement::updateUnknown(), OpalElement::WAKEF, and OpalWake::wf_m.
|
private |
Definition at line 63 of file OpalRBend3D.h.
Referenced by update(), and ~OpalRBend3D().
|
private |
Definition at line 64 of file OpalRBend3D.h.
Referenced by update(), and ~OpalRBend3D().