AliPhysics  323987d (323987d)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskFullppJet.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKFULLPPJET_H
2 #define ALIANALYSISTASKFULLPPJET_H
3 
4 // **************************************
5 // Task used for the analysis of full pp jets
6 // In additional, functions needed for systematic
7 // uncertainties are also included
8 // *******************************************
9 
10 #include <vector>
11 
12 class TFormula;
13 class TH2F;
14 class TH1F;
15 class TF1;
16 class THnSparse;
17 class TRandom3;
18 class TObjArray;
19 class TClonesArray;
20 class TObject;
21 class TString;
22 class TProfile2D;
23 class AliAODEvent;
24 class AliESDEvent;
25 class AliMCEvent;
26 class AliStack;
27 class AliESDtrack;
28 class AliEMCALGeometry;
29 class AliEMCALRecoUtils;
30 class AliESDCaloCluster;
31 class AliFJWrapper;
32 class AliAODJet;
33 class TParticle;
34 
35 #include "AliESDtrackCuts.h"
36 #include "AliAnalysisTaskSE.h"
37 #ifndef __CINT__
38 #include "fastjet/JetDefinition.hh"
39 #include "fastjet/PseudoJet.hh"
40 #else
41 namespace fastjet {
42  class PseudoJet;
43 }
44 #endif
46  public:
48  AliAnalysisTaskFullppJet(const char *name);
49  virtual ~AliAnalysisTaskFullppJet();
50 
51  Bool_t Notify();
53  void UserExec(Option_t *option);
54  void Terminate(Option_t *);
55  void PrintConfig();
56 
57  enum {kTPCOnlyVtx = 1<<3,
58  kTrigger = 1<<4,
59  kHighZ = 1<<5,
60  kSuspicious = 1<<6,
61  kGluon = 1<<9,
62  kQuark = 1<<10,
63  kLeadCh = 1<<11 };
64 
65  enum { kHybrid=0,
67  kGlobal=2};
68 
70  void SetMCAna(Bool_t mc) { fIsMC=mc; }
71  void SetPhySelForMC(Bool_t phy) { fPhySelForMC=phy; }
72  void SetChargedMC(Bool_t mc) { fChargedMC=mc; }
76  void SetRunPeriod(char *p) { fPeriod=p; }
78  void SetXsec(Float_t Xsec) { fXsecScale=Xsec; }
82  void SetVerbosity(Int_t v) { fVerbosity = v; }
83  void SetTrackCutsType(Int_t type) { fTrackCutsType = type; }
84  void SetEsdTrackCuts(AliESDtrackCuts *cuts) { fEsdTrackCuts=cuts; }
85  void SetHybridTrackCuts1(AliESDtrackCuts *cuts) { fHybridTrackCuts1=cuts; }
86  void SetHybridTrackCuts2(AliESDtrackCuts *cuts) { fHybridTrackCuts2=cuts; }
87  void SetKinCutType(Int_t type) { fKinCutType = type; }
88  void SetZvtx(Double_t zvtx) { fZVtxMax = zvtx; }
89  void SetEtaMax(Double_t eta) { fTrkEtaMax = eta; }
90  void SetdEdxRange(Double_t min, Double_t max) { fdEdxMin=min; fdEdxMax=max; }
91  void SetEoverPRange(Double_t min, Double_t max) { fEoverPMin=min; fEoverPMax=max; }
92  void SetMatchType(Int_t type) { fMatchType=type; }
95  void SetUseGoodSM(Bool_t good) { fUseGoodSM=good; }
96  void SetStudySubEInHC(Bool_t study) { fStudySubEInHC=study; }
99  void SetCorrectHadron(Bool_t correct) { fHadronicCorrection=correct; }
100  void SetHCFraction(Float_t fraction) { fFractionHC=fraction; }
102  void SetNonStdBranch(char* name) { fNonStdBranch=name; }
103  void SetNonStdFile(char* name) { fNonStdBranch=name; }
104  void SetAlgorithm(char *algo) { fAlgorithm=algo; }
105  void SetRadius(char *r) { fRadius=r; }
107  void SetSpotGoodJet(Bool_t spot) { fSpotGoodJet=spot; }
112  void SetSmearMC(Double_t smear) { fSmearMC=smear; }
113  void SetRunUE(Bool_t run) { fRunUE=run; }
116 
117  //--------------------------------
118  // Kinematic cut
119  //--------------------------------
120  void SetPtRange(Double_t minMB, Double_t maxMB, Double_t minHT, Double_t maxHT)
121  { fTrkPtMin[0]=minMB; fTrkPtMax[0]=maxMB; fTrkPtMin[1]=minHT; fTrkPtMax[1]=maxHT; }
122 
123  void SetEtRange(Double_t minMB, Double_t maxMB, Double_t minHT, Double_t maxHT)
124  { fClsEtMin[0]=minMB; fClsEtMax[0]=maxMB; fClsEtMin[1]=minHT; fClsEtMax[1]=maxHT; }
125 
126  //--------------------------------
127  // Jet quality cut
128  //--------------------------------
130  { fJetNEFMin=min; fJetNEFMax=max; }
131 
132  //---------------------------------
133  // Systematic study
134  //---------------------------------
135  void SetSaveQAHistos(Bool_t save) { fSaveQAHistos=save; }
138  void SetSysTrkPtRes(Bool_t sys) { fSysTrkPtRes=sys; }
140  void SetSysTrkEff(Bool_t sys) { fSysTrkEff=sys; }
141  void SetVaryTrkEff(Double_t vary) { fVaryTrkEff=vary; }
143  void SetSysTrkClsCut(Double_t deta, Double_t dphi){ fCutdEta=deta; fCutdPhi=dphi; }
150 
151 
152 protected:
153  AliESDtrack *GetAcceptTrack(AliESDtrack *esdtrack);
155  Double_t GetOfflineTriggerProbability(AliESDCaloCluster *cluster);
156  Int_t GetClusterSuperModule(AliESDCaloCluster *cluster);
157  void ProcessMC(const Int_t r=0);
158  void GetMCInfo();
159  Bool_t IsGoodMcPartilce(const AliVParticle* vParticle, const Int_t ipart);
160  Int_t GetParentParton(const Int_t ipart);
161  Int_t FindSpatialMatchedJet(fastjet::PseudoJet jet, AliFJWrapper *jetFinder, Double_t &dEta, Double_t &dPhi, Double_t maxR);
162  Int_t FindEnergyMatchedJet(AliFJWrapper *jetFinder1, const Int_t index1, AliFJWrapper *jetFinder2, const Double_t fraction=0.5);
163  Bool_t HasPrimaryVertex() const;
164  Bool_t IsPrimaryVertexOk() const;
165  Bool_t IsTPCOnlyVtx() const;
166  Bool_t IsLEDEvent() const;
167  void CheckExoticEvent();
168  void CheckEventTriggerBit();
169  void BookHistos();
170  void GetESDTrax();
171  Bool_t IsElectron(AliESDtrack *track, Double_t clsE) const;
172  void GetESDEMCalClusters();
173  Bool_t IsGoodCluster(AliESDCaloCluster *cluster);
174  Double_t SubtractClusterEnergy(AliESDCaloCluster *cluster, Double_t &eRes, Double_t &MIPE, Double_t &MCsubE);
175  Double_t GetClusterEnergyResolution(AliESDCaloCluster *cluster);
176  void FindDetJets(const Int_t s=0, const Int_t a=0, const Int_t r=0);
177  void FillAODJets(TClonesArray *fJetArray, AliFJWrapper *jetFinder, const Bool_t isTruth = 0);
178  void AnalyzeJets(AliFJWrapper *jetFinder, const Int_t type, const Int_t r);
179  void RunAnalyzeUE(AliFJWrapper *jetFinder, const Int_t type, const Bool_t isMCTruth);
180  void AnalyzeSecondaryContribution(AliFJWrapper *jetFinder, const Int_t r, const Int_t etaCut);
181  void AnalyzeSecondaryContributionViaMatching(AliFJWrapper *jetFinder, const Int_t r, const Int_t type, const Int_t etaCut);
182  void GetSecondaryPtFraction(TParticle *particle, Double_t &chPt, Double_t &reGenPt, Double_t &reRecPt);
183  void CheckTPCOnlyVtx(const UInt_t trigger);
184  Bool_t IsGoodJet(fastjet::PseudoJet jet, Double_t radius);
185  Bool_t IsGoodJet(AliAODJet *jet, Double_t radius);
186  Double_t GetLeadingZ(const Int_t jetIndex, AliFJWrapper *jetFinder);
187  Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz, const Double_t jetPx, const Double_t jetPy, const Double_t jetPz) const;
188  Double_t GetMeasuredJetPtResolution(const Int_t jetIndex, AliFJWrapper *jetFinder);
190  Double_t GetJetMissPtDueToTrackingEfficiency(const Int_t jetIndex, AliFJWrapper *jetFinder, const Int_t radiusIndex);
191  Double_t GetExoticEnergyFraction(AliESDCaloCluster *cluster);
192  Double_t GetSmearedTrackPt(AliESDtrack *track);
193 
194  enum { kNBins = 20 };
195  enum { kNRadii = 3 };
196 
197  private:
198  Int_t fVerbosity; // Control output
199  Int_t fEDSFileCounter; // Keep track of the ESD file inside a chain
200  Int_t fNTracksPerChunk; // Number of tracks per ESD file; used for debugging
201  Bool_t fRejectPileup; // Flag to reject SPD pileup events
202  Bool_t fRejectExoticTrigger; // Flag to reject events triggered by exotic clusters
203  Int_t fAnaType; // 0-local, 1-grid
204  TString fPeriod; // Data period
207  AliMCEvent *fMC;
208  AliStack *fStack;
212  Bool_t fIsMC; // Flag of MC data
213  Bool_t fPhySelForMC; // Flag to run physics selection in case of MC data
214  Bool_t fChargedMC; // Flag to find only charged MC jets
215  Float_t fXsecScale; // Corss section for each pT hard bin
216  Double_t fCentrality; // V0M for current event
217  Double_t fZVtxMax; // Max vertex z cut
218  Int_t fTriggerType; // 0-MB, 1-EMC
219  Bool_t fCheckTriggerMask; // Flag to check the trigger mask for triggered events
220  Bool_t fIsTPCOnlyVtx; // Flag of events with ONLY TPC vertex
221  Bool_t fIsExoticEvent3GeV; // Flag of events with exotic cluster above 3 GeV
222  Bool_t fIsExoticEvent5GeV; // Flag of events with exotic cluster above 5 GeV
223  Bool_t fIsEventTriggerBit; // Flag of triggered events with valid trigger bit
224  Bool_t fOfflineTrigger; // Run offline trigger
228  AliEMCALGeometry *fGeom;
229  AliEMCALRecoUtils *fRecoUtil;
230  AliESDtrackCuts *fEsdTrackCuts; // Track cuts for good tracks
231  AliESDtrackCuts *fHybridTrackCuts1; // Track cuts for tracks without SPD hit
232  AliESDtrackCuts *fHybridTrackCuts2; // Track cuts for tracks witout SPD hit or ITS refit
233  Int_t fTrackCutsType; // 0-Global track, 1-TPCOnly track
234  Int_t fKinCutType; // 0-cut on track before jet finding, 1-cut on jet with high-pt tracks
235  Double_t fTrkEtaMax; // Max |eta| cut
236  Double_t fTrkPtMin[2]; // Min pt cut
237  Double_t fTrkPtMax[2]; // Max pt cut
238  Double_t fdEdxMin; // Min dE/dx cut
239  Double_t fdEdxMax; // Max dE/dx cut
240  Double_t fEoverPMin; // Min E/P cut
241  Double_t fEoverPMax; // Max E/P cut
242  Double_t fClsEtMin[2]; // Min et cut
243  Double_t fClsEtMax[2]; // Max et cut
244  Int_t fMatchType; // 0-extrapolation, 1-extrapolation + MC label
245  Bool_t fRejectExoticCluster; // Flag to reject exotic cluster
246  Bool_t fRemoveBadChannel; // Flag to remove problematic region in SM4
247  Bool_t fUseGoodSM; // Flag to not use trigger bit in SM2,3,4,5
248  Bool_t fStudySubEInHC; // If true, the hadronic correction will be ingored. For physics, it should be set to kFALSE
249  Bool_t fStudyMcOverSubE; // Study the over-subtraction of hadronic correction in simualtion.
250  Bool_t fElectronRejection; // Switches on electron correction to avoid double counting of electrons
251  Bool_t fHadronicCorrection; // switches on hadronic correction to avoid double counting of hadrons
252  Float_t fFractionHC; // fraction of hadronic correction
253  Double_t fHCLowerPtCutMIP; // Lower track pt cut for MIP correction
255  Double_t fJetNEFMin; // Min jet NEF cut
256  Double_t fJetNEFMax; // Max jet NEF cut
257  Bool_t fSpotGoodJet; // Good jet catching
258  Bool_t fFindChargedOnlyJet; // Find jets with TPC tracks
259  Bool_t fFindNeutralOnlyJet; // Find jets with EMCal clusters
260  Bool_t fCheckTrkEffCorr; // Check the procedure of tracking efficiency correction
261  Double_t fTrkEffCorrCutZ; // Cut on the tracks that are added back Z < 0.3
262  TF1 *fTrkEffFunc[3];
265  TRandom3 *fRandomGen;
266  Bool_t fRunUE; // Run analysis of underlying event
267  Bool_t fCheckTPCOnlyVtx; // Check events with TPC only vertices
268  Bool_t fRunSecondaries; // Run analysise for secondary particles
270 
271  Bool_t fSysJetTrigEff; // Flag of systematic uncertainty of jet trigger efficiency
272  Double_t fVaryJetTrigEff; // Variation of cluster E-scale for systematic uncertainty of jet trigger efficiency
273  Bool_t fSysTrkPtRes; // Flag of systematic uncertainty of tracking momentum resolution
274  Double_t fVaryTrkPtRes; // Variation of tracking momentum resolution
275  Bool_t fSysTrkEff; // Flag of systematic uncertainty of tracking efficiency
276  Double_t fVaryTrkEff; // Variation of tracking efficiency
277  Bool_t fSysTrkClsMth; // Flag of systematic uncertainty of track-cluster matching
278  Double_t fCutdEta; // Variation of dEta cut
279  Double_t fCutdPhi; // Variation of dPhi cut
280  Bool_t fSysNonLinearity; // Flag of systematic uncertainty of EMCal non-linearity
281  TF1 *fNonLinear;
282  Bool_t fSysClusterEScale; // Flag of systematic uncertainty of EMCal energy scale
283  Double_t fVaryClusterEScale; // Variation of EMCal energy scale
284  Bool_t fSysClusterERes; // Flag of systematic uncertainty of EMCal energy resolution
285  Double_t fVaryClusterERes; // Variation of EMCal energy resolution
286  Bool_t fSysClusterizer; // Flag of systematic uncertainty on clusterizer
287 
288  TString fNonStdBranch; // Non-std branch name for AOD jets
289  TString fNonStdFile; // Name of optional file that the non-std branch is written to
290  TString fAlgorithm; // name of algorithm
291  TString fRadius; // Jet cone radius
292  Int_t fRecombinationScheme; // Recombination scheme of jet finding
294  TClonesArray *fJetTCA[3][2][kNRadii];
295  Bool_t fConstrainChInEMCal; // Constain charged particle to be in EMCal acceptance
296  Bool_t fRejectNK; // Reject neutron and K_L
297  Bool_t fRejectWD; // Reject primaries, mainly k^0_S, that decay weakly
298  Bool_t fSmearMC; // Flag of smearing tracking resolution in MC to match data. Obselete.
301  TClonesArray *fMcTruthAntikt[kNRadii];
302 
304  Bool_t fSaveQAHistos; // Flag of saving QA histograms
308  TH1F *fhChunkQA;
309  TH1F *fVertexGenZ[2];
310  TH1F *fEventZ[2];
311  TH1F *fhNTrials[2];
312  TH1F *fhNMatchedTrack[2];
325  THnSparse *fJetEnergyFraction[3][kNRadii];
326  THnSparse *fJetNPartFraction[3][kNRadii];
327  TH1F *fJetCount[3][kNRadii];
335  TH2F *fhUEJetPtVsSumPt[3][2][2];
337  TH1F *fhUEJetPtNorm[3][2][2];
338  TH1F *fhClsE[2];
340  TH1F *fhSysClusterE[2][2];
342 
343  // Secondaries
354 
355  AliAnalysisTaskFullppJet(const AliAnalysisTaskFullppJet&); // not implemented
356  AliAnalysisTaskFullppJet &operator=(const AliAnalysisTaskFullppJet&); // not implemented
357 
359 };
360 
361 #endif
void SetSysTrkClsCut(Double_t deta, Double_t dphi)
void SetConstrainChargedInEMCal(Bool_t con)
Bool_t fRunUE
Random number generator.
void ana(Int_t mode=mGRID)
Definition: ana.C:86
TH2F * fhJetPtWithClsThres[2][kNRadii]
pt of jets containing tracks above certian threshold
void GetSecondaryPtFraction(TParticle *particle, Double_t &chPt, Double_t &reGenPt, Double_t &reRecPt)
void SetEoverPRange(Double_t min, Double_t max)
double Double_t
Definition: External.C:58
void SetEtRange(Double_t minMB, Double_t maxMB, Double_t minHT, Double_t maxHT)
Definition: External.C:260
void SetdEdxRange(Double_t min, Double_t max)
Bool_t IsGoodCluster(AliESDCaloCluster *cluster)
TH2F * fhJetResolutionNK[2][kNRadii]
Jet response due to missing weakly decayed particles using response matrix.
TH2F * fhHCTrkPtAmbig[2][kNRadii][5]
Cleanly subtracted charged pt.
TH1F * fhUEJetPtNorm[3][2][2]
Leading jet pt vs constituent pt in underlying event.
Definition: External.C:236
TH3F * fhJetPtVsZ[3][kNRadii]
Leading charged constituent Z vs jet pt.
TH1F * fhJetPtInExoticEvent[2][kNRadii]
Jet pt vs Fcross vs Zleading.
TH2F * fhJetResponseNKSM[2][kNRadii]
Jet resolution due to missing weakly decayed particles using response matrix.
TH2F * fhHCTrkPtClean[2][kNRadii][5]
f*subtracted cluster energy vs jet pt
AliESDtrackCuts * fEsdTrackCuts
Reco utility.
void AnalyzeSecondaryContributionViaMatching(AliFJWrapper *jetFinder, const Int_t r, const Int_t type, const Int_t etaCut)
TH1F * fEventZ[2]
Generated event vertex z.
TH1F * fhEventStatTPCVtx
Event counts used for jet analysis.
TClonesArray * fMcTruthAntikt[kNRadii]
Jet finder for particle jets.
AliAODEvent * fAOD
ESD object.
void SetPtRange(Double_t minMB, Double_t maxMB, Double_t minHT, Double_t maxHT)
TH1F * fhSysClusterE[2][2]
Jets in full TPC acceptance in events with TPC only vertex.
TH3F * fhFcrossVsZleading[2][kNRadii]
Error made by hadronic correction assessed by using particle jet.
AliESDtrack * GetAcceptTrack(AliESDtrack *esdtrack)
TH2F * fhNeutralPtInJet[3][kNRadii]
Subtracted energy due to hadronic correction.
TH2F * fhJetResponseNK[2][kNRadii]
Energy fraction lost due to weakly decaying particles.
TH2F * fhChargedPtInJet[3][kNRadii]
pt of neutral constituents in jet
TH2F * fhTrigNeuPtInJet[3][kNRadii]
pt of neutral constituents in jet
TH2F * fhUEJetPtVsSumPt[3][2][2]
Jet pt in exotic events.
void SetVaryClusterEScale(Double_t vary)
Double_t GetLeadingZ(const Int_t jetIndex, AliFJWrapper *jetFinder)
TF1 * fTriggerEfficiency[10]
Trigger turn-on curves of EMCal clusters.
void FillAODJets(TClonesArray *fJetArray, AliFJWrapper *jetFinder, const Bool_t isTruth=0)
TH2F * fhSysNCellVsClsE[2][2]
Cluster energy distribution before and after hadonic correction.
Bool_t IsElectron(AliESDtrack *track, Double_t clsE) const
AliFJWrapper * fDetJetFinder[3][2][kNRadii]
void FindDetJets(const Int_t s=0, const Int_t a=0, const Int_t r=0)
TH2F * fhJetResponseWP[2][kNRadii]
Jet response due to missing neutron and K0L using response matrix.
void SetTrkEffCorrCutZ(Double_t zcut)
TH2F * fhSubClsEVsJetPt[2][kNRadii][5]
pT distribution of pions detected
void SetRecombinationScheme(Int_t scheme)
TH1F * fJetCount[3][kNRadii]
Jet NPart fraction.
Double_t GetSmearedTrackPt(AliESDtrack *track)
Int_t GetClusterSuperModule(AliESDCaloCluster *cluster)
void SetHybridTrackCuts1(AliESDtrackCuts *cuts)
THnSparse * fJetEnergyFraction[3][kNRadii]
Contribution of low pt particles to jet energy.
TClonesArray * fJetTCA[3][2][kNRadii]
Jet finder.
Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz, const Double_t jetPx, const Double_t jetPy, const Double_t jetPz) const
void SetEsdTrackCuts(AliESDtrackCuts *cuts)
int Int_t
Definition: External.C:63
Bool_t fIsMC
Array of MC particles.
TH1F * fhClsE[2]
Leading jet normalization.
Double_t GetExoticEnergyFraction(AliESDCaloCluster *cluster)
unsigned int UInt_t
Definition: External.C:33
TH1F * fhNTrials[2]
reconstructed event vertex z
float Float_t
Definition: External.C:68
TH1D * fTriggerCurve[10]
Offline trigger mask.
TObjArray * fClusterArray
Array of input tracks.
void CheckTPCOnlyVtx(const UInt_t trigger)
TH2F * fhJetResponseWPSM[2][kNRadii]
Jet response due to missing neutron and K0L via matching.
void RunAnalyzeUE(AliFJWrapper *jetFinder, const Int_t type, const Bool_t isMCTruth)
Double_t SubtractClusterEnergy(AliESDCaloCluster *cluster, Double_t &eRes, Double_t &MIPE, Double_t &MCsubE)
Double_t GetJetMissPtDueToTrackingEfficiency(const Int_t jetIndex, AliFJWrapper *jetFinder, const Int_t radiusIndex)
TH2F * fhJetResolutionWP[2][kNRadii]
Jet resolution due to missing neutron and K0L using response matrix.
Definition: External.C:212
void SetJetNEFCut(Double_t min, Double_t max)
void SetCheckTriggerMask(Bool_t check)
void SetVaryJetTrigEff(Double_t vary)
void SetCorrectHadron(Bool_t correct)
Double_t fJetNEFMin
Parameterization of cluster energy resolution from test beam results.
TH1F * fhJetEventStat
Event counts to keep track of rejection criteria.
Bool_t fSysJetTrigEff
Response matrix for secondary particles.
AliEMCALGeometry * fGeom
Fit of trigger turn-on curves for EMCal clusters above 4-5 GeV.
TList * fOutputList
TCA of MC truth anti-kt jets.
AliEMCALRecoUtils * fRecoUtil
EMCal goemetry utility.
TH2F * fhJetPtWithTrkThres[2][kNRadii]
Jet pt vs track pt contribution vs track class.
void SetHybridTrackCuts2(AliESDtrackCuts *cuts)
AliMCEvent * fMC
AOD object.
AliFJWrapper * fTrueJetFinder[kNRadii]
Parameterazation of momentum resolution estimated from data.
Double_t GetOfflineTriggerProbability(AliESDCaloCluster *cluster)
void SetHCFraction(Float_t fraction)
TH2F * fhChLeadZVsJetPt[2][kNRadii]
pt of leading charged constituents in jet
void SetRemoveProblematicSM4(Bool_t remove)
TH2F * fhUEJetPtVsConsPt[3][2][2]
Leading jet pt vs underlying event pt.
TH3F * fRelTrkCon[2][kNRadii]
Jet pt vs constituent Z vs constituent type.
TH2F * fhNKFracVsJetPt[2][kNRadii]
NCell vs cluster energy before and after hadonic correction.
void SetStudyMcOverSubE(Bool_t study)
TH3F * fhJetResolutionWPSM[2][kNRadii]
Jet resolution due to missing neutron and K0L via matching.
TArrayI * fMcPartArray
Array of input clusters.
void SetRejectExoticCluster(Bool_t reject)
TH2F * fhSubEVsTrkPt[2][4]
of matched tracks per cluster
TObjArray * fTrackArray
MC stack.
TH1F * fVertexGenZ[2]
Check if the chunk is corrupted.
Int_t GetParentParton(const Int_t ipart)
TH3F * fhJetResolutionNKSM[2][kNRadii]
Jet response due to missing weakly decayed particles via matching.
Bool_t fSysClusterEScale
Non-linearity correction functions for data.
Int_t FindEnergyMatchedJet(AliFJWrapper *jetFinder1, const Int_t index1, AliFJWrapper *jetFinder2, const Double_t fraction=0.5)
TH2F * fhLeadNePtInJet[3][kNRadii]
pt of charged constituents in jet
AliAnalysisTaskFullppJet & operator=(const AliAnalysisTaskFullppJet &)
TH2F * fhJetPtVsLowPtCons[2][kNRadii][2]
pt of jets containing clusters above certian threshold
Bool_t fConstrainChInEMCal
TCA of jets: in - akt - r.
TH1F * fhChunkQA
Event counts for TPC only vertices.
Bool_t IsGoodJet(fastjet::PseudoJet jet, Double_t radius)
Int_t FindSpatialMatchedJet(fastjet::PseudoJet jet, AliFJWrapper *jetFinder, Double_t &dEta, Double_t &dPhi, Double_t maxR)
const char Option_t
Definition: External.C:48
TH1F * fhCorrTrkEffPtBin[2][kNRadii]
Fit function of tracking efficiency.
bool Bool_t
Definition: External.C:53
TH3F * fhJetInTPCOnlyVtx[2][kNRadii]
Cluster energy distribution.
Bool_t IsGoodMcPartilce(const AliVParticle *vParticle, const Int_t ipart)
TH2F * fHCOverSubE[kNRadii][5]
Ambiguously subtracted charged pt.
void SetRejectElectron(Bool_t reject)
Double_t GetMeasuredJetPtResolution(const Int_t jetIndex, AliFJWrapper *jetFinder)
TH1F * fhCorrTrkEffSample[2][kNRadii][kNBins]
Number of tracks per jet pt bin, used to correct the tracking efficiency explicitly.
TH2F * fHCOverSubEFrac[kNRadii][5]
Error made by hadronic correction assessed by using particle jet.
void AnalyzeSecondaryContribution(AliFJWrapper *jetFinder, const Int_t r, const Int_t etaCut)
ClassDef(AliAnalysisTaskFullppJet, 3)
void SetVaryClusterERes(Double_t vary)
TH2F * fhWeakFracVsJetPt[2][kNRadii]
Energy fraction lost due to missing neutron and K0L.
TRandom3 * fRandomGen
Tracking efficiency estimated from simulation.
THnSparse * fJetNPartFraction[3][kNRadii]
Jet energy fraction.
TH2F * fhLeadChPtInJet[3][kNRadii]
pt of leading neutral constituents in jet
Double_t GetClusterEnergyResolution(AliESDCaloCluster *cluster)
Bool_t reject
void AnalyzeJets(AliFJWrapper *jetFinder, const Int_t type, const Int_t r)