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
8 //*-- Authors: Oystein Djuvsland (Bergen), David Silvermyr (ORNL)
9 //_________________________________________________________________________
14 class AliAnalysisEtCuts : public TNamed
19 virtual ~AliAnalysisEtCuts();
21 virtual void SetPbPbDefaults();
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; }
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; }
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; }
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; }
48 Double_t GetReconstructedPidCut() const { return fReconstructedPidCut; }
50 Char_t GetPhosClusterType() const { return fReconstructedPhosClusterType; }
51 Double_t GetReconstructedPhosClusterEnergyCut() const { return fReconstructedPhosClusterEnergyCut; }
52 Double_t GetReconstructedPhosSingleCellEnergyCut() const { return fReconstructedPhosSingleCellEnergyCut; }
53 Double_t GetPhosTrackDistanceCut() const { return fPhosTrackDistanceCut; }
54 Double_t GetPhosTrackDxCut() const { return fPhosTrackDxCut; }
55 Double_t GetPhosTrackDzCut() const { return fPhosTrackDzCut; }
56 Double_t GetPhosTrackRCut() const { return fPhosTrackRCut; }
58 Double_t GetPhosBadDistanceCut() const { return fPhosBadDistanceCut; }
61 Char_t GetEmcalClusterType() const { return fReconstructedEmcalClusterType; }
62 Double_t GetReconstructedEmcalClusterEnergyCut() const { return fReconstructedEmcalClusterEnergyCut; }
63 Double_t GetReconstructedEmcalSingleCellEnergyCut() const { return fReconstructedEmcalSingleCellEnergyCut; }
64 Double_t GetEmcalTrackDistanceCut() const { return fEmcalTrackDistanceCut; }
65 Double_t GetEmcalTrackDxCut() const { return fEmcalTrackDxCut; }
66 Double_t GetEmcalTrackDzCut() const { return fEmcalTrackDzCut; }
69 Double_t GetMonteCarloSingleChargedParticle() const { return fMonteCarloSingleChargedParticle; }
70 Double_t GetMonteCarloNeutralParticle() const { return fMonteCarloNeutralParticle; }
71 // Hist: TTree and histogram info
72 Bool_t GetHistMakeTree() const { return fHistMakeTree; }
73 Bool_t GetHistMakeTreeDeposit() const { return fHistMakeTreeDeposit; }
75 Int_t GetHistNbinsMult() const { return fHistNbinsMult; }
76 Double_t GetHistMinMult() const { return fHistMinMult; }
77 Double_t GetHistMaxMult() const { return fHistMaxMult; }
79 Int_t GetHistNbinsTotEt() const { return fHistNbinsTotEt; }
80 Double_t GetHistMinTotEt() const { return fHistMinTotEt; }
81 Double_t GetHistMaxTotEt() const { return fHistMaxTotEt; }
83 Int_t GetHistNbinsParticleEt() const { return fHistNbinsParticleEt; }
84 Double_t GetHistMinParticleEt() const { return fHistMinParticleEt; }
85 Double_t GetHistMaxParticleEt() const { return fHistMaxParticleEt; }
87 Int_t GetHistNbinsParticlePt() const { return fHistNbinsParticlePt; }
88 Double_t GetHistMinParticlePt() const { return fHistMinParticlePt; }
89 Double_t GetHistMaxParticlePt() const { return fHistMaxParticlePt; }
93 Short_t GetDetectorPhos() const { return fgkDetectorPhos; }
94 Short_t GetDetectorEmcal() const { return fgkDetectorEmcal; }
96 Double_t GetPrimaryVertexCutXY() const { return fPrimaryVertexCutXY; }
97 Double_t GetPrimaryVertexCutZ() const { return fPrimaryVertexCutZ; }
102 void SetCommonEtaCut(Double_t val) { fCommonEtaCut = val; }
103 void SetCommonClusterEnergyCut(Double_t val) { fCommonClusterEnergyCut = val; }
104 void SetCommonTrackPtCut(Double_t val) { fCommonTrackPtCut = val; }
105 void SetCommonSingleCell(Int_t val) { fCommonSingleCell = val;}
107 void SetGeometryPhosEtaAccCut(Double_t val) { fGeometryPhosEtaAccCut = val; }
108 void SetGeometryPhosPhiAccMinCut(Double_t val) { fGeometryPhosPhiAccMinCut = val; }
109 void SetGeometryPhosPhiAccMaxCut(Double_t val) { fGeometryPhosPhiAccMaxCut = val; }
110 void SetGeometryPhosDetectorRadius(Double_t val) { fGeometryPhosDetectorRadius = val; }
112 void SetGeometryEmcalEtaAccCut(Double_t val) { fGeometryEmcalEtaAccCut = val; }
113 void SetGeometryEmcalPhiAccMinCut(Double_t val) { fGeometryEmcalPhiAccMinCut = val; }
114 void SetGeometryEmcalPhiAccMaxCut(Double_t val) { fGeometryEmcalPhiAccMaxCut = val; }
115 void SetGeometryEmcalDetectorRadius(Double_t val) { fGeometryEmcalDetectorRadius = val; }
117 void SetReconstructedVertexXCut(Double_t val) { fReconstructedVertexXCut = val; }
118 void SetReconstructedVertexYCut(Double_t val) { fReconstructedVertexYCut = val; }
119 void SetReconstructedVertexZCut(Double_t val) { fReconstructedVertexZCut = val; }
120 void SetReconstructedIPxyCut(Double_t val) { fReconstructedIPxyCut = val; }
121 void SetReconstructedIPzCut(Double_t val) { fReconstructedIPzCut = val; }
122 void SetReconstructedNTpcClustersCut(Int_t val) { fReconstructedNTpcClustersCut = val; }
123 void SetReconstructedNItsClustersCut(Int_t val) { fReconstructedNItsClustersCut = val; }
124 void SetReconstrucedPidCut(Double_t val) { fReconstructedPidCut = val; }
126 void SetReconstructedPhosClusterType(Char_t val) { fReconstructedPhosClusterType = val; }
127 void SetReconstructedPhosClusterEnergyCut(Double_t val) { fReconstructedPhosClusterEnergyCut = val; }
128 void SetReconstructedPhosSingleCellEnergyCut(Double_t val) { fReconstructedPhosSingleCellEnergyCut = val; }
129 void SetPhosTrackDistanceCut(Double_t val) { fPhosTrackDistanceCut = val; }
130 void SetPhosTrackDxCut(Double_t val) { fPhosTrackDxCut = val; }
131 void SetPhosTrackDzCut(Double_t val) { fPhosTrackDzCut = val; }
132 void SetPhosTrackRCut(Double_t val) { std::cout << "Setting: " << val << std::endl; fPhosTrackRCut = val; }
134 void SetPhosBadDistanceCut(Double_t val) { fPhosBadDistanceCut = val; }
136 // ReconstructedEmcal
137 void SetReconstructedEmcalClusterType(Char_t val) { fReconstructedEmcalClusterType = val; }
138 void SetReconstructedEmcalClusterEnergyCut(Double_t val) { fReconstructedEmcalClusterEnergyCut = val; }
139 void SetReconstructedEmcalSingleCellEnergyCut(Double_t val) { fReconstructedEmcalSingleCellEnergyCut = val; }
140 void SetEmcalTrackDistanceCut(Double_t val) { fEmcalTrackDistanceCut = val; }
142 void SetMonteCarloSingleChargedParticle(Double_t val) { fMonteCarloSingleChargedParticle = val; }
143 void SetMonteCarloNeutralParticle(Double_t val) { fMonteCarloNeutralParticle = val; }
144 // Hist: TTree and histogram info
145 void SetHistMakeTree(Bool_t val) { fHistMakeTree = val; }
146 void SetHistMakeTreeDeposit(Bool_t val) { fHistMakeTreeDeposit = val; }
148 void SetHistNbinsMult(Int_t val) { fHistNbinsMult = val; }
149 void SetHistMinMult(Double_t val) { fHistMinMult = val; }
150 void SetHistMaxMult(Double_t val) { fHistMaxMult = val; }
152 void SetHistNbinsTotEt(Int_t val) { fHistNbinsTotEt = val; }
153 void SetHistMinTotEt(Double_t val) { fHistMinTotEt = val; }
154 void SetHistMaxTotEt(Double_t val) { fHistMaxTotEt = val; }
156 void SetHistNbinsParticleEt(Int_t val) { fHistNbinsParticleEt = val; }
157 void SetHistMinParticleEt(Double_t val) { fHistMinParticleEt = val; }
158 void SetHistMaxParticleEt(Double_t val) { fHistMaxParticleEt = val; }
160 void SetHistNbinsParticlePt(Int_t val) { fHistNbinsParticlePt = val; }
161 void SetHistMinParticlePt(Double_t val) { fHistMinParticlePt = val; }
162 void SetHistMaxParticlePt(Double_t val) { fHistMaxParticlePt = val; }
164 void SetPrimaryVertexCutXY(Double_t val) { fPrimaryVertexCutXY = val; }
165 void SetPrimaryVertexCutZ(Double_t val) { fPrimaryVertexCutZ = val; }
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)
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
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
183 Double_t fPhosTrackRCut; // PHOS track distance in r (using the parametrized track distance)
185 Double_t fPhosBadDistanceCut; // PHOS distance to bad channel
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
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
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
207 Double_t fReconstructedPidCut; // cut on pid prob
210 Char_t fReconstructedPhosClusterType; // PHOS cluster type
211 Double_t fReconstructedPhosClusterEnergyCut; // PHOS cluster energy
212 Double_t fReconstructedPhosSingleCellEnergyCut; // PHOS single cell energy
213 Double_t fReconstructedPhosTrackDistanceTightCut; // PHOS track distance
214 Double_t fReconstructedPhosTrackDistanceMediumCut; // PHOS track distance
215 Double_t fReconstructedPhosTrackDistanceLooseCut; // PHOS track distance
217 // ReconstructedEmcal
218 Char_t fReconstructedEmcalClusterType; // EMCal cluster type
219 Double_t fReconstructedEmcalClusterEnergyCut; // EMCal cluster energy
220 Double_t fReconstructedEmcalSingleCellEnergyCut; // EMCal single cell energy
221 Double_t fReconstructedEmcalTrackDistanceTightCut; // EMCAL track distance
222 Double_t fReconstructedEmcalTrackDistanceMediumCut; // EMCAL track distance
223 Double_t fReconstructedEmcalTrackDistanceLooseCut; // EMCAL track distance
226 Double_t fMonteCarloSingleChargedParticle; // MC charged
227 Double_t fMonteCarloNeutralParticle; // MC neutral
229 // Hist: TTree and histogram info
230 Bool_t fHistMakeTree; // whether to make a summary tree or not
231 Bool_t fHistMakeTreeDeposit; // whether to make a summary tree of energy deposit or not
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
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
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
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
249 // Detector definition
250 static const Short_t fgkDetectorPhos = -1; // PHOS
251 static const Short_t fgkDetectorEmcal = 1; // EMCAL
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
258 //Declare private to avoid compilation warning
259 AliAnalysisEtCuts & operator = (const AliAnalysisEtCuts & g) ;//copy assignment
260 AliAnalysisEtCuts(const AliAnalysisEtCuts & g) ; // copy ctor
262 ClassDef(AliAnalysisEtCuts, 1);
265 #endif // ALIANALYSISETCUTS_H