HiggsAnalysis-KITHiggsToTauTau
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
CPQuantities.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include <utility>
5 
6 #include "Kappa/DataFormats/interface/Kappa.h"
7 #include "Artus/Utility/interface/ArtusLogging.h"
8 
9 #include "TVector3.h"
10 
11 
20 {
21 public:
22  double CalculatePhiStarCP(RMFLV tau1, RMFLV tau2, RMFLV chargPart1, RMFLV chargPart2);
23  double CalculatePhiStarCP(KVertex* pv, KTrack track1, KTrack track2, RMFLV chargPart1, RMFLV chargPart2);
24  double CalculatePhiStarCP(KRefitVertex* pv, KTrack track1, KTrack track2, RMFLV chargPart1, RMFLV chargPart2);
25  double CalculatePhiStarCP(RMFLV chargPart1, RMFLV chargPart2, TVector3 ipvec1, TVector3 ipvec2, std::string level);
26  double CalculatePhiStarCP_rho(RMFLV chargedPiP, RMFLV chargedPiM, RMFLV piZeroP, RMFLV piZeroM);
27  double CalculatePhiStarCPComb(TVector3 ipvec, RMFLV daughter, RMFLV pion, RMFLV pizero, int daughterCharge);
28  double CalculateChargedHadronEnergy(RMFLV diTauMomentum, RMFLV chargHad);
29  double CalculatePhiCP(RMFLV boson, RMFLV tau1, RMFLV tau2, RMFLV pion1, RMFLV pion2);
30  double CalculatePhiCPLab(RMFLV chargPart1, TVector3 ipvec1, TVector3 ipvec2);
31  double CalculateChargedProngEnergy(RMFLV tau, RMFLV chargedProng);
32  double CalculateChargedProngEnergyApprox(RMFLV tau, RMFLV chargedProng);
33  double CalculateSpinAnalysingDiscriminant_rho(RMFLV tau1, RMFLV tau2, RMFLV pionP, RMFLV pionM, RMFLV pi0P, RMFLV pi0M);
34  double CalculateSpinAnalysingDiscriminant_rho(RMFLV chargedPion, RMFLV pi0);
35  double CalculateTrackReferenceError(KTrack track);
36  double CalculateZPlusMinus(RMFLV higgs, RMFLV chargedPart);
37  double CalculateZs(double zPlus, double zMinus);
38  double CalculateD0sArea(double d0_1, double d0_2);
39  double CalculateD0sDist(double d0_1, double d0_2);
40  double PhiTransform(double phi);
41  TVector3 CalculateShortestDistance(KGenParticle* genParticle, RMPoint* pv);
42  TVector3 CalculateShortestDistance(KLepton* recoParticle, RMPoint pv);
43  double CalculateCosPsi(RMFLV recoPart, TVector3 ipvec);
44  std::vector<double> CalculateIPErrors(KLepton* lepton, KVertex* pv, TVector3* ipvec);
45  inline double GetGenPhiStar()
46  {
47  return genPhiStar;
48  }
49  inline double GetGenOStarCP()
50  {
51  return genOStarCP;
52  }
53  inline double GetGenPhi()
54  {
55  return genPhi;
56  }
57  inline double GetGenOCP()
58  {
59  return genOCP;
60  }
61  inline double GetRecoPhiStar()
62  {
63  return recoPhiStar;
64  }
65  inline double GetRecoOStarCP()
66  {
67  return recoOStarCP;
68  }
69  inline double GetRecoIP1()
70  {
71  return recoIP1;
72  }
73  inline double GetRecoIP2()
74  {
75  return recoIP2;
76  }
77  // get functions for azimuthal angle of tau decay planes - ip method
78  inline double GetRecoPhiPlus_ipmeth(){ return recoPhiPlus_ipmeth; }
79  inline double GetRecoPhiMinus_ipmeth(){ return recoPhiMinus_ipmeth; }
80  inline double GetRecoPhiStarPlus_ipmeth(){ return recoPhiStarPlus_ipmeth; }
81  inline double GetRecoPhiStarMinus_ipmeth(){ return recoPhiStarMinus_ipmeth; }
82  // get functions for azimuthal angle of tau decay planes - comb method
83  inline double GetRecoPhiPlus_combmeth(){ return recoPhiPlus_combmeth; }
84  inline double GetRecoPhiMinus_combmeth(){ return recoPhiMinus_combmeth; }
85  inline double GetRecoPhiStarPlus_combmeth(){ return recoPhiStarPlus_combmeth; }
86  inline double GetRecoPhiStarMinus_combmeth(){ return recoPhiStarMinus_combmeth; }
87  // get functions for azimuthal angle of tau decay planes - rho method
88  inline double GetRecoPhiPlus_rhometh(){ return recoPhiPlus_rhometh; }
89  inline double GetRecoPhiMinus_rhometh(){ return recoPhiMinus_rhometh; }
90  inline double GetRecoPhiStarPlus_rhometh(){ return recoPhiStarPlus_rhometh; }
91  inline double GetRecoPhiStarMinus_rhometh(){ return recoPhiStarMinus_rhometh; }
92 private:
93  double genPhiStar;
94  double genOStarCP;
95  double genPhi;
96  double genOCP;
97  double recoPhiStar;
98  double recoOStarCP;
99  double recoIP1;
100  double recoIP2;
101  double recoPhiPlus_ipmeth;
102  double recoPhiMinus_ipmeth;
103  double recoPhiStarPlus_ipmeth;
104  double recoPhiStarMinus_ipmeth;
105  double recoPhiPlus_combmeth;
106  double recoPhiMinus_combmeth;
107  double recoPhiStarPlus_combmeth;
108  double recoPhiStarMinus_combmeth;
109  double recoPhiPlus_rhometh;
110  double recoPhiMinus_rhometh;
111  double recoPhiStarPlus_rhometh;
112  double recoPhiStarMinus_rhometh;
113  //level: "gen", "reco"
114  double CalculatePhiStarCPSame(RMFLV::BetaVector k1, RMFLV::BetaVector k2, RMFLV chargPart1, RMFLV chargPart2, std::string level);
115  inline void SetGenPhiStar(double genphistar)
116  {
117  genPhiStar = genphistar;
118  }
119  inline void SetGenOStarCP(double genostarcp)
120  {
121  genOStarCP = genostarcp;
122  }
123  inline void SetGenPhi(double genphi)
124  {
125  genPhi = genphi;
126  }
127  inline void SetGenOCP(double genocp)
128  {
129  genOCP = genocp;
130  }
131  inline void SetRecoPhiStar(double recophistar)
132  {
133  recoPhiStar = recophistar;
134  }
135  inline void SetRecoOStarCP(double recoostarcp)
136  {
137  recoOStarCP = recoostarcp;
138  }
139  inline void SetRecoIP1(double recoip1)
140  {
141  recoIP1 = recoip1;
142  }
143  inline void SetRecoIP2(double recoip2)
144  {
145  recoIP2 = recoip2;
146  }
147  // set functions for azimuthal angle of tau decay planes - ip method
148  inline void SetRecoPhiPlus_ipmeth(double recophiplus_ipmeth){ recoPhiPlus_ipmeth = recophiplus_ipmeth; }
149  inline void SetRecoPhiMinus_ipmeth(double recophiminus_ipmeth){ recoPhiMinus_ipmeth = recophiminus_ipmeth; }
150  inline void SetRecoPhiStarPlus_ipmeth(double recophistarplus_ipmeth){ recoPhiStarPlus_ipmeth = recophistarplus_ipmeth; }
151  inline void SetRecoPhiStarMinus_ipmeth(double recophistarminus_ipmeth){ recoPhiStarMinus_ipmeth = recophistarminus_ipmeth; }
152  // set functions for azimuthal angle of tau decay planes - comb method
153  inline void SetRecoPhiPlus_combmeth(double recophcomblus_combmeth){ recoPhiPlus_combmeth = recophcomblus_combmeth; }
154  inline void SetRecoPhiMinus_combmeth(double recophiminus_combmeth){ recoPhiMinus_combmeth = recophiminus_combmeth; }
155  inline void SetRecoPhiStarPlus_combmeth(double recophistarplus_combmeth){ recoPhiStarPlus_combmeth = recophistarplus_combmeth; }
156  inline void SetRecoPhiStarMinus_combmeth(double recophistarminus_combmeth){ recoPhiStarMinus_combmeth = recophistarminus_combmeth; }
157  // set functions for azimuthal angle of tau decay planes - rho method
158  inline void SetRecoPhiPlus_rhometh(double recophrholus_rhometh){ recoPhiPlus_rhometh = recophrholus_rhometh; }
159  inline void SetRecoPhiMinus_rhometh(double recophiminus_rhometh){ recoPhiMinus_rhometh = recophiminus_rhometh; }
160  inline void SetRecoPhiStarPlus_rhometh(double recophistarplus_rhometh){ recoPhiStarPlus_rhometh = recophistarplus_rhometh; }
161  inline void SetRecoPhiStarMinus_rhometh(double recophistarminus_rhometh){ recoPhiStarMinus_rhometh = recophistarminus_rhometh; }
162 };
Place to collect functions calculating CP quantities -Phi* : this is a variable, with which one can s...
Definition: CPQuantities.h:19
double GetRecoIP1()
Definition: CPQuantities.h:69
double CalculateCosPsi(RMFLV recoPart, TVector3 ipvec)
Definition: CPQuantities.cc:606
double GetGenOCP()
Definition: CPQuantities.h:57
double CalculateSpinAnalysingDiscriminant_rho(RMFLV tau1, RMFLV tau2, RMFLV pionP, RMFLV pionM, RMFLV pi0P, RMFLV pi0M)
Definition: CPQuantities.cc:439
double GetGenOStarCP()
Definition: CPQuantities.h:49
double GetRecoPhiStarPlus_combmeth()
Definition: CPQuantities.h:85
std::vector< double > CalculateIPErrors(KLepton *lepton, KVertex *pv, TVector3 *ipvec)
Definition: CPQuantities.cc:629
double GetGenPhiStar()
Definition: CPQuantities.h:45
double GetRecoPhiStarMinus_rhometh()
Definition: CPQuantities.h:91
double GetRecoPhiPlus_rhometh()
Definition: CPQuantities.h:88
double CalculateTrackReferenceError(KTrack track)
Definition: CPQuantities.cc:350
double GetRecoOStarCP()
Definition: CPQuantities.h:65
TVector3 CalculateShortestDistance(KGenParticle *genParticle, RMPoint *pv)
Definition: CPQuantities.cc:563
double GetGenPhi()
Definition: CPQuantities.h:53
double CalculateChargedHadronEnergy(RMFLV diTauMomentum, RMFLV chargHad)
Definition: CPQuantities.cc:338
double CalculatePhiStarCPComb(TVector3 ipvec, RMFLV daughter, RMFLV pion, RMFLV pizero, int daughterCharge)
Definition: CPQuantities.cc:268
double CalculatePhiStarCP(RMFLV tau1, RMFLV tau2, RMFLV chargPart1, RMFLV chargPart2)
Definition: CPQuantities.cc:5
double CalculateChargedProngEnergyApprox(RMFLV tau, RMFLV chargedProng)
double CalculateD0sArea(double d0_1, double d0_2)
Definition: CPQuantities.cc:499
double GetRecoPhiStarPlus_rhometh()
Definition: CPQuantities.h:90
double GetRecoPhiMinus_ipmeth()
Definition: CPQuantities.h:79
double GetRecoPhiPlus_combmeth()
Definition: CPQuantities.h:83
double CalculateZPlusMinus(RMFLV higgs, RMFLV chargedPart)
Definition: CPQuantities.cc:462
double PhiTransform(double phi)
Definition: CPQuantities.cc:554
double GetRecoIP2()
Definition: CPQuantities.h:73
double GetRecoPhiMinus_rhometh()
Definition: CPQuantities.h:89
double GetRecoPhiStarPlus_ipmeth()
Definition: CPQuantities.h:80
double GetRecoPhiStarMinus_combmeth()
Definition: CPQuantities.h:86
double GetRecoPhiMinus_combmeth()
Definition: CPQuantities.h:84
double CalculateChargedProngEnergy(RMFLV tau, RMFLV chargedProng)
Definition: CPQuantities.cc:426
double GetRecoPhiPlus_ipmeth()
Definition: CPQuantities.h:78
double CalculateZs(double zPlus, double zMinus)
Definition: CPQuantities.cc:478
double CalculatePhiCP(RMFLV boson, RMFLV tau1, RMFLV tau2, RMFLV pion1, RMFLV pion2)
Definition: CPQuantities.cc:360
double CalculatePhiCPLab(RMFLV chargPart1, TVector3 ipvec1, TVector3 ipvec2)
Definition: CPQuantities.cc:399
double CalculateD0sDist(double d0_1, double d0_2)
Definition: CPQuantities.cc:526
double GetRecoPhiStarMinus_ipmeth()
Definition: CPQuantities.h:81
double CalculatePhiStarCP_rho(RMFLV chargedPiP, RMFLV chargedPiM, RMFLV piZeroP, RMFLV piZeroM)
Definition: CPQuantities.cc:36
double GetRecoPhiStar()
Definition: CPQuantities.h:61