6 #include "Math/Vector4D.h"
7 using ROOT::Math::PxPyPzEVector;
9 #include "Math/LorentzRotation.h"
10 #include "Math/LorentzVector.h"
11 #include "Math/RotationX.h"
12 #include "Math/RotationY.h"
13 #include "Math/Boost.h"
17 using ROOT::Math::LorentzRotation;
21 using ROOT::Math::RotationX;
22 using ROOT::Math::RotationY;
23 using ROOT::Math::Boost;
29 const auto cmBoost = (ei + pi).BoostToCM();
31 const Boost boost_to_cm(-cmBoost);
34 const Boost boost_to_headon(cmBoost);
42 RotationY rotAboutY(-1.0*atan2(pi.Px(), pi.Pz()));
43 RotationX rotAboutX(+1.0*atan2(pi.Py(), pi.Pz()));
49 tf *= boost_to_headon;
53 inline PxPyPzEVector
apply_boost(
const LorentzRotation& tf, PxPyPzEVector part) {