32 "The \"OCTUPOLE\" element defines a Octupole.") {
34 (
"K3",
"Normalised upright octupole coefficient in m^(-4)");
36 (
"DK3",
"Normalised upright octupole coefficient error in m^(-4)");
38 (
"K3S",
"Normalised skew octupole coefficient in m^(-4)");
40 (
"DK3S",
"Normalised skew octupole coefficient error in m^(-4)");
Attribute makeReal(const std::string &name, const std::string &help)
Make real attribute.
static OpalData * getInstance()
constexpr double c
The velocity of light in m/s.
void setNormalComponent(int, double)
Set normal component.
void setSkewComponent(int n, double Bn)
Set component.
virtual void setField(const BMultipoleField &field)
Set mulitpole field.
void setNormalComponent(int n, double Bn)
Set component.
virtual void print(std::ostream &) const
Print the object.
virtual OpalOctupole * clone(const std::string &name)
Make clone.
OpalOctupole()
Exemplar constructor.
void setElement(ElementBase *)
Assign new CLASSIC element.
virtual void print(std::ostream &) const
Print the element.
ElementBase * getElement() const
Return the embedded CLASSIC element.
double getP0() const
Return value of global reference momentum.
std::vector< Attribute > itsAttr
The object attributes.
double getReal(const Attribute &attr)
Return real value.
virtual void setElementLength(double length)
Set design length.
virtual void updateUnknown(ElementBase *)
Transmit the ``unknown'' (not known to OPAL) attributes to CLASSIC.
virtual void update()
Update the embedded CLASSIC multipole.
void setSkewComponent(int, double)
Set skew component.
virtual void update()
Update the embedded CLASSIC element.
void registerOwnership() const
The magnetic field of a multipole.