50 double cal_th(
double theta,
double z)
63 const double R_CC = 91.6;
64 const double Z_EC = 178.9;
65 const double BIGG = 1e8;
73 double z_cc = R_CC / tanth +
z;
75 if (fabs(z_cc) < Z_EC)
76 theta = atan2(R_CC, z_cc);
82 double r_ec = (
zz -
z) * tanth;
108 CLHEP::Hep3Vector vect =
v.vect();
109 double old_p2 = vect.mag2();
115 vect *=
sqrt(new_p2 / old_p2);
148 double old_pt =
v.perp();
149 double new_pt = old_pt *
c -
v.z() *
s;
150 v.setZ(old_pt *
s +
v.z() *
c);
152 v.setX(
v.x() * new_pt / old_pt);
153 v.setY(
v.y() * new_pt / old_pt);
169 double theta1 =
v.theta();
188 return 2 * atan(
exp(-
eta));
250 double deta =
a.pseudoRapidity() -
b.pseudoRapidity();
251 double dphi =
phidiff(
a.phi() -
b.phi());
252 return sqrt(deta * deta + dphi * dphi);
Define three-vector and four-vector classes for the HitFit package, and supply a few additional opera...
void adjust_e_for_mass(Fourvec &v, double mass)
Adjust the energy component of four-vector v (leaving the three-vector part unchanged) so that the fo...
Sin< T >::type sin(const T &t)
double phidiff(double phi)
Normalized difference in azimuthal angles to a range between .
double theta_to_eta(double theta)
Convert polar angle to pseudorapidity.
void roteta(Fourvec &v, double eta)
Rotate four-vector v through a polar angle such that the four-vector pseudorapidity changes by a desi...
double eta_to_theta(double eta)
Convert pseudorapidity to polar angle.
Cos< T >::type cos(const T &t)
double delta_r(const Fourvec &a, const Fourvec &b)
Find the distance between two four-vectors in the two-dimensional space .
CLHEP::HepLorentzVector Fourvec
Typedef for a HepLorentzVector.
Tan< T >::type tan(const T &t)
double deteta(const Fourvec &v, double zvert)
NOT USED ANYMORE: Get the detector (D0-specific), requires z-vertex.
void adjust_p_for_mass(Fourvec &v, double mass)
Adjust the three-vector part of v, leaving the energy unchanged,.
void rottheta(Fourvec &v, double theta)
Rotate four-vector v through a polar angle.
Geom::Theta< T > theta() const