37 std::vector<double>({1e6, 1e6, 1.0});
47 exit_face_slope_m(right.exit_face_slope_m),
48 RefPartBunch_m(right.RefPartBunch_m),
49 online_m(right.online_m) {
55 exit_face_slope_m(0.0),
73 "Called for component \"" +
getName() +
"\".");
80 "Called for component \"" +
getName() +
"\".");
Vector truncated power series in n variables.
Interface for a single beam element.
virtual bool applyToReferenceParticle(const Vector_t &R, const Vector_t &P, const double &t, Vector_t &E, Vector_t &B)
virtual void goOnline(const double &kineticEnergy)
virtual ElementBase::ElementType getType() const
Get element type std::string.
virtual bool apply(const size_t &i, const double &t, Vector_t &E, Vector_t &B)
virtual void trackBunch(PartBunchBase< double, 3 > *bunch, const PartData &, bool revBeam, bool revTrack) const
Track particle bunch.
virtual void trackMap(FVps< double, 6 > &map, const PartData &, bool revBeam, bool revTrack) const
Track a map.
PartBunchBase< double, 3 > * RefPartBunch_m
static const std::vector< double > defaultAperture_m
virtual const ElementBase & getDesign() const
Return design element.
virtual const std::string & getName() const
Get element name.
void setAperture(const ApertureType &type, const std::vector< double > &args)
virtual double getElementLength() const
Get design length.
bool isInsideTransverse(const Vector_t &r) const