]>
Commit | Line | Data |
---|---|---|
9725fd2a | 1 | #ifndef ALIANACALORIMETERQA_H |
2 | #define ALIANACALORIMETERQA_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | /* $Id: $ */ | |
6 | ||
7 | //_________________________________________________________________________ | |
8 | // Class to check results from simulations or reconstructed real data. | |
9 | // Fill few histograms and do some checking plots | |
10 | // | |
11 | //-- Author: Gustavo Conesa (INFN-LNF) | |
12 | ||
13 | // --- Root system --- | |
14 | class TH2F; | |
15 | class TH1F; | |
9725fd2a | 16 | |
17 | // --- Analysis system --- | |
18 | #include "AliAnaPartCorrBaseClass.h" | |
19 | ||
20 | class AliAnaCalorimeterQA : public AliAnaPartCorrBaseClass { | |
21 | ||
22 | public: | |
23 | ||
24 | AliAnaCalorimeterQA() ; // default ctor | |
25 | AliAnaCalorimeterQA(const AliAnaCalorimeterQA & g) ; // cpy ctor | |
26 | AliAnaCalorimeterQA & operator = (const AliAnaCalorimeterQA & g) ;//cpy assignment | |
27 | virtual ~AliAnaCalorimeterQA() {;} //virtual dtor | |
28 | ||
902aa95c | 29 | void ClusterHistograms(const TLorentzVector mom, const Int_t nCaloCellsPerCluster, |
30 | const Int_t nTracksMatched, const TObject* track, | |
31 | const Int_t * labels, const Int_t nLabels); | |
32 | ||
9725fd2a | 33 | TList * GetCreateOutputObjects(); |
902aa95c | 34 | |
9725fd2a | 35 | void Init(); |
36 | void InitParameters(); | |
37 | ||
38 | void Print(const Option_t * opt) const; | |
39 | ||
40 | void MakeAnalysisFillHistograms() ; | |
902aa95c | 41 | |
42 | void MCHistograms(const TLorentzVector mom, const Int_t pdg); | |
43 | ||
9725fd2a | 44 | TString GetCalorimeter() const {return fCalorimeter ;} |
45 | void SetCalorimeter( TString calo ) {fCalorimeter = calo; } | |
46 | TString GetStyleMacro() const {return fStyleMacro ;} | |
47 | void SetStyleMacro( TString macro ) {fStyleMacro = macro; } | |
48 | ||
ff45398a | 49 | void SwitchOnPlotsMaking() {fMakePlots = kTRUE;} |
50 | void SwitchOffPlotsMaking() {fMakePlots = kFALSE;} | |
902aa95c | 51 | |
9725fd2a | 52 | void Terminate(TList * outputList); |
53 | void ReadHistograms(TList * outputList); //Fill histograms with histograms in ouput list, needed in Terminate. | |
54 | ||
55 | private: | |
56 | ||
902aa95c | 57 | TString fCalorimeter ; //Calorimeter selection |
58 | TString fStyleMacro ; //Location of macro for plots style | |
59 | Bool_t fMakePlots ; //Print plots | |
60 | ||
9725fd2a | 61 | //Histograms |
62 | //CaloClusters | |
63 | TH1F * fhE ; //! E distribution, Reco | |
64 | TH1F * fhPt ; //! pT distribution, Reco | |
65 | TH1F * fhPhi; //! phi distribution, Reco | |
66 | TH1F * fhEta; //! eta distribution, Reco | |
67 | TH2F * fhEtaPhi ; //! eta vs phi, Reco | |
68 | TH1F * fhECharged ; //! E distribution, Reco, matched with track | |
69 | TH1F * fhPtCharged ; //! pT distribution, Reco, matched with track | |
70 | TH1F * fhPhiCharged; //! phi distribution, Reco, matched with track | |
71 | TH1F * fhEtaCharged; //! eta distribution, Reco, matched with track | |
72 | TH2F * fhEtaPhiCharged ; //! eta vs phi, Reco, matched with track | |
73 | TH1F * fhEChargedNoOut ; //! E distribution, Reco, matched with track, no outer param | |
74 | TH1F * fhPtChargedNoOut ; //! pT distribution, Reco, matched with track, no outer param | |
75 | TH1F * fhPhiChargedNoOut; //! phi distribution, Reco, matched with track, no outer param | |
76 | TH1F * fhEtaChargedNoOut; //! eta distribution, Reco, matched with track, no outer param | |
77 | TH2F * fhEtaPhiChargedNoOut ; //! eta vs phi, Reco, matched with track, no outer param | |
78 | TH1F * fhDeltaE ; //! MC-Reco E distribution | |
79 | TH1F * fhDeltaPt ; //! MC-Reco pT distribution | |
80 | TH1F * fhDeltaPhi; //! MC-Reco phi distribution | |
81 | TH1F * fhDeltaEta; //! MC-Reco eta distribution | |
82 | TH1F * fhRatioE ; //! Reco/MC E distribution | |
83 | TH1F * fhRatioPt ; //! Reco/MC pT distribution | |
84 | TH1F * fhRatioPhi; //! Reco/MC phi distribution | |
85 | TH1F * fhRatioEta; //! Reco/MC eta distribution | |
86 | TH2F * fh2E ; //! E distribution, Reco vs MC | |
87 | TH2F * fh2Pt ; //! pT distribution, Reco vs MC | |
88 | TH2F * fh2Phi; //! phi distribution, Reco vs MC | |
89 | TH2F * fh2Eta; //! eta distribution, Reco vs MC | |
90 | TH2F * fhIM; //! cluster pairs invariant mass | |
91 | TH2F * fhAsym; //! cluster pairs invariant mass | |
92 | TH2F * fhNCellsPerCluster; //! N cells per cluster | |
93 | TH1F * fhNClusters; //! Number of clusters | |
94 | ||
95 | //Calo Cells | |
96 | TH1F * fhNCells; //! Number of towers/crystals with signal | |
97 | TH1F * fhAmplitude; //! Amplitude measured in towers/crystals | |
98 | ||
99 | //MC | |
100 | TH1F *fhGenGamPt ; // pt of primary gamma | |
101 | TH1F *fhGenGamEta ; // eta of primart gamma | |
102 | TH1F *fhGenGamPhi ; // phi of primary gamma | |
103 | TH1F *fhGenPi0Pt ; // pt of primary pi0 | |
104 | TH1F *fhGenPi0Eta ; // eta of primart pi0 | |
105 | TH1F *fhGenPi0Phi ; // phi of primary pi0 | |
106 | TH1F *fhGenEtaPt ; // pt of primary eta | |
107 | TH1F *fhGenEtaEta ; // eta of primart eta | |
108 | TH1F *fhGenEtaPhi ; // phi of primary eta | |
109 | TH1F *fhGenOmegaPt ; // pt of primary omega | |
110 | TH1F *fhGenOmegaEta ; // eta of primart omega | |
111 | TH1F *fhGenOmegaPhi ; // phi of primary omega | |
112 | TH1F *fhGenElePt ; // pt of primary electron | |
113 | TH1F *fhGenEleEta ; // eta of primart electron | |
114 | TH1F *fhGenElePhi ; // phi of primary electron | |
115 | ||
116 | //TH3F * fhEMVxyz ; // Electromagnetic particle production vertex | |
117 | TH2F * fhEMVxyz ; // Electromagnetic particle production vertex | |
118 | TH2F * fhEMR ; // Electromagnetic distance to vertex vs rec energy | |
119 | //TH3F * fhHaVxyz ; // Hadron production vertex | |
120 | TH2F * fhHaVxyz ; // Hadron production vertex | |
121 | TH2F * fhHaR ; // Hadron distance to vertex vs rec energy | |
122 | ||
123 | TH2F * fhGamE ; //! E distribution of generated photons, Reco | |
124 | TH2F * fhGamPt ; //! pT distribution of generated photons, Reco | |
125 | TH2F * fhGamPhi; //! phi distribution of generated photon, Reco | |
126 | TH2F * fhGamEta; //! eta distribution of generated photons, Reco | |
127 | TH1F * fhGamDeltaE ; //! MC-Reco E distribution of generated photons | |
128 | TH1F * fhGamDeltaPt ; //! MC-Reco pT distribution of generated photons | |
129 | TH1F * fhGamDeltaPhi; //! MC-Reco phi distribution of generated photons | |
130 | TH1F * fhGamDeltaEta; //! MC-Reco eta distribution of generated photons | |
131 | TH1F * fhGamRatioE ; //! Reco/MC E distribution of generated photons | |
132 | TH1F * fhGamRatioPt ; //! Reco/MC pT distribution of generated photons | |
133 | TH1F * fhGamRatioPhi; //! Reco/MC phi distribution of generated photons | |
134 | TH1F * fhGamRatioEta; //! Reco/MC eta distribution of generated photons | |
9725fd2a | 135 | TH2F * fhEleE ; //! E distribution of generated electrons, Reco |
136 | TH2F * fhElePt ; //! pT distribution of generated electrons, Reco | |
137 | TH2F * fhElePhi; //! phi distribution of generated electron, Reco | |
138 | TH2F * fhEleEta; //! eta distribution of generated electrons, Reco | |
139 | TH2F * fhPi0E ; //! E distribution of generated pi0, Reco, gamma decay overlapped | |
140 | TH2F * fhPi0Pt ; //! pT distribution of generated pi0, Reco, gamma decay overlapped | |
141 | TH2F * fhPi0Phi; //! phi distribution of generated pi0, Reco, gamma decay overlapped | |
142 | TH2F * fhPi0Eta; //! eta distribution of generated pi0, Reco, gamma decay overlapped | |
143 | TH2F * fhNeHadE ; //! E distribution of generated neutral hadron, Reco | |
144 | TH2F * fhNeHadPt ; //! pT distribution of generated neutral hadron, Reco | |
145 | TH2F * fhNeHadPhi; //! phi distribution of generated neutral hadron, Reco | |
146 | TH2F * fhNeHadEta; //! eta distribution of generated neutral hadron, Reco | |
147 | TH2F * fhChHadE ; //! E distribution of generated charged hadron, Reco | |
148 | TH2F * fhChHadPt ; //! pT distribution of generated charged hadron, Reco | |
149 | TH2F * fhChHadPhi; //! phi distribution of generated charged hadron, Reco | |
150 | TH2F * fhChHadEta; //! eta distribution of generated charged hadron, Reco | |
06e5656a | 151 | |
152 | TH2F * fhGamECharged ; //! E distribution of generated photons, Reco, track matched cluster | |
153 | TH2F * fhGamPtCharged ; //! pT distribution of generated photons, Reco, track matched cluster | |
154 | TH2F * fhGamPhiCharged; //! phi distribution of generated photon, Reco, track matched cluster | |
155 | TH2F * fhGamEtaCharged; //! eta distribution of generated photons, Reco, track matched cluster | |
156 | TH2F * fhEleECharged ; //! E distribution of generated electrons, Reco, track matched cluster | |
157 | TH2F * fhElePtCharged ; //! pT distribution of generated electrons, Reco, track matched cluster | |
158 | TH2F * fhElePhiCharged; //! phi distribution of generated electron, Reco, track matched cluster | |
159 | TH2F * fhEleEtaCharged; //! eta distribution of generated electrons, Reco, track matched cluster | |
160 | TH2F * fhPi0ECharged ; //! E distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
161 | TH2F * fhPi0PtCharged ; //! pT distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
162 | TH2F * fhPi0PhiCharged; //! phi distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
163 | TH2F * fhPi0EtaCharged; //! eta distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
164 | TH2F * fhNeHadECharged ; //! E distribution of generated neutral hadron, Reco, track matched cluster | |
165 | TH2F * fhNeHadPtCharged ; //! pT distribution of generated neutral hadron, Reco, track matched cluster | |
166 | TH2F * fhNeHadPhiCharged; //! phi distribution of generated neutral hadron, Reco , track matched cluster | |
167 | TH2F * fhNeHadEtaCharged; //! eta distribution of generated neutral hadron, Reco, track matched cluster | |
168 | TH2F * fhChHadECharged ; //! E distribution of generated charged hadron, Reco, track matched cluster | |
169 | TH2F * fhChHadPtCharged ; //! pT distribution of generated charged hadron, Reco, track matched cluster | |
170 | TH2F * fhChHadPhiCharged; //! phi distribution of generated charged hadron, Reco, track matched cluster | |
171 | TH2F * fhChHadEtaCharged; //! eta distribution of generated charged hadron, Reco, track matched cluster | |
9725fd2a | 172 | |
173 | TH1F *fhGenGamAccE ; // E of primary gamma | |
174 | TH1F *fhGenGamAccPt ; // pt of primary gamma | |
175 | TH1F *fhGenGamAccEta ; // eta of primart gamma | |
176 | TH1F *fhGenGamAccPhi ; // phi of primary gamma | |
177 | TH1F *fhGenPi0AccE ; // E of primary pi0 | |
178 | TH1F *fhGenPi0AccPt ; // pt of primary pi0 | |
179 | TH1F *fhGenPi0AccEta ; // eta of primart pi0 | |
180 | TH1F *fhGenPi0AccPhi ; // phi of primary pi0 | |
181 | ||
182 | //Histograms for track-matching | |
9d671c82 | 183 | TH2F *fh1pOverE; //! p/E for track-cluster matches |
9725fd2a | 184 | TH1F *fh1dR; //! distance between projected track and cluster |
185 | TH2F *fh2EledEdx; //! dE/dx vs. momentum for electron candidates | |
186 | TH2F *fh2MatchdEdx; //! dE/dx vs. momentum for all matches | |
187 | ||
9d671c82 | 188 | TH2F *fhMCEle1pOverE; //! p/E for track-cluster matches, MC electrons |
06e5656a | 189 | TH1F *fhMCEle1dR; //! distance between projected track and cluster, MC electrons |
190 | TH2F *fhMCEle2MatchdEdx; //! dE/dx vs. momentum for all matches, MC electrons | |
191 | ||
9d671c82 | 192 | TH2F *fhMCChHad1pOverE; //! p/E for track-cluster matches, MC charged hadrons |
06e5656a | 193 | TH1F *fhMCChHad1dR; //! distance between projected track and cluster, MC charged hadrons |
194 | TH2F *fhMCChHad2MatchdEdx; //! dE/dx vs. momentum for all matches, MC charged | |
195 | ||
9d671c82 | 196 | TH2F *fhMCNeutral1pOverE; //! p/E for track-cluster matches, MC neutral |
06e5656a | 197 | TH1F *fhMCNeutral1dR; //! distance between projected track and cluster, MC neutral |
198 | TH2F *fhMCNeutral2MatchdEdx; //! dE/dx vs. momentum for all matches, MC neutral | |
199 | ||
9d671c82 | 200 | TH2F *fh1pOverER02; //! p/E for track-cluster matches, dR > 0.2 |
201 | TH2F *fhMCEle1pOverER02; //! p/E for track-cluster matches, dR > 0.2, MC electrons | |
202 | TH2F *fhMCChHad1pOverER02; //! p/E for track-cluster matches, dR > 0.2, MC charged hadrons | |
203 | TH2F *fhMCNeutral1pOverER02; //! p/E for track-cluster matches, dR > 0.2, MC neutral | |
06e5656a | 204 | |
9725fd2a | 205 | ClassDef(AliAnaCalorimeterQA,1) |
206 | } ; | |
207 | ||
208 | ||
209 | #endif //ALIANACALORIMETERQA_H | |
210 | ||
211 | ||
212 |