1 #include <TLorentzVector.h>
26 double ee1 = sqrt(px1*px1+py1*py1+pz1*pz1+0.000511*0.000511);
27 TLorentzVector tmp1 = TLorentzVector(px1,py1,pz1,ee1);
31 double ee2 = sqrt(px2*px2+py2*py2+pz2*pz2+0.000511*0.000511);
32 TLorentzVector tmp2 = TLorentzVector(px2,py2,pz2,ee2);
33 TLorentzVector pair = tmp1 + tmp2;
42 double ee1 = sqrt(px1*px1+py1*py1+pz1*pz1+0.000511*0.000511);
43 TLorentzVector tmp1 = TLorentzVector(px1,py1,pz1,ee1);
47 double ee2 = sqrt(px2*px2+py2*py2+pz2*pz2+0.000511*0.000511);
48 TLorentzVector tmp2 = TLorentzVector(px2,py2,pz2,ee2);
49 TLorentzVector pair = tmp1 + tmp2;
58 double ee1 = sqrt(px1*px1+py1*py1+pz1*pz1+0.000511*0.000511);
59 TLorentzVector tmp1 = TLorentzVector(px1,py1,pz1,ee1);
63 double ee2 = sqrt(px2*px2+py2*py2+pz2*pz2+0.000511*0.000511);
64 TLorentzVector tmp2 = TLorentzVector(px2,py2,pz2,ee2);
65 TLorentzVector pair = tmp1 + tmp2;
78 double px = px1 + px2;
79 double py = py1 + py2;
80 double pz = pz1 + pz2;
81 double pp = sqrt(px*px+py*py+pz*pz);
97 double ax = uy/sqrt(ux*ux+uy*uy);
98 double ay = -ux/sqrt(ux*ux+uy*uy);
103 double vpx = py1*pz2 - pz1*py2;
104 double vpy = pz1*px2 - px1*pz2;
105 double vpz = px1*py2 - py1*px2;
106 double vp = sqrt(vpx*vpx+vpy*vpy+vpz*vpz);
114 double wx = uy*vz - uz*
vy;
115 double wy = uz*vx - ux*
vz;
123 double cosPhiV = wx*ax + wy*ay;
124 double phiV = acos(cosPhiV);