8 #include <tracking/dataobjects/hitXP.h>
14 TVector3 x(0.01 * xx.X(), 0.01 * xx.Y(), 0.01 * xx.Z());
16 double Bze = Bz * charge * 0.299792458;
17 double aux = Bze / sqrt(p.X() * p.X() + p.Y() * p.Y());
25 TVector3 x(0.01 * xx.X(), 0.01 * xx.Y(), 0.01 * xx.Z());
26 double aux = p.Z() / sqrt(p.X() * p.X() + p.Y() * p.Y());
31 double hitXP::d0(TVector3 xx, TVector3 p,
double charge)
const
33 TVector3 x(0.01 * xx.X(), 0.01 * xx.Y(), 0.01 * xx.Z());
35 double Bze = Bz * charge * 0.299792458;
36 double aux = sqrt((p.Y() / (Bze) + x.X()) * (p.Y() / (Bze) + x.X()) + (x.Y() - p.X() / (Bze)) * (x.Y() - p.X() / (Bze))) - sqrt((
37 p.X() * p.X() + p.Y() * p.Y()) / (Bze * Bze));
45 double hitXP::phi0(
const TVector3& xx, TVector3 p,
double charge)
const
47 TVector3 x(0.01 * xx.X(), 0.01 * xx.Y(), 0.01 * xx.Z());
49 double Bze = Bz * charge * 0.299792458;
53 chi = atan2((-p.X() * x.X() - p.Y() * x.Y()), ((p.X() * p.X() + p.Y() * p.Y()) / (Bze) + p.Y() * x.X() - p.X() * x.Y()));
55 chi = atan2(-(-p.X() * x.X() - p.Y() * x.Y()), -((p.X() * p.X() + p.Y() * p.Y()) / (Bze) + p.Y() * x.X() - p.X() * x.Y()));
57 aux = atan2(p.Y(), p.X()) - chi;
61 double hitXP::z0(TVector3 xx, TVector3 p,
double charge)
const
63 TVector3 x(0.01 * xx.X(), 0.01 * xx.Y(), 0.01 * xx.Z());
65 double Bze = Bz * charge * 0.299792458;
69 chi = atan2((-p.X() * x.X() - p.Y() * x.Y()), ((p.X() * p.X() + p.Y() * p.Y()) / (Bze) + p.Y() * x.X() - p.X() * x.Y()));
71 chi = atan2(-(-p.X() * x.X() - p.Y() * x.Y()), -((p.X() * p.X() + p.Y() * p.Y()) / (Bze) + p.Y() * x.X() - p.X() * x.Y()));
73 aux = p.Z() * chi / (Bze) + x.Z();
double tanLambda(TVector3 xx, TVector3 p) const
evaluates the parameter tanLambda (pz/pt) of a helicoidal track starting from position and momentum o...
double phi0(const TVector3 &xx, TVector3 p, double charge) const
evaluates the parameter phi0 (angle between pT and x) of a helicoidal track starting from position an...
double d0(TVector3 xx, TVector3 p, double charge) const
evaluates the parameter d0 (impact parameter) of a helicoidal track starting from position and moment...
double z0(TVector3 xx, TVector3 p, double charge) const
evaluates the parameter z0 (distance transverse plane-POCA) of a helicoidal track starting from posit...
double omega(TVector3 xx, TVector3 p, double charge) const
evaluates the parameter omega (1/curvature radius) of a helicoidal track starting from position and m...
Abstract base class for different kinds of events.