1 #ifndef CLASSIC_Mapper_HH
2 #define CLASSIC_Mapper_HH
32 template <
class T,
int N>
class LinearMap;
95 bool revBeam,
bool revTrack);
162 #endif // CLASSIC_Mapper_HH
void applyThinSBend(const BMultipoleField &field, double scale, double h)
Thin SBend kick.
Transport map with values of type [b]T[/b] in [b]N[/b] variables.
virtual void visitAlignWrapper(const AlignWrapper &)
Apply the algorithm to an align wrapper.
void operator=(const Mapper &)
Define the position of a misaligned element.
virtual void visitComponent(const Component &)
Apply the algorithm to an arbitrary component.
Linear map with values of type [b]T[/b] in [b]N[/b] variables.
Displacement and rotation in space.
void applyThinMultipole(const BMultipoleField &field, double factor)
Thin multipole kick.
An abstract sequence of beam line components.
virtual void getMap(LinearMap< double, 6 > &) const
Return the linear part of the accumulated map.
virtual void setMap(const LinearMap< double, 6 > &)
Reset the linear part of the accumulated map for restart.
virtual void visitPatch(const Patch &pat)
Apply the algorithm to a patch.
void applyTransform(const Euclid3D &, double refLength=0.0)
Apply transform.
The magnetic field of a multipole.
Interface for a geometric patch.
virtual void visitMapIntegrator(const MapIntegrator &)
Apply the algorithm to an integrator capable of mapping.
Interface for a single beam element.
FVps< double, 6 > itsMap
The transfer map being built.
void applyDrift(double length)
Apply drift length.