]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/PartCorrDep/AliAnaCalorimeterQA.h
Correct bug in non initialization of amp and time in loops
[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//
11//-- Author: Gustavo Conesa (INFN-LNF)
12
13// --- Root system ---
14class TH2F;
15class TH1F;
9725fd2a 16
17// --- Analysis system ---
18#include "AliAnaPartCorrBaseClass.h"
19
20class 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