updates from salvatore
[u/mrichter/AliRoot.git] / PWGGA / EMCALJetTasks / AliAnalysisTaskSAJF.h
CommitLineData
00514d01 1#ifndef ALIANALYSISTASKSAJF_H
2#define ALIANALYSISTASKSAJF_H
25283b37 3
00514d01 4// $Id$
25283b37 5
6class TClonesArray;
7class TString;
25283b37 8class TH1F;
9class TH2F;
e44e8726 10class AliRhoParameter;
25283b37 11
6fd5039f 12#include "AliAnalysisTaskEmcalJet.h"
25283b37 13
6fd5039f 14class AliAnalysisTaskSAJF : public AliAnalysisTaskEmcalJet {
25283b37 15 public:
91f4b7c5 16
00514d01 17 AliAnalysisTaskSAJF();
18 AliAnalysisTaskSAJF(const char *name);
19 virtual ~AliAnalysisTaskSAJF();
25283b37 20
21 void UserCreateOutputObjects();
25283b37 22 void Terminate(Option_t *option);
23
6fd5039f 24 void SetJetMinRC2LJ(Float_t d) { fMinRC2LJ = d ; }
25 void SetEmbJetsName(const char *n) { fEmbJetsName = n ; }
26 void SetRandTracksName(const char *n) { fRandTracksName = n ; }
27 void SetRandClusName(const char *n) { fRandCaloName = n ; }
e44e8726 28 void SetEmbTracksName(const char *n) { fEmbTracksName = n ; }
29 void SetEmbClusName(const char *n) { fEmbCaloName = n ; }
30 void SetRhoName(const char *n) { fRhoName = n ; }
25283b37 31
32 protected:
9b265496 33 void ExecOnce() ;
6fd5039f 34 Bool_t RetrieveEventObjects() ;
35 Bool_t FillHistograms() ;
36 void GetLeadingJets(Int_t &maxJetIndex, Int_t &max2JetIndex) ;
37 void DoJetLoop() ;
e44e8726 38 void DoEmbJetLoop(AliEmcalJet* &embJet, TObject* &embPart) ;
39 void DoTrackLoop() ;
40 void DoClusterLoop() ;
9b265496 41 void GetRigidCone(Float_t &pt, Float_t &ptrigid, Float_t &eta, Float_t &phi, Bool_t acceptMC = kFALSE,
b12a85c3 42 AliEmcalJet *jet = 0, TClonesArray* tracks = 0, TClonesArray* clusters = 0) const;
c554a987 43
b12a85c3 44 Float_t fMinRC2LJ; // Minimum distance random cone to leading jet
e44e8726 45 TString fEmbJetsName; // Name of embedded jet collection
46 TString fEmbTracksName; // Name of embedded track collection
47 TString fEmbCaloName; // Name of embedded calo cluster collection
b12a85c3 48 TString fRandTracksName; // Name of randomized track collection
49 TString fRandCaloName; // Name of randomized calo cluster collection
226f511d 50 TString fRhoName; // Name of rho object
df43b607 51
2bee31e9 52 TClonesArray *fEmbJets; //!Embedded Jets
e44e8726 53 TClonesArray *fEmbTracks; //!Embedded tracks
54 TClonesArray *fEmbCaloClusters; //!Embedded clusters
b12a85c3 55 TClonesArray *fRandTracks; //!Randomized tracks
56 TClonesArray *fRandCaloClusters; //!Randomized clusters
e44e8726 57 AliRhoParameter *fRho; //!Event rho
b12a85c3 58
59 // General histograms
226f511d 60 TH1F *fHistCentrality; //!Event centrality distribution
e44e8726 61 TH1F *fHistEvents[4]; //!Events accepted/rejected
62 TH1F *fHistTracksPt[4]; //!Inclusive track pt spectrum
63 TH1F *fHistClustersPt[4]; //!Inclusive clusters pt spectrum
df43b607 64 TH2F *fHistJetPhiEta[4]; //!Phi-Eta distribution of jets
226f511d 65 TH1F *fHistJetsPt[4]; //!Inclusive jet pt spectrum
df43b607 66 TH2F *fHistJetsPtArea[4]; //!Jet pt vs. area
226f511d 67 TH1F *fHistLeadingJetPt[4]; //!Leading jet pt spectrum
226f511d 68 TH1F *fHist2LeadingJetPt[4]; //!Second leading jet pt spectrum
b12a85c3 69 TH2F *fHistJetsNEFvsPt[4]; //!Jet neutral energy fraction vs. jet pt
70 TH2F *fHistJetsZvsPt[4]; //!Constituent Pt over Jet Pt ratio vs. jet pt
e44e8726 71 TH2F *fHistMaxTrackPtvsJetPt[4]; //!Max constituent track pt vs. jet pt
72 TH2F *fHistMaxClusPtvsJetPt[4]; //!Max constituent cluster pt vs. jet pt
73 TH2F *fHistMaxPartPtvsJetPt[4]; //!Max constituent particle (track or cluster) pt vs. jet pt
74 TH2F *fHistMaxTrackPtvsJetCorrPt[4]; //!Max constituent track pt vs. jet pt
75 TH2F *fHistMaxClusPtvsJetCorrPt[4]; //!Max constituent cluster pt vs. jet pt
76 TH2F *fHistMaxPartPtvsJetCorrPt[4]; //!Max constituent particle (track or cluster) pt vs. jet pt
b12a85c3 77
78 // Rho
2bddb6ae 79 TH1F *fHistRho[4]; //!Rho distribution
80 TH2F *fHistRhoVSleadJetPt; //!Area(leadjetarea) * rho vs. leading jet pt
81 TH1F *fHistCorrJetsPt[4]; //!Corrected inclusive jet pt spectrum
82 TH2F *fHistCorrJetsPtArea[4]; //!Jet pt vs. area
2bddb6ae 83 TH1F *fHistCorrLeadingJetPt[4]; //!Corrected leading jet pt spectrum
b12a85c3 84
85 // Random cones
86 TH2F *fHistRCPhiEta; //!Phi-Eta distribution of random cones
9b265496 87 TH1F *fHistRCPtRigid[4]; //!Random cone pt, rigid
226f511d 88 TH1F *fHistRCPt[4]; //!Random cone pt
89 TH1F *fHistRCPtExLJ[4]; //!Random cone pt, imposing min distance from leading jet
b12a85c3 90 TH1F *fHistRCPtRand[4]; //!Random cone pt, randomized particles
91 TH2F *fHistRCPtExLJVSDPhiLJ; //!Random cone pt, imposing min distance from leading jet, vs. deltaPhi leading jet
92 TH2F *fHistRhoVSRCPt; //!Rho vs. Pt(RCExLJ) / Area(RCExLJ)
9b265496 93 TH1F *fHistDeltaPtRCRigid[4]; //!deltaPt = Pt(RC) - A * rho, rigid
b12a85c3 94 TH1F *fHistDeltaPtRC[4]; //!deltaPt = Pt(RC) - A * rho
95 TH1F *fHistDeltaPtRCExLJ[4]; //!deltaPt = Pt(RC) - A * rho, imposing min distance from leading jet
96 TH1F *fHistDeltaPtRCRand[4]; //!deltaPt = Pt(RC) - A * rho, randomzied particles
97
98 // Jet embedding
e44e8726 99 TH1F *fHistEmbJetsPt[4]; //!Pt distribution of embedded jets
100 TH1F *fHistEmbJetsCorrPt[4]; //!Pt distribution of embedded jets
226f511d 101 TH1F *fHistEmbPart[4]; //!Pt distribution of embedded particle
b12a85c3 102 TH2F *fHistEmbJetPhiEta; //!Phi-Eta distribution of embedded jets
103 TH2F *fHistEmbPartPhiEta; //!Phi-Eta distribution of embedded particles
104 TH2F *fHistRhoVSEmbBkg; //!Area(embjet) * rho vs. Pt(embjet) - Pt(embtrack)
105 TH1F *fHistDeltaPtEmb[4]; //!deltaPt = Pt(embjet) - Area(embjet) * rho - Pt(embtrack)
25283b37 106
107 private:
00514d01 108 AliAnalysisTaskSAJF(const AliAnalysisTaskSAJF&); // not implemented
109 AliAnalysisTaskSAJF &operator=(const AliAnalysisTaskSAJF&); // not implemented
25283b37 110
98750b70 111 ClassDef(AliAnalysisTaskSAJF, 7) // jet analysis task
25283b37 112};
113#endif