14 #pragma implementation
17 #include "CLHEP/Vector/defs.h"
18 #include "CLHEP/Vector/LorentzVector.h"
19 #include "CLHEP/Vector/ZMxpv.h"
56 double r2 = aaxis.
mag2();
59 "A zero vector used as axis defining a boost -- no boost done"));
62 double b2 = bbeta*bbeta;
65 "LorentzVector boosted with beta >= 1 (speed of light) -- \n"
69 register double ggamma = std::sqrt(1./(1.-b2));
70 register double betaDotV = u.
dot(pp)*bbeta;
71 register double tt = ee;
73 ee = ggamma * (tt + betaDotV);
74 pp += ( ((ggamma-1)/b2)*betaDotV*bbeta + ggamma*bbeta*tt ) * u;
HepLorentzVector & rotateX(double)
double dot(const Hep3Vector &) const
HepLorentzVector rotationXOf(const HepLorentzVector &vec, double delta)
HepLorentzVector rotationYOf(const HepLorentzVector &vec, double delta)
HepLorentzVector & rotateY(double)
HepLorentzVector rotationZOf(const HepLorentzVector &vec, double delta)
HepLorentzVector & rotateZ(double)
HepLorentzVector & boost(double, double, double)