16 double pbeta = p2 /
e;
26 double phi = 2. * 3.14159265358979323 * random->
flatShoot();
void translate(const XYZVector &t)
XYZVector Vect() const
the momentum threevector
static std::vector< std::string > checklist log
double flatShoot(double xmin=0.0, double xmax=1.0) const
Sin< T >::type sin(const T &t)
Geom::Theta< T > theta() const
XYZVector orthogonal(const XYZVector &) const
A vector orthogonal to another one (because it's not in XYZTLorentzVector)
void compute(ParticlePropagator &Particle, RandomEngineAndDistribution const *) override
The real dE/dx generation and particle update.
RawParticle const & particle() const
The particle being propagated.
double mass() const
get the MEASURED mass
Cos< T >::type cos(const T &t)
void rotate(double rphi, const XYZVector &raxis)
double charge() const
get the MEASURED charge
MultipleScatteringSimulator(double A, double Z, double density, double radLen)
Default Constructor.
ROOT::Math::AxisAngle Rotation
double gaussShoot(double mean=0.0, double sigma=1.0) const
double radLenIncm() const
One radiation length in cm.
math::XYZVector XYZVector
GlobalVector theNormalVector
double sqr12
Save (a tiny bit of) time.