1 #ifndef CLASSIC_MPSplitIntegrator_HH
2 #define CLASSIC_MPSplitIntegrator_HH
27 template <
class T,
unsigned Dim>
32 template <
class T,
int N>
class FVps;
99 bool revBeam,
bool revTrack)
const;
105 bool revBeam,
bool revTrack)
const;
111 bool revBeam,
bool revTrack)
const;
117 bool revBeam,
bool revTrack)
const;
122 void getSlices(std::vector<double> &v)
const;
147 #endif // CLASSIC_MPSplitIntegrator_HH
void getSlices(std::vector< double > &v) const
Return slice positions.
virtual MPSplitIntegrator * clone() const
Make clone.
virtual BGeometryBase & getGeometry()
Get geometry.
Interface for general multipole.
Abstract base class for accelerator geometry classes.
void operator=(const MPSplitIntegrator &)
virtual ~MPSplitIntegrator()
virtual void getMap(FVps< double, 6 > &map, const PartData &data, bool revBeam, bool revTrack) const
Get map from MPSplitIntegrator.
void applyMultipole(FVps< double, 6 > &map, const BMultipoleField &field, double factor) const
virtual ElementBase::ElementType getType() const
Get element type string.
The magnetic field of a multipole.
virtual void trackParticle(OpalParticle &part, const PartData &data, bool revBeam, bool revTrack) const
Track particle through MPSplitIntegrator.
void applyDrift(FVps< double, 6 > &map, double, const PartData &) const
virtual void trackBunch(PartBunchBase< double, 3 > *bunch, const PartData &data, bool revBeam, bool revTrack) const
Track particle bunch through MPSplitIntegrator.
Integrator replacing each multipole by a set of thin lenses.
virtual void trackMap(FVps< double, 6 > &map, const PartData &data, bool revBeam, bool revTrack) const
Track map through MPSplitIntegrator.
Vector truncated power series in n variables.