]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/totEt/AliAnalysisEtCuts.h
Fix in cluster coordinates calculation
[u/mrichter/AliRoot.git] / PWGLF / totEt / AliAnalysisEtCuts.h
CommitLineData
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 14class 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 257private:
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