]>
Commit | Line | Data |
---|---|---|
4998becf | 1 | #ifndef ALIANALYSISETCUTS_H |
2 | #define ALIANALYSISETCUTS_H | |
3 | //_________________________________________________________________________ | |
4 | // Utility Class for transverse energy studies | |
5 | // Base class for ESD & MC analysis | |
6 | // - cuts for reconstruction and MonteCarlo | |
7 | // | |
8 | //*-- Authors: Oystein Djuvsland (Bergen), David Silvermyr (ORNL) | |
9 | //_________________________________________________________________________ | |
2fbf38ac | 10 | |
4998becf | 11 | #include "TNamed.h" |
b2c10007 | 12 | #include <iostream> |
2fbf38ac | 13 | |
4998becf | 14 | class AliAnalysisEtCuts : public TNamed |
2fbf38ac | 15 | { |
4998becf | 16 | public: |
2fbf38ac | 17 | |
4998becf | 18 | AliAnalysisEtCuts(); |
19 | virtual ~AliAnalysisEtCuts(); | |
2fbf38ac | 20 | |
0fa8c632 | 21 | virtual void SetPbPbDefaults(); |
22 | ||
4998becf | 23 | // Getters |
24 | // Common | |
25 | Double_t GetCommonEtaCut() const { return fCommonEtaCut; } | |
26 | Double_t GetCommonClusterEnergyCut() const { return fCommonClusterEnergyCut; } | |
27 | Double_t GetCommonTrackPtCut() const { return fCommonTrackPtCut; } | |
28 | Int_t GetCommonSingleCell() const { return fCommonSingleCell; } | |
e16aac77 | 29 | |
4998becf | 30 | // GeometryPhos |
31 | Double_t GetGeometryPhosEtaAccCut() const { return fGeometryPhosEtaAccCut; } | |
32 | Double_t GetGeometryPhosPhiAccMinCut() const { return fGeometryPhosPhiAccMinCut; } | |
33 | Double_t GetGeometryPhosPhiAccMaxCut() const { return fGeometryPhosPhiAccMaxCut; } | |
34 | Double_t GetGeometryPhosDetectorRadius() const { return fGeometryPhosDetectorRadius; } | |
35 | // GeometryEmcal | |
36 | Double_t GetGeometryEmcalEtaAccCut() const { return fGeometryEmcalEtaAccCut; } | |
37 | Double_t GetGeometryEmcalPhiAccMinCut() const { return fGeometryEmcalPhiAccMinCut; } | |
38 | Double_t GetGeometryEmcalPhiAccMaxCut() const { return fGeometryEmcalPhiAccMaxCut; } | |
39 | Double_t GetGeometryEmcalDetectorRadius() const { return fGeometryEmcalDetectorRadius; } | |
40 | // Reconstructed | |
41 | Double_t GetReconstructedVertexXCut() const { return fReconstructedVertexXCut; } | |
42 | Double_t GetReconstructedVertexYCut() const { return fReconstructedVertexYCut; } | |
43 | Double_t GetReconstructedVertexZCut() const { return fReconstructedVertexZCut; } | |
44 | Double_t GetReconstructedIPxyCut() const { return fReconstructedIPxyCut; } | |
45 | Double_t GetReconstructedIPzCut() const { return fReconstructedIPzCut; } | |
46 | Int_t GetReconstructedNTpcClustersCut() const { return fReconstructedNTpcClustersCut; } | |
47 | Int_t GetReconstructedNItsClustersCut() const { return fReconstructedNItsClustersCut; } | |
e16aac77 | 48 | Double_t GetReconstructedPidCut() const { return fReconstructedPidCut; } |
4998becf | 49 | // ReconstructedPhos |
ef647350 | 50 | Char_t GetPhosClusterType() const { return fReconstructedPhosClusterType; } |
4998becf | 51 | Double_t GetReconstructedPhosClusterEnergyCut() const { return fReconstructedPhosClusterEnergyCut; } |
52 | Double_t GetReconstructedPhosSingleCellEnergyCut() const { return fReconstructedPhosSingleCellEnergyCut; } | |
393b8149 | 53 | Double_t GetPhosTrackDistanceCut() const { return fPhosTrackDistanceCut; } |
54 | Double_t GetPhosTrackDxCut() const { return fPhosTrackDxCut; } | |
55 | Double_t GetPhosTrackDzCut() const { return fPhosTrackDzCut; } | |
ef647350 | 56 | Double_t GetPhosTrackRCut() const { return fPhosTrackRCut; } |
57 | ||
58 | Double_t GetPhosBadDistanceCut() const { return fPhosBadDistanceCut; } | |
59 | ||
4998becf | 60 | // ReconstructedEmcal |
ef647350 | 61 | Char_t GetEmcalClusterType() const { return fReconstructedEmcalClusterType; } |
4998becf | 62 | Double_t GetReconstructedEmcalClusterEnergyCut() const { return fReconstructedEmcalClusterEnergyCut; } |
63 | Double_t GetReconstructedEmcalSingleCellEnergyCut() const { return fReconstructedEmcalSingleCellEnergyCut; } | |
393b8149 | 64 | Double_t GetEmcalTrackDistanceCut() const { return fEmcalTrackDistanceCut; } |
65 | Double_t GetEmcalTrackDxCut() const { return fEmcalTrackDxCut; } | |
66 | Double_t GetEmcalTrackDzCut() const { return fEmcalTrackDzCut; } | |
67 | ||
4998becf | 68 | // MonteCarlo |
69 | Double_t GetMonteCarloSingleChargedParticle() const { return fMonteCarloSingleChargedParticle; } | |
70 | Double_t GetMonteCarloNeutralParticle() const { return fMonteCarloNeutralParticle; } | |
ce546038 | 71 | // Hist: TTree and histogram info |
72 | Bool_t GetHistMakeTree() const { return fHistMakeTree; } | |
8ea99ab0 | 73 | Bool_t GetHistMakeTreeDeposit() const { return fHistMakeTreeDeposit; } |
0fa8c632 | 74 | // |
75 | Int_t GetHistNbinsMult() const { return fHistNbinsMult; } | |
76 | Double_t GetHistMinMult() const { return fHistMinMult; } | |
d2b935c4 | 77 | Double_t GetHistMaxMult() const { return fHistMaxMult; } |
0fa8c632 | 78 | // |
79 | Int_t GetHistNbinsTotEt() const { return fHistNbinsTotEt; } | |
80 | Double_t GetHistMinTotEt() const { return fHistMinTotEt; } | |
81 | Double_t GetHistMaxTotEt() const { return fHistMaxTotEt; } | |
82 | // | |
83 | Int_t GetHistNbinsParticleEt() const { return fHistNbinsParticleEt; } | |
84 | Double_t GetHistMinParticleEt() const { return fHistMinParticleEt; } | |
85 | Double_t GetHistMaxParticleEt() const { return fHistMaxParticleEt; } | |
86 | // | |
87 | Int_t GetHistNbinsParticlePt() const { return fHistNbinsParticlePt; } | |
d2b935c4 | 88 | Double_t GetHistMinParticlePt() const { return fHistMinParticlePt; } |
0fa8c632 | 89 | Double_t GetHistMaxParticlePt() const { return fHistMaxParticlePt; } |
393b8149 | 90 | |
ef647350 | 91 | |
92 | ||
537e541d | 93 | Short_t GetDetectorPhos() const { return fgkDetectorPhos; } |
94 | Short_t GetDetectorEmcal() const { return fgkDetectorEmcal; } | |
b2c10007 | 95 | |
96 | Double_t GetPrimaryVertexCutXY() const { return fPrimaryVertexCutXY; } | |
97 | Double_t GetPrimaryVertexCutZ() const { return fPrimaryVertexCutZ; } | |
98 | ||
2fbf38ac | 99 | |
4998becf | 100 | // Setters |
101 | // Common | |
102 | void SetCommonEtaCut(const Double_t val) { fCommonEtaCut = val; } | |
103 | void SetCommonClusterEnergyCut(const Double_t val) { fCommonClusterEnergyCut = val; } | |
104 | void SetCommonTrackPtCut(const Double_t val) { fCommonTrackPtCut = val; } | |
105 | void SetCommonSingleCell(const Int_t val) { fCommonSingleCell = val;} | |
106 | // GeometryPhos | |
107 | void SetGeometryPhosEtaAccCut(const Double_t val) { fGeometryPhosEtaAccCut = val; } | |
108 | void SetGeometryPhosPhiAccMinCut(const Double_t val) { fGeometryPhosPhiAccMinCut = val; } | |
109 | void SetGeometryPhosPhiAccMaxCut(const Double_t val) { fGeometryPhosPhiAccMaxCut = val; } | |
110 | void SetGeometryPhosDetectorRadius(const Double_t val) { fGeometryPhosDetectorRadius = val; } | |
111 | // GeometryEmcal | |
112 | void SetGeometryEmcalEtaAccCut(const Double_t val) { fGeometryEmcalEtaAccCut = val; } | |
113 | void SetGeometryEmcalPhiAccMinCut(const Double_t val) { fGeometryEmcalPhiAccMinCut = val; } | |
114 | void SetGeometryEmcalPhiAccMaxCut(const Double_t val) { fGeometryEmcalPhiAccMaxCut = val; } | |
115 | void SetGeometryEmcalDetectorRadius(const Double_t val) { fGeometryEmcalDetectorRadius = val; } | |
116 | // Reconstructed | |
117 | void SetReconstructedVertexXCut(const Double_t val) { fReconstructedVertexXCut = val; } | |
118 | void SetReconstructedVertexYCut(const Double_t val) { fReconstructedVertexYCut = val; } | |
119 | void SetReconstructedVertexZCut(const Double_t val) { fReconstructedVertexZCut = val; } | |
120 | void SetReconstructedIPxyCut(const Double_t val) { fReconstructedIPxyCut = val; } | |
121 | void SetReconstructedIPzCut(const Double_t val) { fReconstructedIPzCut = val; } | |
122 | void SetReconstructedNTpcClustersCut(const Int_t val) { fReconstructedNTpcClustersCut = val; } | |
123 | void SetReconstructedNItsClustersCut(const Int_t val) { fReconstructedNItsClustersCut = val; } | |
e16aac77 | 124 | void SetReconstrucedPidCut(const Double_t val) { fReconstructedPidCut = val; } |
4998becf | 125 | // ReconstructedPhos |
126 | void SetReconstructedPhosClusterType(const Char_t val) { fReconstructedPhosClusterType = val; } | |
127 | void SetReconstructedPhosClusterEnergyCut(const Double_t val) { fReconstructedPhosClusterEnergyCut = val; } | |
128 | void SetReconstructedPhosSingleCellEnergyCut(const Double_t val) { fReconstructedPhosSingleCellEnergyCut = val; } | |
393b8149 | 129 | void SetPhosTrackDistanceCut(const Double_t val) { fPhosTrackDistanceCut = val; } |
130 | void SetPhosTrackDxCut(const Double_t val) { fPhosTrackDxCut = val; } | |
131 | void SetPhosTrackDzCut(const Double_t val) { fPhosTrackDzCut = val; } | |
b2c10007 | 132 | void SetPhosTrackRCut(const Double_t val) { std::cout << "Setting: " << val << std::endl; fPhosTrackRCut = val; } |
ef647350 | 133 | |
134 | void SetPhosBadDistanceCut(const Double_t val) { fPhosBadDistanceCut = val; } | |
393b8149 | 135 | |
4998becf | 136 | // ReconstructedEmcal |
137 | void SetReconstructedEmcalClusterType(const Char_t val) { fReconstructedEmcalClusterType = val; } | |
138 | void SetReconstructedEmcalClusterEnergyCut(const Double_t val) { fReconstructedEmcalClusterEnergyCut = val; } | |
139 | void SetReconstructedEmcalSingleCellEnergyCut(const Double_t val) { fReconstructedEmcalSingleCellEnergyCut = val; } | |
393b8149 | 140 | void SetEmcalTrackDistanceCut(const Double_t val) { fEmcalTrackDistanceCut = val; } |
4998becf | 141 | // MonteCarlo |
142 | void SetMonteCarloSingleChargedParticle(const Double_t val) { fMonteCarloSingleChargedParticle = val; } | |
143 | void SetMonteCarloNeutralParticle(const Double_t val) { fMonteCarloNeutralParticle = val; } | |
ce546038 | 144 | // Hist: TTree and histogram info |
145 | void SetHistMakeTree(const Bool_t val) { fHistMakeTree = val; } | |
8ea99ab0 | 146 | void SetHistMakeTreeDeposit(const Bool_t val) { fHistMakeTreeDeposit = val; } |
0fa8c632 | 147 | // |
148 | void SetHistNbinsMult(const Int_t val) { fHistNbinsMult = val; } | |
149 | void SetHistMinMult(const Double_t val) { fHistMinMult = val; } | |
150 | void SetHistMaxMult(const Double_t val) { fHistMaxMult = val; } | |
151 | // | |
152 | void SetHistNbinsTotEt(const Int_t val) { fHistNbinsTotEt = val; } | |
153 | void SetHistMinTotEt(const Double_t val) { fHistMinTotEt = val; } | |
154 | void SetHistMaxTotEt(const Double_t val) { fHistMaxTotEt = val; } | |
155 | // | |
156 | void SetHistNbinsParticleEt(const Int_t val) { fHistNbinsParticleEt = val; } | |
157 | void SetHistMinParticleEt(const Double_t val) { fHistMinParticleEt = val; } | |
158 | void SetHistMaxParticleEt(const Double_t val) { fHistMaxParticleEt = val; } | |
159 | // | |
160 | void SetHistNbinsParticlePt(const Int_t val) { fHistNbinsParticlePt = val; } | |
161 | void SetHistMinParticlePt(const Double_t val) { fHistMinParticlePt = val; } | |
162 | void SetHistMaxParticlePt(const Double_t val) { fHistMaxParticlePt = val; } | |
163 | ||
b2c10007 | 164 | void SetPrimaryVertexCutXY(const Double_t val) { fPrimaryVertexCutXY = val; } |
165 | void SetPrimaryVertexCutZ(const Double_t val) { fPrimaryVertexCutZ = val; } | |
166 | ||
167 | ||
168 | ||
4998becf | 169 | protected: |
2fbf38ac | 170 | |
4998becf | 171 | // Common |
172 | Double_t fCommonEtaCut; // Eta cut | |
173 | Double_t fCommonClusterEnergyCut; // Cluster Energy cut | |
174 | Double_t fCommonTrackPtCut; // Track Pt | |
175 | Int_t fCommonSingleCell; // Single Cell (1) | |
393b8149 | 176 | Double_t fEmcalTrackDistanceCut; // EMCal track distance |
177 | Double_t fEmcalTrackDxCut; // EMCal track distance in x | |
178 | Double_t fEmcalTrackDzCut; // EMCal track distance in z | |
179 | ||
180 | Double_t fPhosTrackDistanceCut; // PHOS track distance | |
181 | Double_t fPhosTrackDxCut; // PHOS track distance in x | |
182 | Double_t fPhosTrackDzCut; // PHOS track distance in z | |
ef647350 | 183 | Double_t fPhosTrackRCut; // PHOS track distance in r (using the parametrized track distance) |
184 | ||
185 | Double_t fPhosBadDistanceCut; // PHOS distance to bad channel | |
186 | ||
4998becf | 187 | // GeometryPhos |
188 | Double_t fGeometryPhosEtaAccCut; // PHOS Eta Acc cut | |
189 | Double_t fGeometryPhosPhiAccMinCut; // PHOS Phi Acc Min cut | |
190 | Double_t fGeometryPhosPhiAccMaxCut; // PHOS Phi Acc Max cut | |
191 | Double_t fGeometryPhosDetectorRadius; // PHOS Detector Radius | |
2fbf38ac | 192 | |
4998becf | 193 | // GeometryEmcal |
194 | Double_t fGeometryEmcalEtaAccCut; // EMCal Eta Acc cut | |
195 | Double_t fGeometryEmcalPhiAccMinCut; // EMCal Phi Acc Min cut | |
196 | Double_t fGeometryEmcalPhiAccMaxCut; // EMCal Phi Acc Max cut | |
197 | Double_t fGeometryEmcalDetectorRadius; // EMCal Detector Radius | |
198 | ||
199 | // Reconstructed | |
200 | Double_t fReconstructedVertexXCut; // vertex X cut | |
201 | Double_t fReconstructedVertexYCut; // vertex Y cut | |
202 | Double_t fReconstructedVertexZCut; // vertex Z cut | |
203 | Double_t fReconstructedIPxyCut; // IP xy cut | |
204 | Double_t fReconstructedIPzCut; // IP z cut | |
205 | Int_t fReconstructedNTpcClustersCut; // # of TPC clusters cut | |
206 | Int_t fReconstructedNItsClustersCut; // # of ITS clusters cut | |
e16aac77 | 207 | Double_t fReconstructedPidCut; // cut on pid prob |
4998becf | 208 | |
209 | // ReconstructedPhos | |
210 | Char_t fReconstructedPhosClusterType; // PHOS cluster type | |
211 | Double_t fReconstructedPhosClusterEnergyCut; // PHOS cluster energy | |
212 | Double_t fReconstructedPhosSingleCellEnergyCut; // PHOS single cell energy | |
393b8149 | 213 | Double_t fReconstructedPhosTrackDistanceTightCut; // PHOS track distance |
214 | Double_t fReconstructedPhosTrackDistanceMediumCut; // PHOS track distance | |
215 | Double_t fReconstructedPhosTrackDistanceLooseCut; // PHOS track distance | |
4998becf | 216 | |
217 | // ReconstructedEmcal | |
218 | Char_t fReconstructedEmcalClusterType; // EMCal cluster type | |
219 | Double_t fReconstructedEmcalClusterEnergyCut; // EMCal cluster energy | |
220 | Double_t fReconstructedEmcalSingleCellEnergyCut; // EMCal single cell energy | |
393b8149 | 221 | Double_t fReconstructedEmcalTrackDistanceTightCut; // EMCAL track distance |
222 | Double_t fReconstructedEmcalTrackDistanceMediumCut; // EMCAL track distance | |
223 | Double_t fReconstructedEmcalTrackDistanceLooseCut; // EMCAL track distance | |
4998becf | 224 | |
225 | // MonteCarlo | |
226 | Double_t fMonteCarloSingleChargedParticle; // MC charged | |
227 | Double_t fMonteCarloNeutralParticle; // MC neutral | |
228 | ||
ce546038 | 229 | // Hist: TTree and histogram info |
230 | Bool_t fHistMakeTree; // whether to make a summary tree or not | |
8ea99ab0 | 231 | Bool_t fHistMakeTreeDeposit; // whether to make a summary tree of energy deposit or not |
232 | ||
0fa8c632 | 233 | Int_t fHistNbinsMult; // number of bins in multiplicity histograms |
234 | Double_t fHistMinMult; // minimum value in multiplicity histograms | |
235 | Double_t fHistMaxMult; // maximum value in multiplicity histograms | |
236 | ||
237 | Int_t fHistNbinsTotEt; // number of bins in event Et histograms | |
238 | Double_t fHistMinTotEt; // minimum value in event Et histograms | |
239 | Double_t fHistMaxTotEt; // maximum value in event Et histograms | |
240 | ||
241 | Int_t fHistNbinsParticleEt; // number of bins in particle Et histograms | |
242 | Double_t fHistMinParticleEt; // minimum value in particle Et histograms | |
243 | Double_t fHistMaxParticleEt; // maximum value in particle Et histograms | |
244 | ||
245 | Int_t fHistNbinsParticlePt; // number of bins in particle Pt histograms | |
246 | Double_t fHistMinParticlePt; // minimum value in particle Pt histograms | |
247 | Double_t fHistMaxParticlePt; // maximum value in particle Pt histograms | |
ce546038 | 248 | |
393b8149 | 249 | // Detector definition |
537e541d | 250 | static const Short_t fgkDetectorPhos = -1; // PHOS |
251 | static const Short_t fgkDetectorEmcal = 1; // EMCAL | |
b2c10007 | 252 | |
253 | Double_t fPrimaryVertexCutXY; // Cut to decide if particle is from primary vertex | |
254 | Double_t fPrimaryVertexCutZ; // Cut to decide if particle is from primary vertex | |
255 | ||
393b8149 | 256 | |
4998becf | 257 | private: |
258 | //Declare private to avoid compilation warning | |
259 | AliAnalysisEtCuts & operator = (const AliAnalysisEtCuts & g) ;//copy assignment | |
260 | AliAnalysisEtCuts(const AliAnalysisEtCuts & g) ; // copy ctor | |
261 | ||
e573e46d | 262 | ClassDef(AliAnalysisEtCuts, 1); |
2fbf38ac | 263 | }; |
264 | ||
4998becf | 265 | #endif // ALIANALYSISETCUTS_H |