1 #ifndef CLASSIC_BMultipoleField_HH
2 #define CLASSIC_BMultipoleField_HH
88 double skew(
int)
const;
112 void scale(
double scalar);
122 Pair(
double normal,
double skewed = 0.0);
194 #endif // CLASSIC_BMultipoleField_HH
Pair operator*(double scale) const
void operator=(const Pair &)
virtual BVector Bfield(const Point3D &P) const
Get field.
double normal(int) const
Get component.
void operator+=(const Pair &)
void operator*=(double scale)
void setNormalComponent(int n, double Bn)
Set component.
void operator-=(const Pair &)
virtual ~BMultipoleField()
BMultipoleField & operator=(const BMultipoleField &)
double getSkewComponent(int n) const
Get component.
BMultipoleField & subtractField(const BMultipoleField &field)
Subtract from field.
void setSkewComponent(int n, double Bn)
Set component.
void scale(double scalar)
Scale the field.
double skew(int) const
Get component.
double getNormalComponent(int n) const
Get component.
Abstract base class for static magnetic fields.
BMultipoleField()
Default constructor.
The magnetic field of a multipole.
BMultipoleField & addField(const BMultipoleField &field)
Add to field.
Pair operator+(const Pair &) const
int order() const
Return order.