15 #ifndef ABSBEAMLINE_VerticalFFAMagnet_H
16 #define ABSBEAMLINE_VerticalFFAMagnet_H
97 inline bool bends()
const {
return false;}
206 const double mm=1000.;
ParticleAttrib< Vector_t > P
Interface for a single beam element.
PartBunchBase< double, 3 > * RefPartBunch_m
void setBBLength(double bbLength)
ElementBase * clone() const
void accept(BeamlineVisitor &visitor) const
bool getFieldValue(const Vector_t &R, Vector_t &B) const
void setWidth(double width)
double getFieldIndex() const
size_t getMaxOrder() const
std::vector< std::vector< double > > getDfCoefficients() const
std::unique_ptr< endfieldmodel::EndFieldModel > endField_m
void calculateDfCoefficients()
BGeometryBase & getGeometry()
void setMaxOrder(size_t maxOrder)
std::vector< std::vector< double > > dfCoefficients_m
double getPositiveVerticalExtent() const
double getNegativeVerticalExtent() const
StraightGeometry straightGeometry_m
VerticalFFAMagnet & operator=(const VerticalFFAMagnet &rhs)
double getBBLength() const
VerticalFFAMagnet(const std::string &name)
void setNegativeVerticalExtent(double negativeExtent)
void setFieldIndex(double index)
endfieldmodel::EndFieldModel * getEndField() const
void getDimensions(double &, double &) const
bool apply(const size_t &i, const double &t, Vector_t &E, Vector_t &B)
void setEndField(endfieldmodel::EndFieldModel *endField)
void setPositiveVerticalExtent(double positiveExtent)
Abstract base class for accelerator geometry classes.
A geometry representing a straight line.
The magnetic field of a multipole.
Abstract base class for electromagnetic fields.