ATLAS Offline Software
Public Member Functions | List of all members
P4DummyTest Class Reference

#include <P4DummyTest.h>

Collaboration diagram for P4DummyTest:

Public Member Functions

 P4DummyTest ()
 

Detailed Description

P4DummyTest provide examples of use of FourMom classes. It is also useful to test at compile time all the virtual function are implemented.

Author
David Rousseau rouss.nosp@m.eau@.nosp@m.lal.i.nosp@m.n2p3.nosp@m..fr

Definition at line 19 of file P4DummyTest.h.

Constructor & Destructor Documentation

◆ P4DummyTest()

P4DummyTest::P4DummyTest ( )

Definition at line 19 of file P4DummyTest.cxx.

20 {
21  P4EEtaPhiM theP4EEtaPhiM(10.,1.,2.,0.);
22  P4EEtaPhiM twoP4EEtaPhiM(10.,1.3,2.4,0.);
23  P4PxPyPzE theP4PxPyPzE(0.,3.,4.,5.);
24  P4IPtCotThPhiM theP4IPtCotThPhiM(0.5,1.,2.,0.);
25  P4EEtaPhiM threeP4EEtaPhiM(theP4IPtCotThPhiM);
26  P4PtEtaPhiM fourP4PtEtaPhiM(theP4IPtCotThPhiM);
27 
28 
29  double aux [[maybe_unused]] = theP4EEtaPhiM.px();
30  aux+=theP4PxPyPzE.px();
31  aux+=theP4IPtCotThPhiM.px();
32  double theDeltaR1= P4Helpers::deltaR(theP4EEtaPhiM,theP4IPtCotThPhiM);
33  std::cout << "P4DummyTest: theDeltaR1= " << theDeltaR1 << std::endl ;
34  double theDeltaR2= P4Helpers::deltaR(theP4EEtaPhiM,threeP4EEtaPhiM);
35  std::cout << "P4DummyTesters: theDeltaR2= " << theDeltaR2 << std::endl ;
36  double theDeltaR3= P4Helpers::deltaR(theP4EEtaPhiM,twoP4EEtaPhiM);
37  std::cout << "P4DummyTest: theDeltaR3= " << theDeltaR3 << std::endl ;
38  CLHEP::HepLorentzVector theHlv=twoP4EEtaPhiM.hlv() ;
39  double theDeltaR4= P4Helpers::deltaR(P4PxPyPzE(theHlv),theP4EEtaPhiM);
40  std::cout << "P4DummyTest: theDeltaR4= " << theDeltaR4 << std::endl ;
41 
42 
43  double theDeltaR5= P4Helpers::deltaR(theP4EEtaPhiM,fourP4PtEtaPhiM);
44  std::cout << "P4DummyTest: theDeltaR5= " << theDeltaR5 << " [=R2]"<< std::endl ;
45 
46 
47  //> Test of deltaPhi
48  double dPhi1 = P4Helpers::deltaPhi( theP4EEtaPhiM, theP4IPtCotThPhiM );
49  std::cout << "P4DummyTest: dPhi1= " << dPhi1 << std::endl;
50 
51  double dPhi2 = P4Helpers::deltaPhi( theP4EEtaPhiM, threeP4EEtaPhiM );
52  std::cout << "P4DummyTest: dPhi2= " << dPhi2 << std::endl;
53 
54  double dPhi3 = P4Helpers::deltaPhi( theP4EEtaPhiM, twoP4EEtaPhiM );
55  std::cout << "P4DummyTest: dPhi3= " << dPhi3 << std::endl;
56 
57  double dPhi4 = P4Helpers::deltaPhi( P4PxPyPzE(theHlv), theP4EEtaPhiM );
58  std::cout << "P4DummyTest: dPhi4= " << dPhi4 << std::endl;
59 
60  double dPhi5 = P4Helpers::deltaPhi( theP4EEtaPhiM, fourP4PtEtaPhiM );
61  std::cout << "P4DummyTest: dPhi5= " << dPhi5 << " [=dPhi2]"<< std::endl;
62 
63 
64 
65  //> Test of invMass -- 2Body
66  std::cout << "P4DummyTest: --- Test 2-body invariant mass ---" << std::endl;
67  double inv2Mass1 = P4Helpers::invMass( theP4EEtaPhiM, theP4IPtCotThPhiM );
68  std::cout << "P4DummyTest: inv2Mass1= " << inv2Mass1 << std::endl;
69 
70  double inv2Mass2 = P4Helpers::invMass( theP4EEtaPhiM, threeP4EEtaPhiM );
71  std::cout << "P4DummyTest: inv2Mass2= " << inv2Mass2 << std::endl;
72 
73  double inv2Mass3 = P4Helpers::invMass( theP4EEtaPhiM, twoP4EEtaPhiM );
74  std::cout << "P4DummyTest: inv2Mass3= " << inv2Mass3 << std::endl;
75 
76  double inv2Mass4 = P4Helpers::invMass( P4PxPyPzE(theHlv), theP4EEtaPhiM );
77  std::cout << "P4DummyTest: inv2Mass4= " << inv2Mass4 << std::endl;
78 
79  double inv2Mass5 = P4Helpers::invMass( theP4EEtaPhiM, fourP4PtEtaPhiM );
80  std::cout << "P4DummyTest: inv2Mass5= " << inv2Mass5 << " [=mass2]"<< std::endl;
81 
82  //> Test of invMass -- 4-Body
83  std::cout << "P4DummyTest: --- Test 4-body invariant mass ---" << std::endl;
84  double inv4Mass1 = P4Helpers::invMass( theP4EEtaPhiM, theP4IPtCotThPhiM,
85  theP4EEtaPhiM, theP4IPtCotThPhiM );
86  std::cout << "P4DummyTest: inv4Mass1= " << inv4Mass1 << std::endl;
87 
88  double inv4Mass2 = P4Helpers::invMass( theP4EEtaPhiM, threeP4EEtaPhiM,
89  theP4EEtaPhiM, threeP4EEtaPhiM );
90  std::cout << "P4DummyTest: inv4Mass2= " << inv4Mass2 << std::endl;
91 
92  double inv4Mass3 = P4Helpers::invMass( theP4EEtaPhiM, twoP4EEtaPhiM,
93  theP4EEtaPhiM, twoP4EEtaPhiM );
94  std::cout << "P4DummyTesters: inv4Mass3= " << inv4Mass3 << std::endl;
95 
96  double inv4Mass4 = P4Helpers::invMass( P4PxPyPzE(theHlv), theP4EEtaPhiM,
97  P4PxPyPzE(theHlv), theP4EEtaPhiM );
98  std::cout << "P4DummyTest: inv4Mass4= " << inv4Mass4 << std::endl;
99 
100  double inv4Mass5 = P4Helpers::invMass( theP4EEtaPhiM, fourP4PtEtaPhiM,
101  theP4EEtaPhiM, fourP4PtEtaPhiM );
102  std::cout << "P4DummyTest: inv4Mass5= " << inv4Mass5 << " [=Mass2]"<< std::endl;
103 
104 
105 
106 }

The documentation for this class was generated from the following files:
P4Helpers::invMass
double invMass(const I4Momentum &pA, const I4Momentum &pB)
invariant mass from two I4momentum references
Definition: P4Helpers.h:252
P4EEtaPhiM
Definition: P4EEtaPhiM.h:25
P4IPtCotThPhiM
Definition: P4IPtCotThPhiM.h:27
P4Helpers::deltaPhi
double deltaPhi(double phiA, double phiB)
delta Phi in range [-pi,pi[
Definition: P4Helpers.h:34
P4Helpers::deltaR
double deltaR(const I4Momentum &p4, double eta, double phi)
from 1 I4Momentum
Definition: P4Helpers.h:209
P4PxPyPzE
Definition: P4PxPyPzE.h:29
P4PtEtaPhiM
Definition: P4PtEtaPhiM.h:25