33 #ifndef ABSBEAMLINE_SBEND3D_H
34 #define ABSBEAMLINE_SBEND3D_H
101 inline bool bends()
const override;
void setFieldUnits(double fieldUnits)
void setLengthUnits(double lengthUnits)
int getPolynomialOrder() const
Abstract base class for electromagnetic fields.
void getDimensions(double &, double &) const override
std::string getFieldMapFileName() const
SBend3D(const std::string &name)
ElementBase * clone() const override
A simple arc in the XZ plane.
Abstract base class for accelerator geometry classes.
void setFieldMapFileName(const std::string &name)
EMField & getField() override
void initialise(PartBunchBase< double, 3 > *bunch, double &startField, double &endField) override
bool apply(const size_t &i, const double &t, Vector_t &E, Vector_t &B) override
std::string getFieldMapFileName() const
int getSmoothingOrder() const
double getFieldUnits() const
void setSmoothingOrder(int polyOrder)
BGeometryBase & getGeometry() override
handles field map grids with sector geometry
PlanarArcGeometry planarArcGeometry_m
double getLengthUnits() const
Interface for a single beam element.
bool bends() const override
The magnetic field of a multipole.
SectorMagneticFieldMap * map_m
void accept(BeamlineVisitor &visitor) const override
void setPolynomialOrder(int polyOrder)
SectorMagneticFieldMap * getSectorMagneticFieldMap() const