1 #ifndef CLASSIC_Corrector_HH
2 #define CLASSIC_Corrector_HH
79 virtual bool apply(
const size_t &i,
92 virtual void goOnline(
const double &kineticEnergy);
96 virtual bool bends()
const;
100 virtual void getDimensions(
double &zBegin,
double &zEnd)
const;
106 virtual void setDesignEnergy(
const double& ekin,
bool changeable =
true);
156 #endif // CLASSIC_Corrector_HH
virtual ElementBase::ElementType getType() const
Get element type std::string.
virtual void accept(BeamlineVisitor &) const
Apply a visitor to Corrector.
virtual BDipoleField & getField()=0
Return the corrector field.
The field of a magnetic dipole.
Corrector acts on both planes.
Corrector is off (inactive).
Interface for general corrector.
virtual Plane getPlane() const =0
Return the plane on which the corrector acts.
virtual bool bends() const
virtual void goOnline(const double &kineticEnergy)
virtual void setDesignEnergy(const double &ekin, bool changeable=true)
void operator=(const Corrector &)
virtual void getDimensions(double &zBegin, double &zEnd) const
bool designEnergyChangeable_m
Corrector acts on y-plane.
virtual StraightGeometry & getGeometry()=0
Return the corrector geometry.
Corrector acts on x-plane.
A geometry representing a straight line.
virtual void initialise(PartBunchBase< double, 3 > *bunch, double &startField, double &endField)
Interface for a single beam element.
virtual bool apply(const size_t &i, const double &t, Vector_t &E, Vector_t &B)
void setKickField(const Vector_t &k0)