CbmRoot
CbmKresEtaMCAnalysis.h
Go to the documentation of this file.
1 #ifndef CBM_KRES_ETA_MC_ANALYSIS
2 #define CBM_KRES_ETA_MC_ANALYSIS
3 
4 class TH1;
5 class TH1D;
6 class TH2D;
7 
8 #include "CbmMCTrack.h"
9 #include <TClonesArray.h>
10 #include <vector>
11 
12 using namespace std;
13 
15 
16 public:
17  //***** brief Standard constructor.
19  //***** brief Standard destructor.
20  virtual ~CbmKresEtaMCAnalysis();
21 
22 
23  void Init();
24  void InitHistograms();
25  void Finish();
26 
27  void Exec(int Event, double OpeningAngleCut, double GammaInvMassCut);
28 
29  Double_t CalculateOpeningAngleBetweenGammas_MC(CbmMCTrack* mctrack1,
30  CbmMCTrack* mctrack2,
31  CbmMCTrack* mctrack3,
32  CbmMCTrack* mctrack4);
33  Double_t CalculateOpeningAngleBetweenGammas_Reco(TVector3 electron1,
34  TVector3 electron2,
35  TVector3 electron3,
36  TVector3 electron4);
37 
38  void EtaDoubleGammaAnalysis(vector<TVector3> RefMom,
39  vector<CbmMCTrack*> MC,
40  vector<Int_t> Id,
41  vector<TH1*> gg);
42 
43  void EtaChargedPionsGammaAnalysis(vector<TVector3> RefMomPion,
44  vector<CbmMCTrack*> MCPion,
45  vector<Int_t> IdPion,
46  vector<TVector3> RefMomEl,
47  vector<CbmMCTrack*> MCEl,
48  vector<Int_t> IdEl,
49  vector<TH1*> ppg);
50 
51  void EtaPosNegNeutralPionsAnalysis(vector<TVector3> RefMomNeutral,
52  vector<CbmMCTrack*> MCNeutral,
53  vector<Int_t> IdNeutral,
54  vector<TVector3> RefMomPion,
55  vector<CbmMCTrack*> MCPion,
56  vector<Int_t> IdPion,
57  vector<TH1*> ppp);
58 
59 
60  void EtaDoubleGammaAnalysis_plusBG(double OpeningAngleCut,
61  double GammaInvMassCut,
62  int Event,
63  vector<TVector3> RefMom,
64  vector<CbmMCTrack*> MC,
65  vector<Int_t> Id,
66  vector<TH1*> gg);
67  void EtaChargedPionsGammaAnalysis_plusBG(double OpeningAngleCut,
68  double GammaInvMassCut,
69  int Event,
70  vector<TVector3> RefMomPion,
71  vector<CbmMCTrack*> MCPion,
72  vector<Int_t> IdPion,
73  vector<TVector3> RefMomEl,
74  vector<CbmMCTrack*> MCEl,
75  vector<Int_t> IdEl,
76  vector<TH1*> ppg,
77  vector<TH1*> ppp);
78 
79  void Mixing_gg();
80  void Mixing_ppg();
81  void Mixing_three_body();
82 
83 
84 private:
85  TClonesArray* fMcTracks;
86  TClonesArray* fGlobalTracks;
87  TClonesArray* fStsTracks;
88  TClonesArray* fStsTrackMatches;
89 
90  vector<TVector3> El_Photon_Eta_refmomentum;
91  vector<CbmMCTrack*> El_Photon_Eta_MCtrack;
92  vector<int> El_Photon_Eta_Id;
93 
95  vector<CbmMCTrack*> El_Photon_Pion_Eta_MCtrack;
96  vector<int> El_Photon_Pion_Eta_Id;
97 
98  vector<TVector3> Pion_Eta_refmomentum;
99  vector<CbmMCTrack*> Pion_Eta_MCtrack;
100  vector<int> Pion_Eta_Id;
101 
102  vector<TVector3> All_El_refmomentum;
103  vector<CbmMCTrack*> All_El_MCtrack;
104  vector<int> All_El_Id;
105 
106  vector<TVector3> All_Pion_refmomentum;
107  vector<CbmMCTrack*> All_Pion_MCtrack;
108  vector<int> All_Pion_Id;
109 
110 
111  vector<TVector3> frefmomenta;
112  vector<CbmMCTrack*> fMCtracks;
113  vector<int> fMCId;
114 
115  std::vector<std::vector<TVector3>> EDGA_RefMom;
116  std::vector<std::vector<CbmMCTrack*>> EDGA_MC;
117  std::vector<std::vector<int>> EDGA_Id;
118 
119  std::vector<std::vector<TVector3>> ECPGA_leptons_RefMom;
120  std::vector<std::vector<CbmMCTrack*>> ECPGA_leptons_MC;
121  std::vector<std::vector<int>> ECPGA_leptons_Id;
122 
123  std::vector<std::vector<TVector3>> ECPGA_pions_RefMom;
124  std::vector<std::vector<CbmMCTrack*>> ECPGA_pions_MC;
125 
126 
127  vector<TH1*> fHistoList_eta_gg;
138  TH1D* EMT_eta_gg;
142 
143 
144  vector<TH1*> fHistoList_eta_ppg;
160  TH1D* EMT_eta_ppg;
165 
166 
167  vector<TH1*> fHistoList_eta_ppp;
174 
175 
176  // EMT for gg channel
177  std::vector<int> EMT_gg_Event;
178  std::vector<std::vector<TVector3>> EMT_gg_pair_momenta;
179 
180  // EMT for ppg channel
181  std::vector<int> EMT_ppg_ee_Event;
182  std::vector<std::vector<TVector3>> EMT_ppg_ee_pair_momenta;
183  std::vector<int> EMT_ppg_pp_Event;
184  std::vector<std::vector<TVector3>> EMT_ppg_pp_pair_momenta;
185 
186  // EMT for 3 body ==> completely uncorrelated bg
187  std::vector<int> EMT_ppg_positive_pion_Event;
188  std::vector<TVector3> EMT_ppg_positive_pion_momenta;
189  std::vector<int> EMT_ppg_negative_pion_Event;
190  std::vector<TVector3> EMT_ppg_negative_pion_momenta;
191 
192 
193  //***** brief Copy constructor.
195 
196  //***** brief Assignment operator.
198 
199 
200  ClassDef(CbmKresEtaMCAnalysis, 1)
201 };
202 
203 #endif
CbmKresEtaMCAnalysis::All_El_refmomentum
vector< TVector3 > All_El_refmomentum
Definition: CbmKresEtaMCAnalysis.h:102
CbmKresEtaMCAnalysis::fHistoList_eta_gg
vector< TH1 * > fHistoList_eta_gg
Definition: CbmKresEtaMCAnalysis.h:127
CbmKresEtaMCAnalysis::InvMass_eta_gg_mc
TH1D * InvMass_eta_gg_mc
Definition: CbmKresEtaMCAnalysis.h:128
CbmKresEtaMCAnalysis::El_Photon_Eta_refmomentum
vector< TVector3 > El_Photon_Eta_refmomentum
Definition: CbmKresEtaMCAnalysis.h:90
CbmKresEtaMCAnalysis::InvMassPhoton_eta_ppg_reffited
TH1D * InvMassPhoton_eta_ppg_reffited
Definition: CbmKresEtaMCAnalysis.h:148
CbmKresEtaMCAnalysis::EMT_ppg_positive_pion_Event
std::vector< int > EMT_ppg_positive_pion_Event
Definition: CbmKresEtaMCAnalysis.h:187
CbmKresEtaMCAnalysis::EDGA_MC
std::vector< std::vector< CbmMCTrack * > > EDGA_MC
Definition: CbmKresEtaMCAnalysis.h:116
CbmKresEtaMCAnalysis::EMT_ppg_positive_pion_momenta
std::vector< TVector3 > EMT_ppg_positive_pion_momenta
Definition: CbmKresEtaMCAnalysis.h:188
CbmKresEtaMCAnalysis::rap_vs_pt_eta_ppg_reco_aftercuts
TH2D * rap_vs_pt_eta_ppg_reco_aftercuts
Definition: CbmKresEtaMCAnalysis.h:163
CbmKresEtaMCAnalysis::ECPGA_leptons_Id
std::vector< std::vector< int > > ECPGA_leptons_Id
Definition: CbmKresEtaMCAnalysis.h:121
CbmKresEtaMCAnalysis::InvMass_eta_ppg_allcombinations_mc
TH1D * InvMass_eta_ppg_allcombinations_mc
Definition: CbmKresEtaMCAnalysis.h:151
CbmKresEtaMCAnalysis::OpeningAngle_eta_gg_between_gg_mc
TH1D * OpeningAngle_eta_gg_between_gg_mc
Definition: CbmKresEtaMCAnalysis.h:134
CbmKresEtaMCAnalysis::OpeningAnglePhoton_eta_gg_reffited
TH1D * OpeningAnglePhoton_eta_gg_reffited
Definition: CbmKresEtaMCAnalysis.h:133
CbmKresEtaMCAnalysis::operator=
CbmKresEtaMCAnalysis operator=(const CbmKresEtaMCAnalysis &)
CbmKresEtaMCAnalysis::Pion_P_elsewhere_reco
TH1D * Pion_P_elsewhere_reco
Definition: CbmKresEtaMCAnalysis.h:154
CbmKresEtaMCAnalysis::El_Photon_Eta_MCtrack
vector< CbmMCTrack * > El_Photon_Eta_MCtrack
Definition: CbmKresEtaMCAnalysis.h:91
CbmKresEtaMCAnalysis::El_Photon_Pion_Eta_refmomentum
vector< TVector3 > El_Photon_Pion_Eta_refmomentum
Definition: CbmKresEtaMCAnalysis.h:94
CbmKresEtaMCAnalysis::Pion_Eta_Id
vector< int > Pion_Eta_Id
Definition: CbmKresEtaMCAnalysis.h:100
CbmKresEtaMCAnalysis::fMcTracks
TClonesArray * fMcTracks
Definition: CbmKresEtaMCAnalysis.h:85
CbmKresEtaMCAnalysis::fStsTracks
TClonesArray * fStsTracks
Definition: CbmKresEtaMCAnalysis.h:87
CbmKresEtaMCAnalysis::fMCId
vector< int > fMCId
Definition: CbmKresEtaMCAnalysis.h:113
CbmKresEtaMCAnalysis::All_Pion_refmomentum
vector< TVector3 > All_Pion_refmomentum
Definition: CbmKresEtaMCAnalysis.h:106
CbmKresEtaMCAnalysis::rap_vs_pt_NOTeta_ppg_reco_aftercuts
TH2D * rap_vs_pt_NOTeta_ppg_reco_aftercuts
Definition: CbmKresEtaMCAnalysis.h:164
CbmKresEtaMCAnalysis::InvMass_eta_ppg_reco_aftercuts
TH1D * InvMass_eta_ppg_reco_aftercuts
Definition: CbmKresEtaMCAnalysis.h:162
CbmKresEtaMCAnalysis::InvMass_eta_ppp_reffited
TH1D * InvMass_eta_ppp_reffited
Definition: CbmKresEtaMCAnalysis.h:169
CbmKresEtaMCAnalysis::All_El_Id
vector< int > All_El_Id
Definition: CbmKresEtaMCAnalysis.h:104
CbmKresEtaMCAnalysis::InvMass_eta_gg_reco_aftercuts
TH1D * InvMass_eta_gg_reco_aftercuts
Definition: CbmKresEtaMCAnalysis.h:139
CbmKresEtaMCAnalysis::EMT_ppg_negative_pion_momenta
std::vector< TVector3 > EMT_ppg_negative_pion_momenta
Definition: CbmKresEtaMCAnalysis.h:190
CbmKresEtaMCAnalysis::InvMass_eta_ppp_allcombinations_reffited
TH1D * InvMass_eta_ppp_allcombinations_reffited
Definition: CbmKresEtaMCAnalysis.h:173
CbmKresEtaMCAnalysis::InvMass_eta_Npion_reffited
TH1D * InvMass_eta_Npion_reffited
Definition: CbmKresEtaMCAnalysis.h:171
CbmKresEtaMCAnalysis::Pion_Eta_refmomentum
vector< TVector3 > Pion_Eta_refmomentum
Definition: CbmKresEtaMCAnalysis.h:98
CbmKresEtaMCAnalysis::InvMass_eta_ppg_reffited
TH1D * InvMass_eta_ppg_reffited
Definition: CbmKresEtaMCAnalysis.h:146
CbmKresEtaMCAnalysis::rap_vs_pt_eta_gg_reco_aftercuts
TH2D * rap_vs_pt_eta_gg_reco_aftercuts
Definition: CbmKresEtaMCAnalysis.h:140
CbmKresEtaMCAnalysis::InvMass_eta_ppg_allcombinations_reffited
TH1D * InvMass_eta_ppg_allcombinations_reffited
Definition: CbmKresEtaMCAnalysis.h:152
CbmKresEtaMCAnalysis::Pion_P_fromEta_reco
TH1D * Pion_P_fromEta_reco
Definition: CbmKresEtaMCAnalysis.h:153
CbmKresEtaMCAnalysis::All_Pion_Id
vector< int > All_Pion_Id
Definition: CbmKresEtaMCAnalysis.h:108
CbmKresEtaMCAnalysis::EMT_eta_gg
TH1D * EMT_eta_gg
Definition: CbmKresEtaMCAnalysis.h:138
CbmKresEtaMCAnalysis::InvMass_eta_gg_allcombinations_mc
TH1D * InvMass_eta_gg_allcombinations_mc
Definition: CbmKresEtaMCAnalysis.h:136
CbmKresEtaMCAnalysis::EMT_gg_Event
std::vector< int > EMT_gg_Event
Definition: CbmKresEtaMCAnalysis.h:177
CbmKresEtaMCAnalysis::OpeningAnglePhoton_eta_gg_mc
TH1D * OpeningAnglePhoton_eta_gg_mc
Definition: CbmKresEtaMCAnalysis.h:132
CbmKresEtaMCAnalysis::InvMassPhoton_eta_ppg_mc
TH1D * InvMassPhoton_eta_ppg_mc
Definition: CbmKresEtaMCAnalysis.h:147
CbmKresEtaMCAnalysis::InvMass_eta_gg_allcombinations_reffited
TH1D * InvMass_eta_gg_allcombinations_reffited
Definition: CbmKresEtaMCAnalysis.h:137
CbmKresEtaMCAnalysis::OpeningAnglePhoton_eta_ppg_reffited
TH1D * OpeningAnglePhoton_eta_ppg_reffited
Definition: CbmKresEtaMCAnalysis.h:150
CbmKresEtaMCAnalysis::OA_betweenPions_fromEta_mc
TH1D * OA_betweenPions_fromEta_mc
Definition: CbmKresEtaMCAnalysis.h:157
CbmKresEtaMCAnalysis::EDGA_RefMom
std::vector< std::vector< TVector3 > > EDGA_RefMom
Definition: CbmKresEtaMCAnalysis.h:115
CbmKresEtaMCAnalysis::OA_betweenPions_fromEta_reco
TH1D * OA_betweenPions_fromEta_reco
Definition: CbmKresEtaMCAnalysis.h:158
CbmKresEtaMCAnalysis::EMT_gg_pair_momenta
std::vector< std::vector< TVector3 > > EMT_gg_pair_momenta
Definition: CbmKresEtaMCAnalysis.h:178
CbmKresEtaMCAnalysis::fGlobalTracks
TClonesArray * fGlobalTracks
Definition: CbmKresEtaMCAnalysis.h:86
CbmKresEtaMCAnalysis::rap_vs_pt_NOTeta_gg_reco_aftercuts
TH2D * rap_vs_pt_NOTeta_gg_reco_aftercuts
Definition: CbmKresEtaMCAnalysis.h:141
CbmKresEtaMCAnalysis::frefmomenta
vector< TVector3 > frefmomenta
Definition: CbmKresEtaMCAnalysis.h:111
CbmKresEtaMCAnalysis::El_Photon_Eta_Id
vector< int > El_Photon_Eta_Id
Definition: CbmKresEtaMCAnalysis.h:92
CbmKresEtaMCAnalysis::InvMass_eta_ppp_mc
TH1D * InvMass_eta_ppp_mc
Definition: CbmKresEtaMCAnalysis.h:168
CbmKresEtaMCAnalysis::ECPGA_pions_RefMom
std::vector< std::vector< TVector3 > > ECPGA_pions_RefMom
Definition: CbmKresEtaMCAnalysis.h:123
CbmKresEtaMCAnalysis::All_Pion_MCtrack
vector< CbmMCTrack * > All_Pion_MCtrack
Definition: CbmKresEtaMCAnalysis.h:107
CbmKresEtaMCAnalysis::EMT_ppg_pp_Event
std::vector< int > EMT_ppg_pp_Event
Definition: CbmKresEtaMCAnalysis.h:183
CbmKresEtaMCAnalysis::ECPGA_leptons_MC
std::vector< std::vector< CbmMCTrack * > > ECPGA_leptons_MC
Definition: CbmKresEtaMCAnalysis.h:120
CbmKresEtaMCAnalysis::fMCtracks
vector< CbmMCTrack * > fMCtracks
Definition: CbmKresEtaMCAnalysis.h:112
CbmKresEtaMCAnalysis::fHistoList_eta_ppp
vector< TH1 * > fHistoList_eta_ppp
Definition: CbmKresEtaMCAnalysis.h:167
CbmKresEtaMCAnalysis::EMT_ppg_ee_Event
std::vector< int > EMT_ppg_ee_Event
Definition: CbmKresEtaMCAnalysis.h:181
CbmKresEtaMCAnalysis::Pion_Eta_MCtrack
vector< CbmMCTrack * > Pion_Eta_MCtrack
Definition: CbmKresEtaMCAnalysis.h:99
CbmKresEtaMCAnalysis::fHistoList_eta_ppg
vector< TH1 * > fHistoList_eta_ppg
Definition: CbmKresEtaMCAnalysis.h:144
CbmKresEtaMCAnalysis::Pion_Pt_elsewhere_reco
TH1D * Pion_Pt_elsewhere_reco
Definition: CbmKresEtaMCAnalysis.h:156
CbmKresEtaMCAnalysis::InvMass_eta_ppp_allcombinations_mc
TH1D * InvMass_eta_ppp_allcombinations_mc
Definition: CbmKresEtaMCAnalysis.h:172
CbmKresEtaMCAnalysis::OpeningAngle_eta_gg_between_gg_reffited
TH1D * OpeningAngle_eta_gg_between_gg_reffited
Definition: CbmKresEtaMCAnalysis.h:135
CbmKresEtaMCAnalysis::EDGA_Id
std::vector< std::vector< int > > EDGA_Id
Definition: CbmKresEtaMCAnalysis.h:117
CbmKresEtaMCAnalysis::All_El_MCtrack
vector< CbmMCTrack * > All_El_MCtrack
Definition: CbmKresEtaMCAnalysis.h:103
CbmKresEtaMCAnalysis::ECPGA_leptons_RefMom
std::vector< std::vector< TVector3 > > ECPGA_leptons_RefMom
Definition: CbmKresEtaMCAnalysis.h:119
CbmKresEtaMCAnalysis
Definition: CbmKresEtaMCAnalysis.h:14
CbmMCTrack.h
CbmKresEtaMCAnalysis::EMT_eta_three_body
TH1D * EMT_eta_three_body
Definition: CbmKresEtaMCAnalysis.h:161
CbmKresEtaMCAnalysis::EMT_ppg_pp_pair_momenta
std::vector< std::vector< TVector3 > > EMT_ppg_pp_pair_momenta
Definition: CbmKresEtaMCAnalysis.h:184
CbmKresEtaMCAnalysis::EMT_ppg_ee_pair_momenta
std::vector< std::vector< TVector3 > > EMT_ppg_ee_pair_momenta
Definition: CbmKresEtaMCAnalysis.h:182
CbmMCTrack
Definition: CbmMCTrack.h:34
CbmKresEtaMCAnalysis::InvMassPhoton_eta_gg_mc
TH1D * InvMassPhoton_eta_gg_mc
Definition: CbmKresEtaMCAnalysis.h:130
CbmKresEtaMCAnalysis::CbmKresEtaMCAnalysis
CbmKresEtaMCAnalysis(const CbmKresEtaMCAnalysis &)
CbmKresEtaMCAnalysis::EMT_eta_ppg
TH1D * EMT_eta_ppg
Definition: CbmKresEtaMCAnalysis.h:160
CbmKresEtaMCAnalysis::InvMass_eta_ppg_mc
TH1D * InvMass_eta_ppg_mc
Definition: CbmKresEtaMCAnalysis.h:145
CbmKresEtaMCAnalysis::fStsTrackMatches
TClonesArray * fStsTrackMatches
Definition: CbmKresEtaMCAnalysis.h:88
CbmKresEtaMCAnalysis::InvMass_eta_Npion_mc
TH1D * InvMass_eta_Npion_mc
Definition: CbmKresEtaMCAnalysis.h:170
CbmKresEtaMCAnalysis::OA_betweenPions_fromEta_reco_wrongcombinations
TH1D * OA_betweenPions_fromEta_reco_wrongcombinations
Definition: CbmKresEtaMCAnalysis.h:159
CbmKresEtaMCAnalysis::InvMass_eta_gg_reffited
TH1D * InvMass_eta_gg_reffited
Definition: CbmKresEtaMCAnalysis.h:129
CbmKresEtaMCAnalysis::EMT_ppg_negative_pion_Event
std::vector< int > EMT_ppg_negative_pion_Event
Definition: CbmKresEtaMCAnalysis.h:189
CbmKresEtaMCAnalysis::El_Photon_Pion_Eta_MCtrack
vector< CbmMCTrack * > El_Photon_Pion_Eta_MCtrack
Definition: CbmKresEtaMCAnalysis.h:95
CbmKresEtaMCAnalysis::Pion_Pt_fromEta_reco
TH1D * Pion_Pt_fromEta_reco
Definition: CbmKresEtaMCAnalysis.h:155
CbmKresEtaMCAnalysis::ECPGA_pions_MC
std::vector< std::vector< CbmMCTrack * > > ECPGA_pions_MC
Definition: CbmKresEtaMCAnalysis.h:124
CbmKresEtaMCAnalysis::El_Photon_Pion_Eta_Id
vector< int > El_Photon_Pion_Eta_Id
Definition: CbmKresEtaMCAnalysis.h:96
CbmKresEtaMCAnalysis::OpeningAnglePhoton_eta_ppg_mc
TH1D * OpeningAnglePhoton_eta_ppg_mc
Definition: CbmKresEtaMCAnalysis.h:149
CbmKresEtaMCAnalysis::InvMassPhoton_eta_gg_reffited
TH1D * InvMassPhoton_eta_gg_reffited
Definition: CbmKresEtaMCAnalysis.h:131