18 #ifndef CLASSIC_Degrader_HH
19 #define CLASSIC_Degrader_HH
67 virtual bool bends()
const override;
69 virtual void goOnline(
const double& kineticEnergy)
override;
75 virtual void getDimensions(
double& zBegin,
double& zEnd)
const override;
98 #endif // CLASSIC_Degrader_HH
virtual void getDimensions(double &zBegin, double &zEnd) const override
virtual void accept(BeamlineVisitor &) const override
Apply visitor to Degrader.
virtual bool isInside(const Vector_t &R) const override
virtual void finalise() override
Monitor acts on both planes.
virtual ElementType getType() const override
Get element type std::string.
std::vector< double > PosX_m
Monitor is off (inactive).
virtual bool bends() const override
std::vector< double > PosZ_m
std::vector< double > MomentumY_m
void operator=(const Degrader &)
std::vector< double > time_m
virtual void goOffline() override
virtual void goOnline(const double &kineticEnergy) override
std::vector< double > MomentumX_m
Interface for a single beam element.
std::vector< double > MomentumZ_m
virtual void initialise(PartBunchBase< double, 3 > *bunch, double &startField, double &endField) override
void setDimensions(double xsize, double ysize)
virtual bool applyToReferenceParticle(const Vector_t &R, const Vector_t &P, const double &t, Vector_t &E, Vector_t &B) override
std::vector< double > PosY_m
virtual bool apply(const size_t &i, const double &t, Vector_t &E, Vector_t &B) override