]>
Commit | Line | Data |
---|---|---|
ac6a3f1e | 1 | #ifndef AliAnalysisTaskFullpAJets_H |
2 | #define AliAnalysisTaskFullpAJets_H | |
3 | ||
d812e269 | 4 | class TString; |
ac6a3f1e | 5 | class TH1D; |
6 | class TH2D; | |
7 | class TH3D; | |
8 | class TList; | |
9 | class TProfile; | |
10 | class TProfile2D; | |
11 | class TProfile3D; | |
12 | class TClonesArray; | |
c6202663 | 13 | class TObjArray; |
14 | class TLorentzVector; | |
ac6a3f1e | 15 | class AliESDtrackCuts; |
c6202663 | 16 | class AliEmcalJet; |
08b981da | 17 | class AliVEvent; |
c6202663 | 18 | class AliEMCALGeometry; |
08b981da | 19 | class AliEMCALRecoUtils; |
20 | class AliVCaloCells; | |
24a61909 | 21 | class AliPicoTrack; |
ac6a3f1e | 22 | |
23 | #ifndef ALIANALYSISTASKSE_H | |
24 | #include "AliAnalysisTaskSE.h" | |
25 | #endif | |
26 | ||
27 | class AliAnalysisTaskFullpAJets : public AliAnalysisTaskSE | |
28 | { | |
c6202663 | 29 | // AlipAJetData Helper Class |
30 | class AlipAJetData | |
31 | { | |
32 | public: | |
33 | AlipAJetData(); | |
34 | AlipAJetData(const char *name, Bool_t isFull, Int_t nEntries); | |
35 | virtual ~AlipAJetData(); | |
36 | ||
37 | // User Defined Sub-Routines | |
38 | void InitializeJetData(TClonesArray *jetList, Int_t nEntries); | |
39 | ||
40 | // Setters | |
41 | void SetName(const char *name); | |
42 | void SetIsJetsFull(Bool_t isFull); | |
43 | void SetTotalEntries(Int_t nEntries); | |
44 | void SetTotalJets(Int_t nJets); | |
45 | void SetTotalSignalJets(Int_t nSignalJets); | |
46 | void SetSignalCut(Double_t Pt); | |
47 | void SetLeading(Int_t index, Double_t Pt); | |
48 | void SetSubLeading(Int_t index, Double_t Pt); | |
49 | void SetJetIndex(Int_t index, Int_t At); | |
50 | void SetSignalJetIndex(Int_t index, Int_t At); | |
51 | void SetIsJetInArray(Bool_t isInArray, Int_t At); | |
52 | void SetAreaCutFraction(Double_t areaFraction); | |
53 | void SetJetR(Double_t jetR); | |
91d0893e | 54 | void SetNEF(Double_t nef); |
8daeee93 | 55 | void SetSignalTrackPtBias(Bool_t chargedBias); |
c6202663 | 56 | |
57 | // Getters | |
58 | Int_t GetTotalEntries(); | |
59 | Int_t GetTotalJets(); | |
60 | Int_t GetTotalSignalJets(); | |
61 | Double_t GetSignalCut(); | |
62 | Int_t GetLeadingIndex(); | |
63 | Double_t GetLeadingPt(); | |
64 | Int_t GetSubLeadingIndex(); | |
65 | Double_t GetSubLeadingPt(); | |
66 | Int_t GetJetIndex(Int_t At); | |
67 | Int_t GetSignalJetIndex(Int_t At); | |
68 | Bool_t GetIsJetInArray(Int_t At); | |
20f2d13a | 69 | Double_t GetJetMaxChargedPt(Int_t At); |
91d0893e | 70 | Double_t GetNEF(); |
c6202663 | 71 | |
53c56e05 | 72 | Int_t* GetJets() const {return fJetsIndex;} //! |
73 | Int_t* GetSignalJets() const {return fJetsSCIndex;} //! | |
c6202663 | 74 | |
75 | private: | |
76 | ||
77 | // Variables | |
53c56e05 | 78 | const char *fName; //! |
c6202663 | 79 | Bool_t fIsJetsFull; |
80 | Int_t fnTotal; | |
81 | Int_t fnJets; | |
82 | Int_t fnJetsSC; | |
83 | ||
84 | Double_t fJetR; | |
85 | Double_t fSignalPt; | |
86 | Double_t fAreaCutFrac; | |
91d0893e | 87 | Double_t fNEF; |
8daeee93 | 88 | Bool_t fSignalTrackBias; |
c6202663 | 89 | |
90 | Int_t fPtMaxIndex; | |
91 | Double_t fPtMax; | |
92 | Int_t fPtSubLeadingIndex; | |
93 | Double_t fPtSubLeading; | |
94 | ||
53c56e05 | 95 | Int_t *fJetsIndex; //! |
96 | Int_t *fJetsSCIndex; //! | |
97 | Bool_t *fIsJetInArray; //! | |
20f2d13a | 98 | Double_t *fJetMaxChargedPt; //! |
c6202663 | 99 | }; |
100 | ||
101 | // AlipAJetHistos Helper Class | |
102 | class AlipAJetHistos | |
103 | { | |
104 | public: | |
105 | AlipAJetHistos(); | |
106 | AlipAJetHistos(const char *name); | |
8daeee93 | 107 | AlipAJetHistos(const char *name, const char *centag, Bool_t doNEF=kFALSE); |
108 | ||
c6202663 | 109 | virtual ~AlipAJetHistos(); |
110 | ||
111 | // User Defined Sub-Routines | |
112 | void Init(); | |
113 | void FillRho(Double_t eventCentrality, Double_t rho); | |
114 | void FillBSJS(Double_t eventCentrality, Double_t rho, Double_t signalCut, TClonesArray *jetList, Int_t *indexJetList, Int_t nIndexJetList); | |
115 | void FillDeltaPt(Double_t eventCentrality, Double_t rho, Double_t jetRadius, Double_t *RCArray, Int_t nRC); | |
116 | void FillDeltaPtSignal(Double_t eventCentrality, Double_t rho, Double_t jetRadius, Double_t *RCArray, Int_t nRC); | |
7acc3e04 | 117 | void FillDeltaPtNColl(Double_t eventCentrality, Double_t rho, Double_t jetRadius, Double_t *RCArray, Int_t nRC); |
c6202663 | 118 | void FillBackgroundFluctuations(Double_t eventCentrality, Double_t rho, Double_t jetRadius); |
119 | void FillLeadingJetPtRho(Double_t jetPt, Double_t rho); | |
8daeee93 | 120 | void DoNEFQAPlots(Bool_t doNEFAna); |
08b981da | 121 | void DoNEFAnalysis(Double_t nefCut, Double_t signalCut, TClonesArray *jetList, Int_t *indexJetList, Int_t nIndexJetList, TObjArray *clusterList, TClonesArray *orgClusterList, AliVEvent *event, AliEMCALGeometry *geometry, AliEMCALRecoUtils *recoUtils, AliVCaloCells *cells); |
e864d416 | 122 | void FillMiscJetStats(TClonesArray *jetList, Int_t *indexJetList, Int_t nIndexJetList, TClonesArray *trackList, TClonesArray *clusterList); |
c6202663 | 123 | |
124 | // Setters | |
125 | void SetName(const char *name); | |
126 | void SetCentralityTag(const char *name); | |
127 | void SetCentralityRange(Int_t bins, Double_t low, Double_t up); | |
128 | void SetPtRange(Int_t bins, Double_t low, Double_t up); | |
129 | void SetRhoPtRange(Int_t bins, Double_t low, Double_t up); | |
130 | void SetDeltaPtRange(Int_t bins, Double_t low, Double_t up); | |
131 | void SetBackgroundFluctuationsPtRange(Int_t bins, Double_t low, Double_t up); | |
132 | void SetLeadingJetPtRange(Int_t bins, Double_t low, Double_t up); | |
20f2d13a | 133 | void SetLeadingChargedTrackPtRange(Int_t bins, Double_t low, Double_t up); |
91d0893e | 134 | void SetNEFRange(Int_t bins, Double_t low, Double_t up); |
3e43a01f | 135 | void SetSignalTrackPtBias(Bool_t chargedBias); |
136 | ||
c6202663 | 137 | // User Defined Functions |
53c56e05 | 138 | TList* GetOutputHistos(); //! |
7acc3e04 | 139 | Double_t GetRho(); |
c6202663 | 140 | |
141 | private: | |
53c56e05 | 142 | TList *fOutput; //! Output list |
c6202663 | 143 | |
144 | // Histograms | |
145 | // This set of Histograms is for filling the Rho Spectral distributions | |
146 | TH1D *fh020Rho; //! | |
147 | TH1D *fh80100Rho; //! | |
148 | TH1D *fhRho; //! | |
149 | TH2D *fhRhoCen; //! | |
150 | ||
151 | // This set of Histograms is for filling the Background Subtracted Jet Spectra | |
152 | TH1D *fh020BSPt; //! | |
153 | TH1D *fh80100BSPt; //! | |
154 | TH1D *fhBSPt; //! | |
155 | TH2D *fhBSPtCen; //! | |
20f2d13a | 156 | //TH3D *fhBSPtCenLCT; //! |
c6202663 | 157 | |
158 | // This set of Histograms is for filling the Background Subtracted Signal Jet Spectra | |
159 | TH1D *fh020BSPtSignal; //! | |
160 | TH1D *fh80100BSPtSignal; //! | |
161 | TH1D *fhBSPtSignal; //! | |
162 | TH2D *fhBSPtCenSignal; //! | |
163 | ||
164 | // This set of Histograms is for filling Delta Pt where the RC are at least 2R away from the leading Signal | |
165 | TH1D *fh020DeltaPt; //! | |
166 | TH1D *fh80100DeltaPt; //! | |
167 | TH1D *fhDeltaPt; //! | |
168 | TH2D *fhDeltaPtCen; //! | |
169 | ||
170 | // This set of Histograms is for filling Delta Pt where the RC have to spatial restrictions | |
171 | TH1D *fh020DeltaPtSignal; //! | |
172 | TH1D *fh80100DeltaPtSignal; //! | |
173 | TH1D *fhDeltaPtSignal; //! | |
174 | TH2D *fhDeltaPtCenSignal; //! | |
7acc3e04 | 175 | |
176 | // This set of Histograms is for filling Delta Pt with NColl | |
177 | TH1D *fh020DeltaPtNColl; //! | |
178 | TH1D *fh80100DeltaPtNColl; //! | |
179 | TH1D *fhDeltaPtNColl; //! | |
180 | TH2D *fhDeltaPtCenNColl; //! | |
c6202663 | 181 | |
182 | // This set of Histograms is for filling Background Fluctuations Spectra | |
183 | TH1D *fh020BckgFlucPt; //! | |
184 | TH1D *fh80100BckgFlucPt; //! | |
185 | TH1D *fhBckgFlucPt; //! | |
186 | TH2D *fhBckgFlucPtCen; //! | |
187 | ||
188 | // Profiles | |
189 | TProfile *fpRho; //! | |
190 | TProfile *fpLJetRho; //! | |
e864d416 | 191 | TH2D *fhJetConstituentPt; //! |
192 | TH2D *fhJetPtArea; //! | |
193 | ||
8daeee93 | 194 | // Histograms for Neutral Energy Fraction |
195 | TList *fNEFOutput; //! NEF QA Plots | |
c6202663 | 196 | |
8daeee93 | 197 | TH1D *fhNEF; //! |
198 | TH1D *fhNEFSignal; //! | |
08b981da | 199 | TH2D *fhNEFJetPt; //! |
e864d416 | 200 | TH2D *fhNEFJetPtSignal; //! |
8daeee93 | 201 | |
202 | TH2D *fhNEFEtaPhi; //! | |
203 | TH2D *fhNEFEtaPhiSignal; //! | |
08b981da | 204 | TH3D *fhEtaPhiNEF; //! |
205 | ||
8daeee93 | 206 | TH2D *fhNEFTotalMult; //! |
207 | TH2D *fhNEFTotalMultSignal; //! | |
8daeee93 | 208 | |
209 | TH2D *fhNEFNeutralMult; //! | |
210 | TH2D *fhNEFNeutralMultSignal; //! | |
8daeee93 | 211 | |
212 | TH1D *fhClusterShapeAll; //! | |
36cb7ae2 | 213 | TH2D *fhClusterPtCellAll; //! |
08b981da | 214 | TH3D *fhNEFJetPtFCross; //! |
215 | TH3D *fhNEFZLeadingFCross; //! | |
85b11075 | 216 | TH3D *fhNEFTimeCellCount; //! |
217 | TH3D *fhNEFTimeDeltaTime; //! | |
8daeee93 | 218 | |
c6202663 | 219 | // Variables |
53c56e05 | 220 | const char *fName; //! |
221 | const char *fCentralityTag; //! | |
c6202663 | 222 | |
223 | Int_t fCentralityBins; | |
224 | Double_t fCentralityLow; | |
225 | Double_t fCentralityUp; | |
226 | ||
227 | Int_t fPtBins; | |
228 | Double_t fPtLow; | |
229 | Double_t fPtUp; | |
230 | ||
231 | Int_t fRhoPtBins; | |
232 | Double_t fRhoPtLow; | |
233 | Double_t fRhoPtUp; | |
234 | ||
235 | Int_t fDeltaPtBins; | |
236 | Double_t fDeltaPtLow; | |
237 | Double_t fDeltaPtUp; | |
238 | ||
239 | Int_t fBckgFlucPtBins; | |
240 | Double_t fBckgFlucPtLow; | |
241 | Double_t fBckgFlucPtUp; | |
242 | ||
243 | Int_t fLJetPtBins; | |
244 | Double_t fLJetPtLow; | |
245 | Double_t fLJetPtUp; | |
7acc3e04 | 246 | |
247 | Double_t fRhoValue; | |
20f2d13a | 248 | |
249 | Int_t fLChargedTrackPtBins; | |
250 | Double_t fLChargedTrackPtLow; | |
251 | Double_t fLChargedTrackPtUp; | |
91d0893e | 252 | |
8daeee93 | 253 | Bool_t fDoNEFQAPlots; |
3e43a01f | 254 | Bool_t fSignalTrackBias; |
255 | ||
91d0893e | 256 | Int_t fNEFBins; |
257 | Double_t fNEFLow; | |
258 | Double_t fNEFUp; | |
8daeee93 | 259 | |
260 | // These members are 'sourced' from the base class and are initalized in the constructor | |
261 | Double_t fEMCalPhiMin; | |
262 | Double_t fEMCalPhiMax; | |
263 | Double_t fEMCalEtaMin; | |
264 | Double_t fEMCalEtaMax; | |
c6202663 | 265 | }; |
266 | ||
267 | // AliAnalysisTaskFullpAJets | |
ac6a3f1e | 268 | public: |
269 | AliAnalysisTaskFullpAJets(); | |
270 | AliAnalysisTaskFullpAJets(const char *name); | |
271 | virtual ~AliAnalysisTaskFullpAJets(); | |
272 | ||
273 | virtual void UserCreateOutputObjects(); | |
274 | virtual void UserExecOnce(); | |
275 | virtual void UserExec(Option_t *option); | |
276 | virtual void Terminate(Option_t *); | |
277 | ||
278 | // User Defined Sub-Routines | |
c6202663 | 279 | void TrackCuts(); |
280 | void ClusterCuts(); | |
ac6a3f1e | 281 | void TrackHisto(); |
282 | void ClusterHisto(); | |
ac6a3f1e | 283 | void InitChargedJets(); |
284 | void InitFullJets(); | |
c6202663 | 285 | void GenerateTPCRandomConesPt(); |
286 | void GenerateEMCalRandomConesPt(); | |
287 | ||
288 | void EstimateChargedRho0(); | |
289 | void EstimateChargedRho1(); | |
290 | void EstimateChargedRho2(); | |
291 | void EstimateChargedRhoN(); | |
292 | void EstimateChargedRhoScale(); | |
293 | void EstimateChargedRhokT(); | |
294 | void EstimateChargedRhokTScale(); | |
295 | void EstimateChargedRhoCMS(); | |
296 | void EstimateChargedRhoCMSScale(); | |
297 | ||
298 | void EstimateFullRho0(); | |
299 | void EstimateFullRho1(); | |
300 | void EstimateFullRho2(); | |
301 | void EstimateFullRhoN(); | |
302 | void EstimateFullRhoDijet(); | |
303 | void EstimateFullRhokT(); | |
304 | void EstimateFullRhoCMS(); | |
305 | ||
c6202663 | 306 | void DeleteJetData(Bool_t EMCalOn); |
ac6a3f1e | 307 | |
308 | // User Defined Functions | |
309 | Bool_t IsDiJetEvent(); | |
310 | Bool_t InsideRect(Double_t phi,Double_t phi_min,Double_t phi_max,Double_t eta,Double_t eta_min,Double_t eta_max); | |
311 | Bool_t IsInEMCal(Double_t phi,Double_t eta); | |
312 | Bool_t IsInEMCalFull(Double_t r,Double_t phi,Double_t eta); | |
313 | Bool_t IsInEMCalPart(Double_t r,Double_t phi,Double_t eta); | |
314 | Bool_t IsInTPCFull(Double_t r,Double_t phi,Double_t eta); | |
315 | Bool_t IsInTPC(Double_t r,Double_t phi,Double_t eta,Bool_t Complete); | |
c6202663 | 316 | Bool_t IsJetOverlap(AliEmcalJet *jet1,AliEmcalJet *jet2,Bool_t EMCalOn); |
317 | ||
ac6a3f1e | 318 | Double_t AreaWithinTPC(Double_t r,Double_t eta); |
319 | Double_t AreaWithinEMCal(Double_t r,Double_t phi,Double_t eta); | |
320 | Double_t AreaEdge(Double_t r,Double_t z); | |
321 | Double_t AreaOverlap(Double_t r,Double_t x,Double_t y); | |
322 | Double_t TransverseArea(Double_t r,Double_t psi0,Double_t phi,Double_t eta); | |
c6202663 | 323 | Double_t MedianRhokT(Double_t *pTkTEntries, Double_t *RhokTEntries, Int_t nEntries); |
ac6a3f1e | 324 | |
c54b626a | 325 | // Used to set the R for the jet finders |
326 | inline void SetRjet(Int_t r) | |
ac6a3f1e | 327 | { |
328 | fRJET = r; | |
329 | }; | |
c6202663 | 330 | |
331 | // Used to set the Centrality Tag | |
332 | inline void SetCentralityTag(const char *centag) | |
333 | { | |
334 | fCentralityTag = centag; | |
335 | }; | |
336 | ||
337 | // Used to set apriori Scaling Factor | |
338 | inline void SetScaleFactor(Double_t factor) | |
339 | { | |
340 | fScaleFactor = factor; | |
341 | }; | |
342 | ||
343 | // Used to set the minimum pT required to analyize picotracks | |
344 | inline void SetTrackPtCut(Double_t pT) | |
345 | { | |
346 | fTrackMinPt = pT; | |
347 | } | |
ac6a3f1e | 348 | |
c6202663 | 349 | // Used to set the minimum pT required to analyize picotracks |
350 | inline void SetClusterPtCut(Double_t pT) | |
351 | { | |
352 | fClusterMinPt = pT; | |
353 | } | |
d812e269 | 354 | |
355 | // Used to set Tracks collection name | |
356 | inline void SetTrackName(TString name) | |
357 | { | |
358 | fTrackName = name; | |
359 | }; | |
360 | ||
361 | // Used to set Clusters collection name | |
362 | inline void SetClusterName(TString name) | |
363 | { | |
364 | fClusName = name; | |
365 | }; | |
366 | ||
367 | // Used to set kT Charged Jet collection name | |
368 | inline void SetkTChargedJetName(TString name) | |
369 | { | |
370 | fkTChargedName = name; | |
371 | }; | |
372 | ||
373 | // Used to set anti-kT Charged Jet collection name | |
374 | inline void SetAkTChargedJetName(TString name) | |
c6202663 | 375 | { |
d812e269 | 376 | fAkTChargedName = name; |
c6202663 | 377 | }; |
d812e269 | 378 | |
379 | // Used to set kT Full Jet collection name | |
380 | inline void SetkTFullJetName(TString name) | |
381 | { | |
382 | fkTFullName = name; | |
383 | }; | |
384 | ||
385 | // Used to set anti-kT Full Jet collection name | |
386 | inline void SetAkTFullJetName(TString name) | |
387 | { | |
388 | fAkTFullName = name; | |
389 | }; | |
7acc3e04 | 390 | |
391 | // Used to set Ncoll for Delta Pt | |
392 | inline void SetNColl(Double_t ncoll) | |
393 | { | |
394 | fNColl = ncoll; | |
91d0893e | 395 | }; |
d812e269 | 396 | |
91d0893e | 397 | inline void SetNEFSignalJetCut(Double_t nef) |
398 | { | |
399 | fNEFSignalJetCut = nef; | |
400 | }; | |
401 | ||
87a5edfe | 402 | inline void DoNEFCalibration(Bool_t doNEF) |
403 | { | |
3e43a01f | 404 | fDoNEF = doNEF; |
87a5edfe | 405 | }; |
406 | ||
3e43a01f | 407 | inline void SetJetChargeBias(Bool_t trackBias) |
408 | { | |
409 | fSignalTrackBias = trackBias; | |
410 | } | |
411 | ||
ac6a3f1e | 412 | private: |
53c56e05 | 413 | TList *fOutput; //! Output list |
ac6a3f1e | 414 | |
415 | TH1D *fhTrackPt; //! | |
416 | TH1D *fhTrackEta; //! | |
417 | TH1D *fhTrackPhi; //! | |
24a61909 | 418 | TH1D *fhGlobalTrackPt; //! |
419 | TH1D *fhGlobalTrackEta; //! | |
420 | TH1D *fhGlobalTrackPhi; //! | |
421 | TH1D *fhComplementaryTrackPt; //! | |
422 | TH1D *fhComplementaryTrackEta; //! | |
423 | TH1D *fhComplementaryTrackPhi; //! | |
ac6a3f1e | 424 | TH1D *fhClusterPt; //! |
425 | TH1D *fhClusterEta; //! | |
426 | TH1D *fhClusterPhi; //! | |
c54b626a | 427 | TH1D *fhCentrality; //! |
ac6a3f1e | 428 | TH1D *fhEMCalCellCounts; //! Plots the distribution of cluster counts in the EMCal. Used to determine which cells are hot (if any...) |
7acc3e04 | 429 | |
ac6a3f1e | 430 | TH2D *fhTrackEtaPhi; //! |
24a61909 | 431 | TH2D *fhTrackPhiPt; //! |
432 | TH2D *fhTrackEtaPt; //! | |
433 | TH2D *fhGlobalTrackEtaPhi; //! | |
434 | TH2D *fhGlobalTrackPhiPt; //! | |
435 | TH2D *fhGlobalTrackEtaPt; //! | |
436 | TH2D *fhComplementaryTrackEtaPhi; //! | |
437 | TH2D *fhComplementaryTrackPhiPt; //! | |
438 | TH2D *fhComplementaryTrackEtaPt; //! | |
439 | ||
ac6a3f1e | 440 | TH2D *fhClusterEtaPhi; //! |
24a61909 | 441 | TH2D *fhClusterPhiPt; //! |
442 | TH2D *fhClusterEtaPt; //! | |
c6202663 | 443 | TH2D *fhRhoScale; //! |
c54b626a | 444 | |
3e43a01f | 445 | TH2D *fhEMCalEventMult; //! |
446 | TH2D *fhTPCEventMult; //! | |
447 | TH2D *fhEMCalTrackEventMult; //! | |
448 | ||
24a61909 | 449 | TH3D *fhTrackEtaPhiPt; //! |
450 | TH3D *fhGlobalTrackEtaPhiPt; //! | |
451 | TH3D *fhComplementaryTrackEtaPhiPt; //! | |
452 | TH3D *fhClusterEtaPhiPt; //! | |
453 | ||
c6202663 | 454 | TProfile *fpEMCalEventMult; //! |
455 | TProfile *fpTPCEventMult; //! | |
ac6a3f1e | 456 | TProfile *fpRhoScale; //! Scale of rho_total/rho_charged event/event vs centrality |
ac6a3f1e | 457 | |
ac6a3f1e | 458 | TProfile2D *fpTrackPtProfile; //! |
459 | TProfile2D *fpClusterPtProfile; //! | |
460 | ||
c6202663 | 461 | AlipAJetHistos *fTPCRawJets; //! |
462 | AlipAJetHistos *fEMCalRawJets; //! | |
87a5edfe | 463 | /* |
c6202663 | 464 | AlipAJetHistos *fRhoFull0; //! |
465 | AlipAJetHistos *fRhoFull1; //! | |
466 | AlipAJetHistos *fRhoFull2; //! | |
467 | AlipAJetHistos *fRhoFullN; //! | |
468 | AlipAJetHistos *fRhoFullDijet; //! | |
469 | AlipAJetHistos *fRhoFullkT; //! | |
470 | AlipAJetHistos *fRhoFullCMS; //! | |
471 | ||
472 | AlipAJetHistos *fRhoCharged0; //! | |
473 | AlipAJetHistos *fRhoCharged1; //! | |
474 | AlipAJetHistos *fRhoCharged2; //! | |
e864d416 | 475 | AlipAJetHistos *fRhoChargedN; //! |
c6202663 | 476 | AlipAJetHistos *fRhoChargedkT; //! |
477 | AlipAJetHistos *fRhoChargedkTScale; //! | |
478 | AlipAJetHistos *fRhoChargedCMS; //! | |
87a5edfe | 479 | */ |
e864d416 | 480 | AlipAJetHistos *fRhoChargedScale; //! |
c6202663 | 481 | AlipAJetHistos *fRhoChargedCMSScale; //! |
482 | ||
483 | AlipAJetData *fTPCJet; //! | |
484 | AlipAJetData *fTPCFullJet; //! | |
485 | AlipAJetData *fTPCOnlyJet; //! | |
8daeee93 | 486 | AlipAJetData *fTPCJetUnbiased; //! |
c6202663 | 487 | AlipAJetData *fTPCkTFullJet; //! |
488 | AlipAJetData *fEMCalJet; //! | |
489 | AlipAJetData *fEMCalFullJet; //! | |
490 | AlipAJetData *fEMCalPartJet; //! | |
8daeee93 | 491 | AlipAJetData *fEMCalPartJetUnbiased; //! |
c6202663 | 492 | AlipAJetData *fEMCalkTFullJet; //! |
493 | ||
494 | // Variables | |
ac6a3f1e | 495 | Bool_t fIsInitialized; |
496 | Int_t fRJET; // Used to set Anti_kt R. Called from AddTask Macro | |
497 | Long_t fnEvents; // Counter for the number of events that made the physics selection with TPC+EMCal | |
498 | Long_t fnEventsCharged; // Counter for the number of events that made the physics selection with TPC only | |
499 | Long_t fnDiJetEvents; // Counter for the number of dijet events | |
08b981da | 500 | AliVEvent *fEvent; //! |
501 | AliEMCALRecoUtils *fRecoUtil; //! | |
502 | AliEMCALGeometry *fEMCALGeometry; //! | |
503 | AliVCaloCells *fCells; //! | |
87a5edfe | 504 | Bool_t fDoNEF; |
3e43a01f | 505 | Bool_t fSignalTrackBias; |
506 | ||
ac6a3f1e | 507 | // Protected Global Variables |
508 | Double_t fEMCalPhiMin; | |
509 | Double_t fEMCalPhiMax; | |
510 | Double_t fEMCalPhiTotal; | |
511 | Double_t fEMCalEtaMin; | |
512 | Double_t fEMCalEtaMax; | |
513 | Double_t fEMCalEtaTotal; | |
514 | Double_t fEMCalArea; | |
515 | ||
516 | Double_t fTPCPhiMin; | |
517 | Double_t fTPCPhiMax; | |
518 | Double_t fTPCPhiTotal; | |
519 | Double_t fTPCEtaMin; | |
520 | Double_t fTPCEtaMax; | |
521 | Double_t fTPCEtaTotal; | |
522 | Double_t fTPCArea; | |
523 | ||
24a61909 | 524 | Double_t fParticlePtLow; |
525 | Double_t fParticlePtUp; | |
526 | Int_t fParticlePtBins; | |
8daeee93 | 527 | |
ac6a3f1e | 528 | Double_t fJetR; |
c6202663 | 529 | Double_t fJetRForRho; // Required distance a track/cluster must be away from a jet for rho calculation |
ac6a3f1e | 530 | Double_t fJetAreaCutFrac; // Fudge factor for selecting on jets with threshold Pt or higher |
531 | Double_t fJetAreaThreshold; | |
ac6a3f1e | 532 | Int_t fnEMCalCells; // Total number of cells in the EMCal |
c6202663 | 533 | Double_t fScaleFactor; // Scale Factor obtained from Megan/Rosi |
7acc3e04 | 534 | Double_t fNColl; // Used for partial rejection of signal from RC. Obtained via Glauber Calculations |
c6202663 | 535 | Double_t fTrackMinPt; |
536 | Double_t fClusterMinPt; | |
91d0893e | 537 | Double_t fNEFSignalJetCut; |
ac6a3f1e | 538 | |
53c56e05 | 539 | const char *fCentralityTag; //! |
ac6a3f1e | 540 | Int_t fCentralityBins; |
541 | Double_t fCentralityLow; | |
542 | Double_t fCentralityUp; | |
543 | Double_t fEventCentrality; | |
544 | ||
c6202663 | 545 | Double_t fRhoFull; // From Full Rho 0 |
546 | Double_t fRhoCharged; // From Charged Rho 0 | |
ac6a3f1e | 547 | |
ac6a3f1e | 548 | // General Global variables |
549 | Int_t fnTracks; | |
550 | Int_t fnClusters; | |
08b981da | 551 | Int_t fnCaloClusters; |
ac6a3f1e | 552 | Int_t fnAKTFullJets; |
553 | Int_t fnAKTChargedJets; | |
554 | Int_t fnKTFullJets; | |
78246241 | 555 | Int_t fnKTChargedJets; |
ac6a3f1e | 556 | Int_t fnBckgClusters; |
557 | ||
558 | Double_t fTPCJetThreshold; | |
559 | Double_t fEMCalJetThreshold; | |
560 | ||
8daeee93 | 561 | Double_t fVertex[3]; |
ac6a3f1e | 562 | Double_t fVertexWindow; |
563 | Double_t fVertexMaxR; | |
564 | ||
d812e269 | 565 | // Tracks and Clusters string names |
566 | TString fTrackName; | |
567 | TString fClusName; | |
568 | ||
569 | // Jet Finder string names | |
570 | TString fkTChargedName; | |
571 | TString fAkTChargedName; | |
572 | TString fkTFullName; | |
573 | TString fAkTFullName; | |
574 | ||
ac6a3f1e | 575 | // Dynamic Array variables |
c6202663 | 576 | TClonesArray *fOrgTracks; //! |
577 | TClonesArray *fOrgClusters; //! | |
ac6a3f1e | 578 | TClonesArray *fmyAKTFullJets; //! |
579 | TClonesArray *fmyAKTChargedJets; //! | |
580 | TClonesArray *fmyKTFullJets; //! | |
78246241 | 581 | TClonesArray *fmyKTChargedJets; //! |
ac6a3f1e | 582 | |
c6202663 | 583 | TObjArray *fmyTracks; //! |
584 | TObjArray *fmyClusters; //! | |
ac6a3f1e | 585 | |
c6202663 | 586 | Double_t *fEMCalRCBckgFluc; //! Stores the pT of RC Background clusters in EMCal at least 2R away from Leading Signal |
587 | Double_t *fTPCRCBckgFluc; //! Stores the pT of RC Background clusters in TPC at least 2R away from Leading Signal | |
588 | Double_t *fEMCalRCBckgFlucSignal; //! Stores the pT of RC Background clusters in EMCal with no spatial restrictions | |
7acc3e04 | 589 | Double_t *fTPCRCBckgFlucSignal; //! Stores the pT of RC Background clusters in TPC with no spatial restrictions |
590 | Double_t *fEMCalRCBckgFlucNColl; //! Stores the pT of RC Background clusters in EMCal with no spatial restrictions | |
591 | Double_t *fTPCRCBckgFlucNColl; //! Stores the pT of RC Background clusters in TPC with no spatial restrictions | |
ac6a3f1e | 592 | |
593 | AliAnalysisTaskFullpAJets(const AliAnalysisTaskFullpAJets&); // not implemented | |
594 | AliAnalysisTaskFullpAJets& operator=(const AliAnalysisTaskFullpAJets&); // not implemented | |
595 | ||
596 | ClassDef(AliAnalysisTaskFullpAJets, 1); // example of analysis | |
597 | }; | |
598 | #endif |