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