class
BMultipoleField
: public StaticMagneticField
(Return to index)
The magnetic field of a multipole.
The static components are defined by the equation
{center}
By + i * Bx = sum (Bn + i * An) (x + i * y) ** (n - 1)
{/center}
where the index n runs from 1 (dipole) to N (2N-pole).
The field component n is stored in the pairs[n-1],
The array pairs has the dimension N.
Type: |
Instantiable |
Superclasses: |
public StaticMagneticField |
Include file: |
./Fields/BMultipoleField.hh |
Inheritance
Synopsis (including inherited members):
- Public members:
-
BMultipoleField
()
;
-
BMultipoleField
(const BMultipoleField&)
;
-
virtual ~BMultipoleField
()
;
-
BMultipoleField& operator=
(const BMultipoleField&)
;
-
virtual BVector Bfield
(const Point3D&)const
;
-
virtual BVector Bfield
(const Point3D&,double)const
;
-
double getNormalComponent
(int)const
;
-
double getSkewComponent
(int)const
;
-
void setNormalComponent
(int,double)
;
-
void setSkewComponent
(int,double)
;
-
double normal
(int)const
;
-
double skew
(int)const
;
-
double& normal
(int)
;
-
double& skew
(int)
;
-
BMultipoleField& addField
(const BMultipoleField&)
;
-
BMultipoleField& subtractField
(const BMultipoleField&)
;
-
void scale
(double)
;
-
int order
()const
;
-
const EMField& operator=
(const EMField&)
;
-
virtual EVector Efield
(const Point3D&)const
;
-
virtual EVector Efield
(const Point3D&,double)const
;
-
virtual EBVectors EBfield
(const Point3D&)const
;
-
virtual EBVectors EBfield
(const Point3D&,double)const
;
-
static const EVector ZeroEfield
;
-
static const BVector ZeroBfield
;
-
static const EBVectors ZeroEBfield
;
Documentation:
- Public members:
-
BMultipoleField
()
;
- Default constructor.
Constructs a null field.
-
virtual BVector Bfield
(const Point3D&)const
;
- Get field.
Return the time-independent part of the magnetic field in point P.
This override forces implementation in derived classes.
-
virtual BVector Bfield
(const Point3D&,double)const
;
- Get field.
Return the magnetic field at time t in point P.
This override forces implementation in derived classes.
-
BMultipoleField& addField
(const BMultipoleField&)
;
- Add to field.
Add field to the old field; return new field.
-
double getNormalComponent
(int)const
;
- Get component.
Return the value of the n'th normal multipole component in T/m**(n-1).
If n is larger than N, the return value is zero.
-
double getSkewComponent
(int)const
;
- Get component.
Return the value of the n'th skew multipole component in T/m**(n-1).
If n is larger than N, the return value is zero.
-
double normal
(int)const
;
- Get component.
Return the value of the n'th normal multipole component in T/m**(n-1).
Fast version: n is not checked.
the result is undefined if it is larger than N.
-
double& normal
(int)
;
- Get component.
Return a reference to the n'th normal multipole component in T/m**(n-1).
Fast version: n is not checked.
the result is undefined if it is larger than N.
-
int order
()const
;
- Return order.
-
void scale
(double)
;
- Scale the field.
Multiply the field by scalar.
-
void setNormalComponent
(int,double)
;
- Set component.
Assign the value of the n'th normal multipole component in T/m**(n-1).
If n is larger than N, the new field component is inserted.
-
void setSkewComponent
(int,double)
;
- Set component.
Assign the value of the n'th skew multipole component in T/m**(n-1).
If n is larger than N, the new field component is inserted.
-
double skew
(int)const
;
- Get component.
Return the value of the n'th skew multipole component in T/m**(n-1).
Fast version: n is not checked.
the result is undefined if it is larger than N.
-
double& skew
(int)
;
- Get component.
Return a reference to the n'th skew multipole component in T/m**(n-1).
Fast version: n is not checked.
the result is undefined if it is larger than N.
-
BMultipoleField& subtractField
(const BMultipoleField&)
;
- Subtract from field.
Subtract field from the old field; return new field.
Documentation generated by fci on Mon Feb 7 11:41:31 2000