35 , fType(pair.GetType())
36 , fCharge(pair.Charge())
37 , fLabel(pair.GetLabel())
38 , fWeight(pair.GetWeight())
39 , fPdgCode(pair.PdgCode())
40 , fRefD1(pair.GetFirstDaughter())
41 , fRefD2(pair.GetSecondDaughter())
42 , fPid1(pair.GetFirstDaughterPid())
43 , fPid2(pair.GetSecondDaughterPid())
44 , fKFUsage(pair.GetKFUsage())
69 Double_t& thetaHE, Double_t& phiHE, Double_t& thetaCS, Double_t& phiCS)
const
75 const Double_t proMass = TDatabasePDG::Instance()->GetParticle(2212)->Mass();
77 TLorentzVector targMom(0., 0., 0., TMath::Sqrt(0. * 0 + proMass * proMass));
80 TVector3 beta = (-1.0 / motherMom.E()) * motherMom.Vect();
87 TVector3 zAxisHE = (motherMom.Vect()).Unit();
88 TVector3 zAxisCS = ((projMom.Vect()).Unit() - (targMom.Vect()).Unit()).Unit();
89 TVector3 yAxis = ((projMom.Vect()).Cross(targMom.Vect())).Unit();
90 TVector3 xAxisHE = (yAxis.Cross(zAxisHE)).Unit();
91 TVector3 xAxisCS = (yAxis.Cross(zAxisCS)).Unit();
95 thetaHE = zAxisHE.Dot((p1Mom.Vect()).Unit());
96 thetaCS = zAxisCS.Dot((p1Mom.Vect()).Unit());
97 phiHE = TMath::ATan2((p1Mom.Vect()).Dot(yAxis), (p1Mom.Vect()).Dot(xAxisHE));
98 phiCS = TMath::ATan2((p1Mom.Vect()).Dot(yAxis), (p1Mom.Vect()).Dot(xAxisCS));
101 thetaHE = zAxisHE.Dot((p2Mom.Vect()).Unit());
102 thetaCS = zAxisCS.Dot((p2Mom.Vect()).Unit());
103 phiHE = TMath::ATan2((p2Mom.Vect()).Dot(yAxis), (p2Mom.Vect()).Dot(xAxisHE));
104 phiCS = TMath::ATan2((p2Mom.Vect()).Dot(yAxis), (p2Mom.Vect()).Dot(xAxisCS));