21template <
typename FieldFunction, 
typename ... Arguments>
 
   26                                                    Arguments& ... args)
 const 
   28    bool flagNoDeletion = 
true;
 
   33    flagNoDeletion = kick_m(bunch, i, t, dt * 
Units::ns2s, args ...);
 
   38    return flagNoDeletion;
 
   42template <
typename FieldFunction, 
typename ... Arguments>
 
   44                                               const double& h)
 const 
   46    double const gamma = 
sqrt(1.0 + 
dot(P, P));
 
   53template <
typename FieldFunction, 
typename ... Arguments>
 
   55                                               const double& t, 
const double& h,
 
   56                                               Arguments& ... args)
 const 
   61    bool outOfBound = this->fieldfunc_m(t, i, externalE, externalB, args ...);
 
   72    pusher.
kick(bunch->
R[i], bunch->
P[i],
 
double dot(const Vector3D &lhs, const Vector3D &rhs)
Vector dot product.
Tps< T > sqrt(const Tps< T > &x)
Square root.
constexpr double q_e
The elementary charge in As.
constexpr double c
The velocity of light in m/s.
ParticleAttrib< double > M
ParticleAttrib< Vector_t > P
ParticleAttrib< double > Q
void kick(const Vector_t &R, Vector_t &P, const Vector_t &Ef, const Vector_t &Bf, const double &dt) const
bool doAdvance_m(PartBunchBase< double, 3 > *bunch, const size_t &i, const double &t, const double dt, Arguments &... args) const
bool kick_m(PartBunchBase< double, 3 > *bunch, const size_t &i, const double &t, const double &h, Arguments &... args) const
void push_m(Vector_t &R, const Vector_t &P, const double &h) const
Vektor< double, 3 > Vector_t