]>
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 | // | |
0cdb88b8 | 11 | //-- Author: Gustavo Conesa (INFN-LNF)a |
9725fd2a | 12 | |
13 | // --- Root system --- | |
a5fafd85 | 14 | class TH3F; |
9725fd2a | 15 | class TH2F; |
16 | class TH1F; | |
9725fd2a | 17 | |
18 | // --- Analysis system --- | |
a5fafd85 | 19 | class AliESDCaloCluster; |
20 | class AliAODCaloCluster; | |
21 | ||
9725fd2a | 22 | #include "AliAnaPartCorrBaseClass.h" |
23 | ||
24 | class AliAnaCalorimeterQA : public AliAnaPartCorrBaseClass { | |
25 | ||
26 | public: | |
27 | ||
28 | AliAnaCalorimeterQA() ; // default ctor | |
29 | AliAnaCalorimeterQA(const AliAnaCalorimeterQA & g) ; // cpy ctor | |
eb5a51ae | 30 | |
31 | private: | |
9725fd2a | 32 | AliAnaCalorimeterQA & operator = (const AliAnaCalorimeterQA & g) ;//cpy assignment |
eb5a51ae | 33 | |
34 | public: | |
afabc52f | 35 | virtual ~AliAnaCalorimeterQA() {;} //virtual dtor |
9725fd2a | 36 | |
eb5a51ae | 37 | void ClusterHistograms(const TLorentzVector mom, Float_t *pos, Float_t * showerShape, |
38 | const Int_t nCaloCellsPerCluster, const Int_t nModule, | |
902aa95c | 39 | const Int_t nTracksMatched, const TObject* track, |
40 | const Int_t * labels, const Int_t nLabels); | |
41 | ||
9725fd2a | 42 | TList * GetCreateOutputObjects(); |
902aa95c | 43 | |
9725fd2a | 44 | void Init(); |
45 | void InitParameters(); | |
46 | ||
47 | void Print(const Option_t * opt) const; | |
48 | ||
49 | void MakeAnalysisFillHistograms() ; | |
902aa95c | 50 | |
51 | void MCHistograms(const TLorentzVector mom, const Int_t pdg); | |
52 | ||
9725fd2a | 53 | TString GetCalorimeter() const {return fCalorimeter ;} |
54 | void SetCalorimeter( TString calo ) {fCalorimeter = calo; } | |
55 | TString GetStyleMacro() const {return fStyleMacro ;} | |
56 | void SetStyleMacro( TString macro ) {fStyleMacro = macro; } | |
57 | ||
ff45398a | 58 | void SwitchOnPlotsMaking() {fMakePlots = kTRUE;} |
59 | void SwitchOffPlotsMaking() {fMakePlots = kFALSE;} | |
902aa95c | 60 | |
a0bb4dc0 | 61 | void SwitchOnCalorimetersCorrelation() {fCorrelateCalos = kTRUE;} |
62 | void SwitchOffCalorimetersCorrelation() {fCorrelateCalos = kFALSE;} | |
63 | void CorrelateCalorimeters(TRefArray* caloClusters); | |
64 | ||
9725fd2a | 65 | void Terminate(TList * outputList); |
66 | void ReadHistograms(TList * outputList); //Fill histograms with histograms in ouput list, needed in Terminate. | |
67 | ||
a5fafd85 | 68 | Int_t GetModuleNumber(AliESDCaloCluster * cluster); |
69 | Int_t GetModuleNumber(AliAODCaloCluster * cluster); | |
eb5a51ae | 70 | Int_t GetModuleNumberCellIndexes(const Int_t absId, Int_t & icol, Int_t & irow, Int_t &iRCU); |
71 | ||
a5fafd85 | 72 | void SetNumberOfModules(Int_t nmod) {fNModules = nmod;} |
73 | ||
5a2dbc3c | 74 | //Histogram binning setters |
3a75604b | 75 | |
76 | Int_t GetNewRebinForRePlotting(TH1D*histo, const Float_t newXmin, const Float_t newXmax, | |
77 | const Int_t newNbins) const; | |
78 | ||
5a2dbc3c | 79 | virtual void SetHistoPOverERangeAndNBins(Float_t min, Float_t max, Int_t n) { |
80 | fHistoPOverEBins = n ; | |
81 | fHistoPOverEMax = max ; | |
82 | fHistoPOverEMin = min ; | |
83 | } | |
84 | ||
85 | Int_t GetHistoPOverEBins() const { return fHistoPOverEBins ; } | |
86 | Float_t GetHistoPOverEMin() const { return fHistoPOverEMin ; } | |
87 | Float_t GetHistoPOverEMax() const { return fHistoPOverEMax ; } | |
88 | ||
89 | virtual void SetHistodEdxRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
90 | fHistodEdxBins = n ; | |
91 | fHistodEdxMax = max ; | |
92 | fHistodEdxMin = min ; | |
93 | } | |
94 | ||
95 | Int_t GetHistodEdxBins() const { return fHistodEdxBins ; } | |
96 | Float_t GetHistodEdxMin() const { return fHistodEdxMin ; } | |
97 | Float_t GetHistodEdxMax() const { return fHistodEdxMax ; } | |
98 | ||
99 | virtual void SetHistodRRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
100 | fHistodRBins = n ; | |
101 | fHistodRMax = max ; | |
102 | fHistodRMin = min ; | |
103 | } | |
104 | ||
105 | Int_t GetHistodRBins() const { return fHistodRBins ; } | |
106 | Float_t GetHistodRMin() const { return fHistodRMin ; } | |
107 | Float_t GetHistodRMax() const { return fHistodRMax ; } | |
108 | ||
109 | virtual void SetHistoTimeRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
110 | fHistoTimeBins = n ; | |
111 | fHistoTimeMax = max ; | |
112 | fHistoTimeMin = min ; | |
113 | } | |
114 | ||
115 | Int_t GetHistoTimeBins() const { return fHistoTimeBins ; } | |
116 | Float_t GetHistoTimeMin() const { return fHistoTimeMin ; } | |
117 | Float_t GetHistoTimeMax() const { return fHistoTimeMax ; } | |
118 | ||
119 | virtual void SetHistoNClusterCellRangeAndNBins(Int_t min, Int_t max, Int_t n) { | |
120 | fHistoNBins = n ; | |
121 | fHistoNMax = max ; | |
122 | fHistoNMin = min ; | |
123 | } | |
124 | ||
c9141a7c | 125 | Int_t GetHistoNClusterCellBins() const { return fHistoNBins ; } |
126 | Int_t GetHistoNClusterCellMin() const { return fHistoNMin ; } | |
127 | Int_t GetHistoNClusterCellMax() const { return fHistoNMax ; } | |
5a2dbc3c | 128 | |
129 | virtual void SetHistoRatioRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
130 | fHistoRatioBins = n ; | |
131 | fHistoRatioMax = max ; | |
132 | fHistoRatioMin = min ; | |
133 | } | |
134 | ||
135 | Int_t GetHistoRatioBins() const { return fHistoRatioBins ; } | |
136 | Float_t GetHistoRatioMin() const { return fHistoRatioMin ; } | |
137 | Float_t GetHistoRatioMax() const { return fHistoRatioMax ; } | |
138 | ||
139 | virtual void SetHistoVertexDistRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
140 | fHistoVertexDistBins = n ; | |
141 | fHistoVertexDistMax = max ; | |
142 | fHistoVertexDistMin = min ; | |
143 | } | |
144 | ||
145 | Int_t GetHistoVertexDistBins() const { return fHistoVertexDistBins ; } | |
146 | Float_t GetHistoVertexDistMin() const { return fHistoVertexDistMin ; } | |
147 | Float_t GetHistoVertexDistMax() const { return fHistoVertexDistMax ; } | |
148 | ||
149 | ||
0866d83a | 150 | virtual void SetHistoXRangeAndNBins(Float_t min, Float_t max, Int_t n) { |
151 | fHistoXBins = n ; | |
152 | fHistoXMax = max ; | |
153 | fHistoXMin = min ; | |
154 | } | |
155 | ||
156 | Int_t GetHistoXBins() const { return fHistoXBins ; } | |
157 | Float_t GetHistoXMin() const { return fHistoXMin ; } | |
158 | Float_t GetHistoXMax() const { return fHistoXMax ; } | |
159 | ||
160 | ||
161 | virtual void SetHistoYRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
162 | fHistoYBins = n ; | |
163 | fHistoYMax = max ; | |
164 | fHistoYMin = min ; | |
165 | } | |
166 | ||
167 | Int_t GetHistoYBins() const { return fHistoYBins ; } | |
168 | Float_t GetHistoYMin() const { return fHistoYMin ; } | |
169 | Float_t GetHistoYMax() const { return fHistoYMax ; } | |
170 | ||
171 | ||
172 | virtual void SetHistoZRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
173 | fHistoZBins = n ; | |
174 | fHistoZMax = max ; | |
175 | fHistoZMin = min ; | |
176 | } | |
177 | ||
178 | Int_t GetHistoZBins() const { return fHistoZBins ; } | |
179 | Float_t GetHistoZMin() const { return fHistoZMin ; } | |
180 | Float_t GetHistoZMax() const { return fHistoZMax ; } | |
181 | ||
182 | virtual void SetHistoRRangeAndNBins(Float_t min, Float_t max, Int_t n) { | |
183 | fHistoRBins = n ; | |
184 | fHistoRMax = max ; | |
185 | fHistoRMin = min ; | |
186 | } | |
187 | ||
188 | Int_t GetHistoRBins() const { return fHistoRBins ; } | |
189 | Float_t GetHistoRMin() const { return fHistoRMin ; } | |
190 | Float_t GetHistoRMax() const { return fHistoRMax ; } | |
191 | ||
eb5a51ae | 192 | virtual void SetHistoShowerShapeRangeAndNBins(Float_t min, Float_t max, Int_t n) { |
193 | fHistoSSBins = n ; | |
194 | fHistoSSMax = max ; | |
195 | fHistoSSMin = min ; | |
196 | } | |
197 | ||
198 | Int_t GetHistoShowerShapeBins() const { return fHistoSSBins ; } | |
199 | Float_t GetHistoShowerShapeMin() const { return fHistoSSMin ; } | |
200 | Float_t GetHistoShowerShapeMax() const { return fHistoSSMax ; } | |
201 | ||
0866d83a | 202 | |
9725fd2a | 203 | private: |
204 | ||
5a2dbc3c | 205 | TString fCalorimeter ; // Calorimeter selection |
206 | TString fStyleMacro ; // Location of macro for plots style | |
207 | Bool_t fMakePlots ; // Print plots | |
208 | Bool_t fCorrelateCalos ; // Correlate PHOS/EMCAL clusters | |
209 | Int_t fNModules ; // Number of EMCAL/PHOS modules, set as many histogras as modules | |
eb5a51ae | 210 | Int_t fNRCU ; // Number of EMCAL/PHOS RCU, set as many histogras as RCU |
211 | ||
9725fd2a | 212 | //Histograms |
5a2dbc3c | 213 | //Histogram Bins |
214 | Int_t fHistoPOverEBins; // p/E histogram number of bins | |
215 | Float_t fHistoPOverEMax; // p/E maximum value | |
216 | Float_t fHistoPOverEMin; // p/E minimum value | |
217 | Int_t fHistodEdxBins; // dEdx histogram number of bins | |
218 | Float_t fHistodEdxMax; // dEdx maximum value | |
219 | Float_t fHistodEdxMin; // dEdx minimum value | |
220 | Int_t fHistodRBins; // dR histogram number of bins | |
221 | Float_t fHistodRMax; // dR maximum value | |
222 | Float_t fHistodRMin; // dR minimum value | |
223 | Int_t fHistoTimeBins; // cell time histogram number of bins | |
224 | Float_t fHistoTimeMax; // cell time maximum value | |
225 | Float_t fHistoTimeMin; // cell time minimum value | |
226 | Int_t fHistoNBins; // number of clusters/cells histogram number of bins | |
227 | Int_t fHistoNMax; // number maximum value | |
228 | Int_t fHistoNMin; // number minimum value | |
229 | Int_t fHistoRatioBins; // ratio histogram number of bins | |
230 | Float_t fHistoRatioMax; // ratio maximum value | |
231 | Float_t fHistoRatioMin; // ratio minimum value | |
232 | Int_t fHistoVertexDistBins; // vertex distance histogram number of bins | |
233 | Float_t fHistoVertexDistMax; // vertex distance maximum value | |
234 | Float_t fHistoVertexDistMin; // vertex distance minimum value | |
0866d83a | 235 | Int_t fHistoRBins; // r =sqrt(x^2+y^2+z^2) (cm) position histogram number of bins |
236 | Float_t fHistoRMax; // r =sqrt(x^2+y^2+z^2) (cm) maximum value | |
237 | Float_t fHistoRMin; // r =sqrt(x^2+y^2+z^2) (cm) minimum value | |
238 | Int_t fHistoXBins; // x (cm) position histogram number of bins | |
239 | Float_t fHistoXMax; // x (cm) position maximum value | |
240 | Float_t fHistoXMin; // x (cm) position minimum value | |
241 | Int_t fHistoYBins; // y (cm) position histogram number of bins | |
242 | Float_t fHistoYMax; // y (cm) position maximum value | |
243 | Float_t fHistoYMin; // y (cm) position minimum value | |
244 | Int_t fHistoZBins; // z (cm) position histogram number of bins | |
245 | Float_t fHistoZMax; // z (cm) position maximum value | |
246 | Float_t fHistoZMin; // z (cm) position minimum value | |
eb5a51ae | 247 | Int_t fHistoSSBins; // Shower Shape parameter histogram number of bins |
248 | Float_t fHistoSSMax; // Shower Shape parameter position maximum value | |
249 | Float_t fHistoSSMin; // Shower Shape parameter position minimum value | |
5a2dbc3c | 250 | |
9725fd2a | 251 | //CaloClusters |
252 | TH1F * fhE ; //! E distribution, Reco | |
253 | TH1F * fhPt ; //! pT distribution, Reco | |
254 | TH1F * fhPhi; //! phi distribution, Reco | |
255 | TH1F * fhEta; //! eta distribution, Reco | |
a5fafd85 | 256 | TH3F * fhEtaPhiE ; //! eta vs phi vs E, Reco |
9725fd2a | 257 | TH1F * fhECharged ; //! E distribution, Reco, matched with track |
258 | TH1F * fhPtCharged ; //! pT distribution, Reco, matched with track | |
259 | TH1F * fhPhiCharged; //! phi distribution, Reco, matched with track | |
260 | TH1F * fhEtaCharged; //! eta distribution, Reco, matched with track | |
0866d83a | 261 | TH3F * fhEtaPhiECharged ; //! eta vs phi vs E, Reco, matched with track |
9725fd2a | 262 | TH1F * fhEChargedNoOut ; //! E distribution, Reco, matched with track, no outer param |
263 | TH1F * fhPtChargedNoOut ; //! pT distribution, Reco, matched with track, no outer param | |
264 | TH1F * fhPhiChargedNoOut; //! phi distribution, Reco, matched with track, no outer param | |
265 | TH1F * fhEtaChargedNoOut; //! eta distribution, Reco, matched with track, no outer param | |
266 | TH2F * fhEtaPhiChargedNoOut ; //! eta vs phi, Reco, matched with track, no outer param | |
267 | TH1F * fhDeltaE ; //! MC-Reco E distribution | |
268 | TH1F * fhDeltaPt ; //! MC-Reco pT distribution | |
269 | TH1F * fhDeltaPhi; //! MC-Reco phi distribution | |
270 | TH1F * fhDeltaEta; //! MC-Reco eta distribution | |
271 | TH1F * fhRatioE ; //! Reco/MC E distribution | |
272 | TH1F * fhRatioPt ; //! Reco/MC pT distribution | |
273 | TH1F * fhRatioPhi; //! Reco/MC phi distribution | |
274 | TH1F * fhRatioEta; //! Reco/MC eta distribution | |
275 | TH2F * fh2E ; //! E distribution, Reco vs MC | |
276 | TH2F * fh2Pt ; //! pT distribution, Reco vs MC | |
277 | TH2F * fh2Phi; //! phi distribution, Reco vs MC | |
278 | TH2F * fh2Eta; //! eta distribution, Reco vs MC | |
eb5a51ae | 279 | |
280 | TH3F * fhLambda ; //! Shower ellipse axis Lambda 0 vs vs Lambda 1 vs E | |
281 | TH2F * fhDispersion ; //! Shower dispersion vs E | |
282 | ||
9725fd2a | 283 | TH2F * fhIM; //! cluster pairs invariant mass |
a5fafd85 | 284 | TH2F * fhIMCellCut; //! cluster pairs invariant mass, n cells > 1 per cluster |
9725fd2a | 285 | TH2F * fhAsym; //! cluster pairs invariant mass |
eb5a51ae | 286 | |
0866d83a | 287 | TH3F * fhNCellsPerCluster; //! N cells per cluster vs cluster energy vs eta of cluster |
288 | TH3F * fhNCellsPerClusterMIP; //! N cells per cluster vs cluster energy vs eta of cluster, finer fixed pT bin for MIP search. | |
289 | TH3F * fhNCellsPerClusterMIPCharged; //! N cells per cluster vs cluster energy vs eta of cluster, finer fixed pT bin for MIP search, cluster matched with track. | |
eb5a51ae | 290 | |
9725fd2a | 291 | TH1F * fhNClusters; //! Number of clusters |
292 | ||
50f39b97 | 293 | TH1F * fhCellTimeSpreadRespectToCellMax; //! Difference of the time of cell with maximum dep energy and the rest of cells |
294 | TH1F * fhCellIdCellLargeTimeSpread; //! Cells with large time respect to max (diff > 100 ns) | |
295 | ||
0866d83a | 296 | TH2F * fhRNCells ; //! R=sqrt(x^2+y^2+z^2) (cm) cluster distribution vs N cells in cluster |
297 | TH2F * fhXNCells ; //! X (cm) cluster distribution vs N cells in cluster | |
298 | TH2F * fhYNCells ; //! Y (cm) cluster distribution vs N cells in cluster | |
299 | TH2F * fhZNCells ; //! Z (cm) cluster distribution vs N cells in cluster | |
300 | ||
301 | TH2F * fhRE ; //! R=sqrt(x^2+y^2+z^2) (cm) cluster distribution vs cluster energy | |
302 | TH2F * fhXE ; //! X (cm) cluster distribution vs cluster energy | |
303 | TH2F * fhYE ; //! Y (cm) cluster distribution vs cluster energy | |
304 | TH2F * fhZE ; //! Z (cm) cluster distribution vs cluster energy | |
305 | TH3F * fhXYZ; //! cluster X vs Y vs Z (cm) | |
306 | ||
307 | TH2F * fhRCellE ; //! R=sqrt(x^2+y^2+z^2) (cm) cell distribution vs cell energy | |
308 | TH2F * fhXCellE ; //! X (cm) cell distribution vs cell energy | |
309 | TH2F * fhYCellE ; //! Y (cm) cell distribution vs cell energy | |
310 | TH2F * fhZCellE ; //! Z (cm) cell distribution vs cell energy | |
311 | TH3F * fhXYZCell; //! cell X vs Y vs Z (cm) | |
312 | ||
313 | TH2F * fhDeltaCellClusterRNCells ; //! R cluster - R cell distribution (cm) vs N cells in cluster | |
314 | TH2F * fhDeltaCellClusterXNCells ; //! X cluster - X cell distribution (cm) vs N cells in cluster | |
315 | TH2F * fhDeltaCellClusterYNCells ; //! Y cluster - Y cell distribution (cm) vs N cells in cluster | |
316 | TH2F * fhDeltaCellClusterZNCells ; //! Z cluster - Z cell distribution (cm) vs N cells in cluster | |
317 | ||
318 | TH2F * fhDeltaCellClusterRE ; //! R cluster - R cell distribution (cm) vs cluster energy | |
319 | TH2F * fhDeltaCellClusterXE ; //! X cluster - X cell distribution (cm) vs cluster energy | |
320 | TH2F * fhDeltaCellClusterYE ; //! Y cluster - Y cell distribution (cm) vs cluster energy | |
321 | TH2F * fhDeltaCellClusterZE ; //! Z cluster - Z cell distribution (cm) vs cluster energy | |
322 | ||
323 | ||
9725fd2a | 324 | //Calo Cells |
5a2dbc3c | 325 | TH1F * fhNCells; //! Number of towers/crystals with signal |
9725fd2a | 326 | TH1F * fhAmplitude; //! Amplitude measured in towers/crystals |
0cdb88b8 | 327 | TH2F * fhAmpId; //! Amplitude measured in towers/crystals vs id of tower. |
5a2dbc3c | 328 | TH1F * fhTime; //! Time measured in towers/crystals |
329 | TH2F * fhTimeId; //! Time vs Absolute cell Id | |
330 | TH2F * fhTimeAmp; //! Time vs Amplitude | |
0866d83a | 331 | TH3F * fhEtaPhiAmp; //! eta vs phi vs amplitude, cells |
332 | ||
a0bb4dc0 | 333 | //Calorimeters Correlation |
334 | TH2F * fhCaloCorrNClusters; // EMCAL vs PHOS, number of clusters | |
335 | TH2F * fhCaloCorrEClusters; // EMCAL vs PHOS, total measured cluster energy | |
336 | TH2F * fhCaloCorrNCells; // EMCAL vs PHOS, number of cells | |
337 | TH2F * fhCaloCorrECells; // EMCAL vs PHOS, total measured cell energy | |
338 | ||
a5fafd85 | 339 | //Module histograms |
340 | TH1F ** fhEMod ; //! E distribution for different module, Reco | |
341 | TH1F ** fhNClustersMod ; //! Number of clusters for different module, Reco | |
342 | TH2F ** fhNCellsPerClusterMod ; //! N cells per clusters different module, Reco | |
343 | TH1F ** fhNCellsMod ; //! Number of towers/crystals with signal different module, Reco | |
344 | TH2F ** fhGridCellsMod ; //! Cells ordered in column/row for different module, Reco | |
345 | TH2F ** fhGridCellsEMod ; //! Cells ordered in column/row for different module, weighted with energy, Reco | |
50f39b97 | 346 | TH2F ** fhGridCellsTimeMod ; //! Cells ordered in column/row for different module, weighted with time, Reco |
a5fafd85 | 347 | TH1F ** fhAmplitudeMod ; //! Amplitude measured in towers/crystals different module, Reco |
50f39b97 | 348 | TH1F ** fhAmplitudeModFraction; //! Amplitude measured in towers/crystals different fractions of module, Reco |
eb5a51ae | 349 | TH2F ** fhTimeAmpPerRCU; //! Time vs Amplitude measured in towers/crystals different RCU |
a5fafd85 | 350 | TH2F ** fhIMMod; //! cluster pairs invariant mass, different module, |
351 | TH2F ** fhIMCellCutMod; //! cluster pairs invariant mass, n cells > 1 per cluster, different module | |
352 | ||
9725fd2a | 353 | //MC |
354 | TH1F *fhGenGamPt ; // pt of primary gamma | |
355 | TH1F *fhGenGamEta ; // eta of primart gamma | |
356 | TH1F *fhGenGamPhi ; // phi of primary gamma | |
357 | TH1F *fhGenPi0Pt ; // pt of primary pi0 | |
358 | TH1F *fhGenPi0Eta ; // eta of primart pi0 | |
359 | TH1F *fhGenPi0Phi ; // phi of primary pi0 | |
360 | TH1F *fhGenEtaPt ; // pt of primary eta | |
361 | TH1F *fhGenEtaEta ; // eta of primart eta | |
362 | TH1F *fhGenEtaPhi ; // phi of primary eta | |
363 | TH1F *fhGenOmegaPt ; // pt of primary omega | |
364 | TH1F *fhGenOmegaEta ; // eta of primart omega | |
365 | TH1F *fhGenOmegaPhi ; // phi of primary omega | |
366 | TH1F *fhGenElePt ; // pt of primary electron | |
367 | TH1F *fhGenEleEta ; // eta of primart electron | |
368 | TH1F *fhGenElePhi ; // phi of primary electron | |
369 | ||
370 | //TH3F * fhEMVxyz ; // Electromagnetic particle production vertex | |
371 | TH2F * fhEMVxyz ; // Electromagnetic particle production vertex | |
372 | TH2F * fhEMR ; // Electromagnetic distance to vertex vs rec energy | |
373 | //TH3F * fhHaVxyz ; // Hadron production vertex | |
374 | TH2F * fhHaVxyz ; // Hadron production vertex | |
375 | TH2F * fhHaR ; // Hadron distance to vertex vs rec energy | |
376 | ||
377 | TH2F * fhGamE ; //! E distribution of generated photons, Reco | |
378 | TH2F * fhGamPt ; //! pT distribution of generated photons, Reco | |
379 | TH2F * fhGamPhi; //! phi distribution of generated photon, Reco | |
380 | TH2F * fhGamEta; //! eta distribution of generated photons, Reco | |
381 | TH1F * fhGamDeltaE ; //! MC-Reco E distribution of generated photons | |
382 | TH1F * fhGamDeltaPt ; //! MC-Reco pT distribution of generated photons | |
383 | TH1F * fhGamDeltaPhi; //! MC-Reco phi distribution of generated photons | |
384 | TH1F * fhGamDeltaEta; //! MC-Reco eta distribution of generated photons | |
385 | TH1F * fhGamRatioE ; //! Reco/MC E distribution of generated photons | |
386 | TH1F * fhGamRatioPt ; //! Reco/MC pT distribution of generated photons | |
387 | TH1F * fhGamRatioPhi; //! Reco/MC phi distribution of generated photons | |
388 | TH1F * fhGamRatioEta; //! Reco/MC eta distribution of generated photons | |
9725fd2a | 389 | TH2F * fhEleE ; //! E distribution of generated electrons, Reco |
390 | TH2F * fhElePt ; //! pT distribution of generated electrons, Reco | |
391 | TH2F * fhElePhi; //! phi distribution of generated electron, Reco | |
392 | TH2F * fhEleEta; //! eta distribution of generated electrons, Reco | |
393 | TH2F * fhPi0E ; //! E distribution of generated pi0, Reco, gamma decay overlapped | |
394 | TH2F * fhPi0Pt ; //! pT distribution of generated pi0, Reco, gamma decay overlapped | |
395 | TH2F * fhPi0Phi; //! phi distribution of generated pi0, Reco, gamma decay overlapped | |
396 | TH2F * fhPi0Eta; //! eta distribution of generated pi0, Reco, gamma decay overlapped | |
397 | TH2F * fhNeHadE ; //! E distribution of generated neutral hadron, Reco | |
398 | TH2F * fhNeHadPt ; //! pT distribution of generated neutral hadron, Reco | |
399 | TH2F * fhNeHadPhi; //! phi distribution of generated neutral hadron, Reco | |
400 | TH2F * fhNeHadEta; //! eta distribution of generated neutral hadron, Reco | |
401 | TH2F * fhChHadE ; //! E distribution of generated charged hadron, Reco | |
402 | TH2F * fhChHadPt ; //! pT distribution of generated charged hadron, Reco | |
403 | TH2F * fhChHadPhi; //! phi distribution of generated charged hadron, Reco | |
404 | TH2F * fhChHadEta; //! eta distribution of generated charged hadron, Reco | |
06e5656a | 405 | |
406 | TH2F * fhGamECharged ; //! E distribution of generated photons, Reco, track matched cluster | |
407 | TH2F * fhGamPtCharged ; //! pT distribution of generated photons, Reco, track matched cluster | |
408 | TH2F * fhGamPhiCharged; //! phi distribution of generated photon, Reco, track matched cluster | |
409 | TH2F * fhGamEtaCharged; //! eta distribution of generated photons, Reco, track matched cluster | |
410 | TH2F * fhEleECharged ; //! E distribution of generated electrons, Reco, track matched cluster | |
411 | TH2F * fhElePtCharged ; //! pT distribution of generated electrons, Reco, track matched cluster | |
412 | TH2F * fhElePhiCharged; //! phi distribution of generated electron, Reco, track matched cluster | |
413 | TH2F * fhEleEtaCharged; //! eta distribution of generated electrons, Reco, track matched cluster | |
414 | TH2F * fhPi0ECharged ; //! E distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
415 | TH2F * fhPi0PtCharged ; //! pT distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
416 | TH2F * fhPi0PhiCharged; //! phi distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
417 | TH2F * fhPi0EtaCharged; //! eta distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster | |
418 | TH2F * fhNeHadECharged ; //! E distribution of generated neutral hadron, Reco, track matched cluster | |
419 | TH2F * fhNeHadPtCharged ; //! pT distribution of generated neutral hadron, Reco, track matched cluster | |
420 | TH2F * fhNeHadPhiCharged; //! phi distribution of generated neutral hadron, Reco , track matched cluster | |
421 | TH2F * fhNeHadEtaCharged; //! eta distribution of generated neutral hadron, Reco, track matched cluster | |
422 | TH2F * fhChHadECharged ; //! E distribution of generated charged hadron, Reco, track matched cluster | |
423 | TH2F * fhChHadPtCharged ; //! pT distribution of generated charged hadron, Reco, track matched cluster | |
424 | TH2F * fhChHadPhiCharged; //! phi distribution of generated charged hadron, Reco, track matched cluster | |
425 | TH2F * fhChHadEtaCharged; //! eta distribution of generated charged hadron, Reco, track matched cluster | |
9725fd2a | 426 | |
427 | TH1F *fhGenGamAccE ; // E of primary gamma | |
428 | TH1F *fhGenGamAccPt ; // pt of primary gamma | |
429 | TH1F *fhGenGamAccEta ; // eta of primart gamma | |
430 | TH1F *fhGenGamAccPhi ; // phi of primary gamma | |
431 | TH1F *fhGenPi0AccE ; // E of primary pi0 | |
432 | TH1F *fhGenPi0AccPt ; // pt of primary pi0 | |
433 | TH1F *fhGenPi0AccEta ; // eta of primart pi0 | |
434 | TH1F *fhGenPi0AccPhi ; // phi of primary pi0 | |
435 | ||
436 | //Histograms for track-matching | |
9d671c82 | 437 | TH2F *fh1pOverE; //! p/E for track-cluster matches |
9725fd2a | 438 | TH1F *fh1dR; //! distance between projected track and cluster |
439 | TH2F *fh2EledEdx; //! dE/dx vs. momentum for electron candidates | |
440 | TH2F *fh2MatchdEdx; //! dE/dx vs. momentum for all matches | |
441 | ||
9d671c82 | 442 | TH2F *fhMCEle1pOverE; //! p/E for track-cluster matches, MC electrons |
06e5656a | 443 | TH1F *fhMCEle1dR; //! distance between projected track and cluster, MC electrons |
444 | TH2F *fhMCEle2MatchdEdx; //! dE/dx vs. momentum for all matches, MC electrons | |
445 | ||
9d671c82 | 446 | TH2F *fhMCChHad1pOverE; //! p/E for track-cluster matches, MC charged hadrons |
06e5656a | 447 | TH1F *fhMCChHad1dR; //! distance between projected track and cluster, MC charged hadrons |
448 | TH2F *fhMCChHad2MatchdEdx; //! dE/dx vs. momentum for all matches, MC charged | |
449 | ||
9d671c82 | 450 | TH2F *fhMCNeutral1pOverE; //! p/E for track-cluster matches, MC neutral |
06e5656a | 451 | TH1F *fhMCNeutral1dR; //! distance between projected track and cluster, MC neutral |
452 | TH2F *fhMCNeutral2MatchdEdx; //! dE/dx vs. momentum for all matches, MC neutral | |
453 | ||
9d671c82 | 454 | TH2F *fh1pOverER02; //! p/E for track-cluster matches, dR > 0.2 |
455 | TH2F *fhMCEle1pOverER02; //! p/E for track-cluster matches, dR > 0.2, MC electrons | |
456 | TH2F *fhMCChHad1pOverER02; //! p/E for track-cluster matches, dR > 0.2, MC charged hadrons | |
457 | TH2F *fhMCNeutral1pOverER02; //! p/E for track-cluster matches, dR > 0.2, MC neutral | |
06e5656a | 458 | |
eb5a51ae | 459 | ClassDef(AliAnaCalorimeterQA,8) |
9725fd2a | 460 | } ; |
461 | ||
462 | ||
463 | #endif //ALIANACALORIMETERQA_H | |
464 | ||
465 | ||
466 |