default name for AliStackPartonInfo
[u/mrichter/AliRoot.git] / PWGJE / AliAnalysisTaskPartonDisc.h
CommitLineData
a65a7e70 1#ifndef ALIANALYSISTASKPARTONDISC_H
2#define ALIANALYSISTASKPARTONDISC_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7//////////////////////////////////////////////////////
8// //
9// Analysis task for parton discrimination studies //
10// //
11//////////////////////////////////////////////////////
12
13class TH1F;
14class TH1I;
15class TH2F;
16class TH2I;
17class TH3F;
18class TProfile;
19class AliAODEvent;
20class AliMCEvent;
21class AliAODJet;
22class AliAODTrack;
23class AliAODMCParticle;
24class AliAODVertex;
25
26#include "AliAnalysisTaskSE.h"
27
28class AliAnalysisTaskPartonDisc : public AliAnalysisTaskSE {
29 public:
30 AliAnalysisTaskPartonDisc();
31 AliAnalysisTaskPartonDisc(const char *name);
32 virtual ~AliAnalysisTaskPartonDisc() {}
33
34 virtual Bool_t UserNotify();
35 virtual void UserCreateOutputObjects();
36 virtual void UserExec(Option_t *option);
37 virtual void Terminate(const Option_t *);
38
39 virtual void SetAODwithMC(Bool_t flag) {fUseAODMC = flag;}
40 virtual void SetMCBranch(const char* mc) {fBranchMC = mc;}
41 virtual void SetRecBranch(const char* rec) {fBranchRec = rec;}
42 virtual void SetSecondRecBranch(const char* secrec) {fBranchSecRec = secrec;}
43 virtual void SetSqrtS(const Double_t sqrts) {fSqrts = sqrts;}
44 virtual void SetXNtX(const Int_t x) {fNtX = x;}
45 virtual void SetJetRadius(const Double_t jetradius) {fJetRadius = jetradius;}
46 virtual void SetFilterBitTracks(const UInt_t bval) {fFilterBit = bval;}
47 virtual void SetFlavorRadius(const Double_t fradius) {fFlavorRadius = fradius;}
48 virtual void SetPhojetMC(Bool_t flagmc) {fPhojetMC = flagmc;}
49 Int_t GetMCEventType(AliMCEvent *mcEvent);
50 Int_t GetPhojetEventType(AliMCEvent *mcEvent);
51 Bool_t IsInsideAcceptance(AliAODJet *jet);
52 Int_t GetJetFlavour(AliAODJet *jet, Int_t ntracks,TClonesArray *mcarray);
53 Double_t GetDeltaR(Double_t eta1, Double_t phi1,Double_t eta2, Double_t phi2);
54 Int_t GetNumberOfMcChargedTracks(Int_t percentage,AliAODJet *Jet, Int_t ntracks, TClonesArray *mcarray, Double_t jr);
55 Int_t GetNumberOfChargedTracks(Int_t percentage,AliAODJet *jet, Int_t ntracks, AliAODEvent *aode, Double_t jr);
56 virtual void AllocateStaticContainer(Int_t size);
57 virtual void InitializeStaticContainer(Int_t size);
58 virtual void SortArray(Double_t *pointer, Int_t arraySize);
59 Int_t TracksForPercentage(Double_t *array, Int_t arraysize, Int_t percentage, Double_t jetenergy);
60 Bool_t IsMCTrackInsideThisJet(AliAODMCParticle *MCParticle, AliAODJet *Jet, Double_t jr);
61 Bool_t IsTrackInsideThisJet(AliAODTrack *aodT, AliAODJet *Jet, Double_t jr);
62 Bool_t VertexInJet(AliAODVertex *pvtx, AliAODVertex *vtx, AliAODJet *jet, Double_t jr);
63 Double_t GetEtaValue(Double_t theta) const;
64 Double_t GetThetaAngle(Double_t xval, Double_t yval, Double_t zval);
65 Double_t GetPhiAngle(Double_t xval, Double_t yval);
66 virtual void SetAODMCInput(Bool_t b){fUseAODJetInput = b;}
67 Double_t DeltaPhiMC(AliAODJet *jet, AliAODMCParticle *particle);
68 Double_t DeltaEtaMC(AliAODJet *jet, AliAODMCParticle *particle);
69 Double_t DeltaPhiSqMC(AliAODJet *jet, AliAODMCParticle *particle);
70 Double_t DeltaEtaSqMC(AliAODJet *jet, AliAODMCParticle *particle);
71 Double_t DeltaPhiTrack(AliAODJet *jet, AliAODTrack *track);
72 Double_t DeltaEtaTrack(AliAODJet *jet, AliAODTrack *track);
73 Double_t DeltaPhiSqTrack(AliAODJet *jet, AliAODTrack *track);
74 Double_t DeltaEtaSqTrack(AliAODJet *jet, AliAODTrack *track);
75 virtual void SetMinPtTrackCut(const Double_t minptval) {fMinpTVal = minptval;}
76 static Bool_t NumberOfReadEventsAOD(const char* currFile, Int_t &fNEvents);
77 virtual void SetOnlyMC(Bool_t flagOnlyMC) {fUseOnlyMC = flagOnlyMC;}
78 virtual void SetCheckMCStatus(Bool_t flagMCStatus) {fCheckMCStatus = flagMCStatus;}
79 virtual void HasOverlapedCones(TClonesArray *JetArray);
80 virtual void ResetJetFlags();
81 virtual void SetEnablePrints(Bool_t flagEnablePrints) {fEnablePrints = flagEnablePrints;}
82 Bool_t HasPerpendicularCone() const {return fHasPerpCone;}
83 virtual void SetHIEvent(Bool_t flagHIEvent) {fIsHIevent = flagHIEvent;}
84 Int_t GetNMcChargedTracksAboveThreshold(AliAODJet *jet, Int_t ntracks, TClonesArray *mcarray, Double_t jr);
85 Int_t GetRecalcNTXMc(Int_t percentage, AliAODJet *originaljet, Int_t ntracks, TClonesArray *mcarray, Double_t jr);
86 Int_t GetRecalcNMcChTrUpThr(AliAODJet *jet, Int_t ntracks, TClonesArray *mcarray, Double_t jr);
87 Int_t GetNRecChargedTracksAboveThreshold(AliAODJet *jet, Int_t ntracks, AliAODEvent *aode, Double_t jr);
88 Int_t GetRecalcNTXRec(Int_t percentage,AliAODJet *originaljet, Int_t ntracks, AliAODEvent *aode, Double_t jr);
89 Int_t GetRecalcNRecChTrUpThr(AliAODJet *jet, Int_t ntracks, AliAODEvent *aode, Double_t jr);
90 Int_t TracksForPercentageRecalc(Double_t *array, Int_t arraysize, Int_t percentage, Double_t jetenergy);
91 Bool_t IsTrackInsideExcludedArea(Double_t tracketa, Double_t trackphi, TClonesArray *recojets);
92 Double_t GetV0ExcludedMultiplicity(TClonesArray *recojets);
93 virtual void SetMinPtUE(const Double_t minptvalUE) {fMinpTValUE = minptvalUE;}
94 virtual void SetMaxPtUE(const Double_t maxptvalUE) {fMaxpTValUE = maxptvalUE;}
95 virtual void SetMinPtMC(const Double_t minptvalMC) {fMinpTValMC = minptvalMC;}
96 Int_t GetV0LikeExcludedMultMC(TClonesArray *mcjets, TClonesArray *mcparticles);
97 virtual void SetIncreaseOfExclusionR(const Double_t increaseExclR) {fIncExcR = increaseExclR;}
98 virtual void ForceNotUseTrackRefs(const Bool_t flagForce) {fForceNotTR = flagForce;};
99 virtual void NotExtendDiJetExclusion(const Bool_t flagNotDiJ) {fNotExtDiJEx = flagNotDiJ;};
100 virtual void FillPerpConeHisto(TH3F *currenthisto, Int_t ntracks, AliAODEvent *aode, Int_t CentralityBin, Int_t pTBin);
101 virtual void ForceSkipSingleTrackJets(const Bool_t flagForceSJ) {fForceSkipSJ = flagForceSJ;};
102 Bool_t IsEqualRel(Double_t vA, Double_t vB);
103 virtual void SetEnableJetEtaRestriction(Bool_t flagEnableJetEtaRes) {fIncreasingExcl = flagEnableJetEtaRes;}
104 virtual void SetTrackRandomRejectionPerc(const Double_t perctrackrr) {fTTrackRandomRejection = perctrackrr;}
105 virtual void SetTrackInJetRandomRejectionPerc(const Double_t perctrackijrr) {fJTrackRandomRejection = perctrackijrr;}
106 virtual void SetMinPtCutGlobMult(const Double_t minptglobmult) {fMinPtInGlobMult = minptglobmult;}
107
108 private:
109 AliAODEvent *fAOD; //! AOD object
110 Bool_t fUseAODMC; // Flag for MC info in the AOD
111 Bool_t fPhojetMC; // Flag for Phojet MC
112 TString fBranchMC; // AOD branch name for MC jets
113 TString fBranchRec; // AOD branch name for reconstructed jets
114 TString fBranchSecRec; // AOD branch name for secondary reconstructed jets
115 Double_t fSqrts; // Value of sqrt{s} default 0 to spot errors
116 Int_t fNtX; // X Value of NTX default 0 to spot errors
117 Double_t fJetRadius; // Radius used in jet finding default 0 to spot errors
118 Double_t fFlavorRadius; // Radius used in flavor asignment
119 UInt_t fFilterBit; // Filterbit value: 16= tracks with standard cuts, 128 = tracks with hit in SDD, 144 (16+128) = all the previous
120 TList *fOutputList; //! Output list
121 TH1F *fJetPt; //! Pt spectrum of reco jets
122 TH1F *fJetPtSec; //! Pt spectrum of secondary reco jets
123 TH1F *fJetPtMC; //! Pt spectrum of mc jets
124 TH2F *fJetEta; //! Eta of reco jets
125 TH2F *fJetEtaSec; //! Eta of secondary reco jets
126 TH2F *fJetPhi; //! Phi of reco jets
127 TH2F *fJetPhiSec; //! Phi of secondary reco jets
128 TH2F *fJetEtaMC; //! Eta of MC jets
129 TH2F *fJetPhiMC; //! Phi of MC jets
130 TH2F *fPtAODMC; //! Pt spectrum of MC tracks in AOD
131 TH2F *fPtAOD; //! Pt spectrum of tracks in AOD (reco MC or real)
132 TH2F *fEtaAODMC; //! Eta distribution of MC AOD tracks
133 TH2F *fPhiAODMC; //! Phi distribution of MC AOD tracks
134 TH2F *fEtaAOD; //! Eta distribution of AOD tracks
135 TH2F *fPhiAOD; //! Phi distribution of AOD tracks
136 TH2F *fFlavor; //! Flavor distribution of jets
137 TH2F *fNJetsMC; //! Number of jets per event in MC
138 TH2F *fNJetsRD; //! Number of jets per event in real data or reco MC
139 TH2F *fNJetsRDSeco; //! Number of jets per event in real data or reco MC secondary branch
140 TH2F *fJetsMultPtMC; //! Jet multiplicity in jet pT in MC
141 TH2F *fJetsMultPtRD; //! Jet multiplicity in jet pT in real data or reco MC
142 static Double_t *fgContainer; //! static container for track counting
143 TH2F *fNChTr[12]; //! Number of charged tracks in the jets as a function of jet pt (MC)
144 TH2F *fNChTrRD; //! Number of charged tracks in the jets as a function of jet pt (Real Data)
145 TProfile *fProfNChTrRD; //! Number of charged tracks in the jets as a function of jet pt (Real Data)
146 TH2I *fProcessPDG[6]; //! Pythia process and pT of the jet
147 TH1F *fHistPtParton[12]; //! Pt distribution of jets per flavor, mc and reco
148 TH2F *fFragPion[6]; //! Fragmentation of jet in pions, jet energy
149 TH2F *fFragKaon[6]; //! Fragmentation of jet in kaons, jet energy
150 TH2F *fFragProton[6]; //! Fragmentation of jet in protons, jet energy
151 TH2F *fHistContainerR4[6]; //! Temporary containers for fragmentation of reco jets R4
152 TH2F *fHistContainerR3[6]; //! Temporary containers for fragmentation of reco jets R3
153 TH2F *fHistContainerR2[6]; //! Temporary containers for fragmentation of reco jets R2
154 TH2F *fFragChargedR4[6]; //! Fragmentation of jet in charged part, jet energy R4
155 TH2F *fFragChargedR3[6]; //! Fragmentation of jet in charged part, jet energy R3
156 TH2F *fFragChargedR2[6]; //! Fragmentation of jet in charged part, jet energy R2
157 TH2F *fFragCandidates[2]; //! Tagged candidates for FF
158 TH1F *fFracQQ; //! process qq as a function of x_{T}
159 TH1F *fFracGQ; //! process gq as a function of x_{T}
160 TH1F *fFracGG; //! process gg as a function of x_{T}
161 TH1F *fFracOutGoingQQ; //! process outgoing qq as a function of x_{T}
162 TH1F *fFracOutGoingGQ; //! process outgoing gq as a function of x_{T}
163 TH1F *fFracOutGoingGG; //! process outgoing gg as a function of x_{T}
164 TProfile *fh1Xsec; //! xsection from pyxsec.root
165 TH1F *fh1Trials; //! ntrials from pyxsec.root
166 Short_t fMpdg; //! PDG code of mother of parton
167 TH2F *fProcessJetPt; //! Pythia Process and jet pT
168 TH2F *fFlavorLead; //! Flavor distribution of the leading jet
169 TH2F *fProcessLeadJetPt; //! Pythia Process and jet pT of the leading jet
170 TH3F *fPDGMothLPart; //! PDG code of the mother of the leading parton, leading parton, jet pT
171 TH2F *fFlavProc; //! Flavor, Flavor status code
172 Float_t fAvgTrials; // Average number of trials
173 Bool_t fUseAODJetInput; // take MC from input AOD not from output AOD
174 Double_t fMinTrackPtInNTX; // Minimum track pT taken into the NTX calculation
175 Double_t fMaxTrackPtInNTX; // Maximum track pT taken into the NTX calculation
176 TH3F *fMinTrackPtInNTXh[2];//! Histo to save fMinTrackPtInNTX as a function of jet pT
177 TH2F *fMaxTrackPtInNTXh[2];//! Histo to save fMaxTrackPtInNTX as a function of jet pT
178 TH2F *fSCM[12]; //! Second central moment as a function of jet pt (MC)
179 TH2F *fSCMRD; //! Second central moment as a function of jet pt (Real Data)
180 Double_t fMinpTVal; // Minimum pT track cut for SCM analysis
181 TH2F *fZVertex; //! Z coordinate vertex position, number of reco jets
182 TH1F *fh1Events; //! nevents read out from PWG4_JetTasksOutput.root
183 Bool_t fUseOnlyMC; // Flag to signal only MC input
184 Bool_t fCheckMCStatus; // Flag to check the status of MC, not working for old aliroot
185 Bool_t fJetFlags[16]; // Flag to mark if this jet is ok (acceptance and no overlap), kTRUE if usable
186 Int_t fEvtCount; // Event counter for debugging
187 TH2F *fNAccJetsMC; //! Number of accepted jets per event in MC
188 TH2F *fNAccJetsRD; //! Number of accepted jets per event in real data or reco MC
189 TH2F *fNAccJetsRDSeco; //! Number of jets accepted per event in real data or reco MC secondary branch
190 Bool_t fEnablePrints; // Flag to enable print outs
191 TH1F *fRecJetPtInclusive; //! Pt spectrum of inclusive reco jets
192 TH1F *fMCJetPtInclusive; //! Pt spectrum of inclusive MC jets
193 TH1F *fRecJetPtLeading; //! Pt spectrum of leading reco jets
194 TH1F *fMCJetPtLeading; //! Pt spectrum of leading MC jets
195 TH1F *fSecRecJetPtInclusive; //! Pt spectrum of inclusive reco jets (2nd branch)
196 TH1F *fSecRecJetPtLeading; //! Pt spectrum of leading reco jets (2nd branch)
197 Bool_t fHasPerpCone; // Flag to indicate if possible to use a perpendicular jet for bckg
198 Double_t fEtaPerpCoord; // Eta of perpendicular cone
199 Double_t fPhiPerpCoord; // Phi of perpendicular cone
200 Double_t fPtPerpCoord; // pT of perpendicular cone
201 Bool_t fJetEvent; // Flag to indicate a jet event(in acceptance)
202 AliAODJet *fPerpCone; // Perpendicular Cone
203 TH2F *fNChTrMCPerp; //! Number of charged tracks in the perpendicular cone MC
204 TH2F *fNChTrRecPerp; //! Number of charged tracks in the perpendicular cone Reco or Real
205 TH2F *fSCMMCPerp; //! Second central moment as a function of jet pt for the perp cone MC
206 TH2F *fSCMRecPerp; //! Second central moment as a function of jet pt for the perp cone Rec
207 Bool_t fIsHIevent; // Flag to indicate that is reading a HI event
208 Double_t fCurrentJetMinPtNT90; // Min pT used in the NT90 calculation of the current jet
209 Double_t *fBckgSbsJet; //! Current jet, background substracted
210 Double_t fCurrentJetMinPtNT90Recalc; // Min pT used in the NT90 re-calculation of the current jet
211 // after energy correction of the jet
212 TH2F *fNChTrCorrMCQuark; //! Number of charged tracks after jet energy correction, as a function of corrected pT, MC quarks
213 TH2F *fNChTrCorrMCGluon; //! Number of charged tracks after jet energy correction, as a function of corrected pT, MC gluons
214 TH2F *fNChTrCorrMCPerp; //! Number of charged tracks in the perpendicular cone MC, after correction
215 Bool_t fIsPossibleToSubstBckg; // Flag to signal that there was a perpendicular cone, as is possible to substract background
216 TH3F *fNChTrRecECorr; //! Number of charged tracks in the energy corrected jet, as a function of corrected jet pt, centrality
217 TH3F *fNChTrRecPerpECorr; //! Number of charged tracks in the perpendicular after correction, as a func. of corr. jet pt, centrality
218 TH1F *fRefMult; //! Reference multiplicity in the AOD
219 TH2F *fNChTrRDMult[8]; //! Number of charged tracks in the jets as a function of jet pt (Real Data), for reference multiplicities in pp
220 TH1F *fNAccJetsRDMult[8]; //! Number of accepted jets per event in real data or reco MC, for reference multiplicities in pp
221 Int_t fCurrentJetCharge; // Charge in the current jet
222 TH1F *fTotalJetCharge[8]; //! Charge of this jet (dependent on event multiplicity)
223 TH2F *fRefMultWOJet; //! Reference multiplicity in the AOD and multiplicity without jets
224 TH2F *fSCMRDMult[8]; //! Second central moment as a function of jet pt (Real Data), for reference multiplicities in pp
225 TH2F *fNChTrRDMultMC[8]; //! Number of charged tracks in the jets as a function of jet pt (MC Data), for reference multiplicities in pp
226 TH2F *fSCMRDMultMC[8]; //! Second central moment as a function of jet pt (MC Data), for reference multiplicities in pp
227 TH2F *fVZEROMult; //! Multiplicity in V0A and V0C
228 TH2F *fMultWOJetVZero; //! Multiplicity without jets, and VZERO multiplicity
229 AliAODVZERO *fVZero; //! AOD VZERO object
230 TH2F *fNChTrRDMultSE[8]; //! Number of charged tracks in the jets as a function of jet pt (Real Data), for 2nd reference multiplicities in pp
231 TH1F *fNAccJetsRDMultSE[8]; //! Number of accepted jets per event in real data or reco MC, for 2nd reference multiplicities in pp
232 TH1F *fTotalJetChargeSE[8]; //! Charge of this jet (dependent on 2nd event multiplicity)
233 TH2F *fSCMRDMultSE[8]; //! Second central moment as a function of jet pt (Real Data), for 2nd reference multiplicities in pp
234 TH2F *fRefMultFullV0; //! Reference multiplicity in the AOD and multiplicity from the full V0
235 TH2F *fRefMultV0Corr; //! Reference multiplicity in the AOD and multiplicity from the V0 sectors with no jets (2 leading)
236 TH2F *fFullV0V0Corr; //! Multiplicity from the full V0, Multiplicity from the V0 sectors with no jets (2 leading)
237 TH3F *fNTXV0MultPt; //! NTX, V0 corrected multiplicity, and jet pT
238 TH3F *fNTXCBMultPt; //! NTX, Central Barrel corrected multiplicity, and jet pT
239 TH2F *fNChTrRDMultOJ[8]; //! Number of charged tracks in the jets as a function of jet pt (Real Data), for reference multiplicities in pp, 1 Jet
240 TH2F *fSCMRDMultOJ[8]; //! Second central moment as a function of jet pt (Real Data), for reference multiplicities in pp, 1 Jet
241 TH2F *fNChTrRDMultSEOJ[8]; //! Number of charged tracks in the jets as a function of jet pt (Real Data), for 2nd reference multiplicities in pp, 1 Jet
242 TH2F *fSCMRDMultSEOJ[8]; //! Second central moment as a function of jet pt (Real Data), for 2nd reference multiplicities in pp, 1 Jet
243 Double_t fMinpTValUE; // Minimum pT track cut for the UE multiplicity, default 2 GeV for debugging
244 TH2F *fRefMultFullV0UJ; //! Reference multiplicity in the AOD and multiplicity from the full V0, un jet
245 TH2F *fRefMultV0CorrUJ; //! Reference multiplicity in the AOD and multiplicity from the V0 sectors with no jets (2 leading), un jet
246 TH2F *fFullV0V0CorrUJ; //! Multiplicity from the full V0, Multiplicity from the V0 sectors with no jets (2 leading), un jet
247 TH2F *fMultWOJetVZeroUJ; //! Multiplicity without jets, and VZERO multiplicity, un jet
248 TH2F *fRefMultWOJetUJ; //! Reference multiplicity in the AOD and multiplicity without jets, un jet
249 Double_t fMaxpTValUE; // Maximum pT track cut for the UE multiplicity, default 2 GeV for debugging
250 TH2F *fRefAODTrackCount; //! Correlation between ref aod mult. and my own counting
251 TH2F *fRefAODTrackCountUJ; //! Correlation between ref aod mult. and my own counting, single jet event
252 TH2F *fTrackCountWOJet; //! Correlation between my own counting TPC & soft TPC
253 TH2F *fTrackCountWOJetUJ; //! Correlation between my own counting TPC & soft TPC UJ
254 TH2F *fTrackCountWOJetUJMC; //! Correlation between my own counting TPC & soft TPC UJ solo MC
255 TH2F *fFullV0V0CorrUJMC; //! Multiplicity from the full V0, Multiplicity from the V0 sectors with no jets, un jet MC no real V0
256 TH2F *fNChTrRDMultOJMC[8]; //! Number of charged tracks in the jets as a function of jet pt (MC), for reference multiplicities in pp, 1 Jet
257 TH2F *fSCMRDMultOJMC[8]; //! Second central moment as a function of jet pt (MC), for reference multiplicities in pp, 1 Jet
258 TH2F *fNChTrRDMultSEOJMC[8]; //! Number of charged tracks in the jets as a function of jet pt (MC), for 2nd reference multiplicities in pp, 1 Jet
259 TH2F *fSCMRDMultSEOJMC[8]; //! Second central moment as a function of jet pt (MC), for 2nd reference multiplicities in pp, 1 Jet
260 Double_t fMinpTValMC; // Minimum pT track cut for the MC multiplicity, default 2 GeV for debugging
261 Double_t fIncExcR; // Increase in the exclusion radius value
262 Bool_t fForceNotTR; // Force NOT to use track references
263 Bool_t fNotExtDiJEx; // Not extend the exclusion in the dijet area, old behaviour
264 TH3F *fMinTrackPtInNTXRecalc; //! Histo to save fMinTrackPtInNTX after recalculation as a function of jet pT
265 TH2F *fMaxTrackPtInNTXRecalc; //! Histo to save fMaxTrackPtInNTX after recalculation as a function of jet pT
266 TH3F *fPtDistInJetConeRaw; //! pT distributions of tracks inside the cone for jet pT (raw) ranges and centralities
267 TH3F *fPtDistInPerpConeRaw; //! pT distributions of tracks inside the perpendicular cone for jet pT (raw) ranges and centralities
268 TH3F *fPtInPerpCon; //! summed pT from the perpendicular cone for jet pT (raw) ranges and centralities
269 Double_t fMinTrackPtInNTXR; // Minimum track pT taken into the NTX re-calculation
270 Double_t fMaxTrackPtInNTXR; // Maximum track pT taken into the NTX re-calculation
271 Double_t fEventCent; // event centrality
272 TH2F *fNChTrRecPerpMultSEOJ[8]; //! Number of charged tracks in the perpendicular cone reco or real, with multiplicities
273 TH1F *fJetEtaAll; //! Eta distribution of all the found jets, no cuts
274 TH1F *fJetEtaOnlyTPCcut; //! Eta distribution of all the found jets, only with eta acceptance cut
275 TH1F *fJetEtaJetPt[3]; //! Eta distribution of analyzed jets, 3 ranges of pT
276 TH3F *fNChTrRecECorrPPMult; //! Number of charged tracks in the energy corrected jet, as a function of corrected jet pt, pp mult
277 TH3F *fNChTrRecPerpECorrPPMult; //! Number of charged tracks in the perpendicular after correction, as a func. of corr. jet pt, pp mult
278 Bool_t fForceSkipSJ; // Force to skip single track jets
279 TH2F *fJetPtCentPbPbRaw; //! Raw pT spectrum of reco jets, centrality in PbPb
280 TH2F *fJetPtCentPbPbCorr; //! Corrected pT spectrum of reco jets, centrality in PbPb
281 Double_t fJetAcceptance; // Acceptance cut on jets, for multiplicity in PbPb
282 Bool_t fIncreasingExcl; // Flag to indicate that the analyis increases exclusion beyond jet radius
283 TH3F *fTotTracksCone; //! total number of tracks in the jet cone, for jet pT (raw) ranges and centralities
284 Int_t fTotTracksInCone; // Total number of tracks in the jet cone
285
286 Double_t fTTrackRandomRejection; // Percentage of tracks from the event randomly rejected
287 Double_t fJTrackRandomRejection; // Percentage of tracks from the jet randomly rejected
288 TH1F *fJEtaMCMultOJ[8]; //! Eta distribution of jets as a function of jet pt (MC), for V0-like multiplicities in pp, 1 Jet
289 TH1F *fJEtaMCMultSEOJ[8]; //! Eta distribution of jets as a function of jet pt (MC), for TPC-like multiplicities in pp, 1 Jet
290 TH1F *fJEtaRDMultOJ[8]; //! Eta distribution of jets as a function of jet pt (Reco Data), for V0 multiplicities in pp, 1 Jet
291 TH1F *fJEtaRDMultSEOJ[8]; //! Eta distribution of jets as a function of jet pt (Reco Data), for TPC-like multiplicities in pp, 1 Jet
292 TH1F *fJetPtMCMultOJ[8]; //! Pt spectrum jets (MC), for V0-like multiplicities in pp, 1 jet
293 TH1F *fJetPtMCMultSEOJ[8]; //! Pt spectrum jets (MC), for TPC-like multiplicities in pp, 1 jet
294 TH1F *fJetPtRDMultOJ[8]; //! Pt spectrum jets (Reco Data), for V0 multiplicities in pp, 1 jet
295 TH1F *fJetPtRDMultSEOJ[8]; //! Pt spectrum jets (Reco Data), for TPC multiplicities in pp, 1 jet
296 TH2F *fEntriesQuark[8]; //! Quark NT90 in MC in the multiplicity bins
297 TH2F *fEntriesGluon[8]; //! Gluon NT90 in MC in the multiplicity bins
298 Double_t fMinPtInGlobMult; // Min pT used in the global multiplicity calculation
299
300 AliAnalysisTaskPartonDisc(const AliAnalysisTaskPartonDisc&); // not implemented
301 AliAnalysisTaskPartonDisc& operator=(const AliAnalysisTaskPartonDisc&); // not implemented
302
303 ClassDef(AliAnalysisTaskPartonDisc, 4);
304};
305
306#endif