33 #ifndef ABSBEAMLINE_ScalingFFAMagnet_H
34 #define ABSBEAMLINE_ScalingFFAMagnet_H
113 inline bool bends()
const override;
double getPhiStart() const
void setMaxOrder(size_t maxOrder)
constexpr double e
The value of .
Interface for basic beam line object.
void setPhiStart(double phiStart)
void setEndField(endfieldmodel::EndFieldModel *endField)
bool getFieldValueCylindrical(const Vector_t &R, Vector_t &B) const
void setFieldIndex(double k)
const double fp_tolerance
A simple arc in the XZ plane.
bool bends() const override
PlanarArcGeometry planarArcGeometry_m
void accept(BeamlineVisitor &visitor) const override
double getTanDelta() const
endfieldmodel::EndFieldModel * getEndField() const
void setRMax(double rMax)
ScalingFFAMagnet(const std::string &name)
size_t getMaxOrder() const
double getVerticalExtent() const
Abstract base class for accelerator geometry classes.
std::vector< std::vector< double > > dfCoefficients_m
std::vector< std::vector< double > > getDfCoefficients()
void setPhiEnd(double phiEnd)
void setTanDelta(double tanDelta)
void setRMin(double rMin)
void setAzimuthalExtent(double azimuthalExtent)
Abstract base class for electromagnetic fields.
ScalingFFAMagnet & operator=(const ScalingFFAMagnet &rhs)
EMField & getField() override
The magnetic field of a multipole.
bool apply(const size_t &i, const double &t, Vector_t &E, Vector_t &B) override
void getDimensions(double &zBegin, double &zEnd) const override
BGeometryBase & getGeometry() override
bool getFieldValue(const Vector_t &R, Vector_t &B) const
Vector_t getCentre() const
void calculateDfCoefficients()
endfieldmodel::EndFieldModel * endField_m
void setCentre(Vector_t centre)
Interface for a single beam element.
double getFieldIndex() const
double getAzimuthalExtent() const
double getDipoleConstant() const
void setDipoleConstant(double Bz)
ElementBase * clone() const override
void setVerticalExtent(double verticalExtent)