]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskFullpAJets.h
from Chris
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / UserTasks / AliAnalysisTaskFullpAJets.h
CommitLineData
ac6a3f1e 1#ifndef AliAnalysisTaskFullpAJets_H
2#define AliAnalysisTaskFullpAJets_H
3
d812e269 4class TString;
ac6a3f1e 5class TH1D;
6class TH2D;
7class TH3D;
8class TList;
9class TProfile;
10class TProfile2D;
11class TProfile3D;
12class TClonesArray;
c6202663 13class TObjArray;
14class TLorentzVector;
ac6a3f1e 15class AliESDtrackCuts;
c6202663 16class AliEmcalJet;
08b981da 17class AliVEvent;
c6202663 18class AliEMCALGeometry;
08b981da 19class AliEMCALRecoUtils;
20class AliVCaloCells;
24a61909 21class AliPicoTrack;
ac6a3f1e 22
23#ifndef ALIANALYSISTASKSE_H
24#include "AliAnalysisTaskSE.h"
25#endif
26
27class 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