1 #ifndef ALIANALYSISTASKDELTAPT_H
2 #define ALIANALYSISTASKDELTAPT_H
12 #include "AliAnalysisTaskEmcalJet.h"
14 class AliAnalysisTaskDeltaPt : public AliAnalysisTaskEmcalJet {
17 AliAnalysisTaskDeltaPt();
18 AliAnalysisTaskDeltaPt(const char *name);
19 virtual ~AliAnalysisTaskDeltaPt();
21 void UserCreateOutputObjects();
22 void Terminate(Option_t *option);
24 void SetJetMinRC2LJ(Float_t d) { fMinRC2LJ = d ; }
25 void SetEmbJetsName(const char *n) { fEmbJetsName = n ; }
26 void SetEmbTracksName(const char *n) { fEmbTracksName = n ; }
27 void SetEmbClusName(const char *n) { fEmbCaloName = n ; }
28 void SetRandTracksName(const char *n) { fRandTracksName = n ; }
29 void SetRandClusName(const char *n) { fRandCaloName = n ; }
30 void SetRCperEvent(Int_t n) { fRCperEvent = n ; }
31 void SetMCJetPtThreshold(Double_t t) { fMCJetPtThreshold = t ; }
35 Bool_t FillHistograms() ;
36 void GetLeadingJets(Int_t &maxJetIndex, Int_t &max2JetIndex) ;
37 AliEmcalJet* NextEmbeddedJet(Int_t i=-1) ;
38 void DoEmbTrackLoop() ;
39 void DoEmbClusterLoop() ;
40 void GetRandomCone(Float_t &pt, Float_t &eta, Float_t &phi,
41 AliEmcalJet *jet = 0, TClonesArray* tracks = 0, TClonesArray* clusters = 0) const;
43 Double_t fMCJetPtThreshold; // threshold for MC jets
44 Float_t fMinRC2LJ; // Minimum distance random cone to leading jet
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
48 TString fRandTracksName; // Name of randomized track collection
49 TString fRandCaloName; // Name of randomized calo cluster collection
50 Int_t fRCperEvent; // No. of random cones per event
52 TClonesArray *fEmbJets; //!Embedded jets
53 TClonesArray *fEmbTracks; //!Embedded tracks
54 TClonesArray *fEmbCaloClusters; //!Embedded clusters
55 TClonesArray *fRandTracks; //!Randomized tracks
56 TClonesArray *fRandCaloClusters; //!Randomized clusters
57 Int_t fEmbeddedClusterNIds; //!Embedded cluster id count
58 Int_t fEmbeddedClusterIds[999]; //!Embedded cluster ids
59 Int_t fEmbeddedTrackNIds; //!Embedded track id count
60 Int_t fEmbeddedTrackIds[999]; //!Embedded track ids
63 TH2 *fHistRCPhiEta; //!Phi-Eta distribution of random cones
64 TH1 *fHistRCPt[4]; //!Random cone pt
65 TH1 *fHistRCPtExLJ[4]; //!Random cone pt, imposing min distance from leading jet
66 TH1 *fHistRCPtRand[4]; //!Random cone pt, randomized particles
67 TH2 *fHistRCPtExLJVSDPhiLJ; //!Random cone pt, imposing min distance from leading jet, vs. deltaPhi leading jet
68 TH2 *fHistRhoVSRCPt[4]; //!Area(RC) * rho vs. Pt(RC)
69 TH1 *fHistDeltaPtRC[4]; //!deltaPt = Pt(RC) - A * rho
70 TH1 *fHistDeltaPtRCExLJ[4]; //!deltaPt = Pt(RC) - A * rho, imposing min distance from leading jet
71 TH1 *fHistDeltaPtRCRand[4]; //!deltaPt = Pt(RC) - A * rho, randomzied particles
74 TH2 *fHistEmbNotFoundPhiEta[4]; //!Phi-Eta of "not found" embedded particles
75 TH1 *fHistEmbNotFoundPt[4]; //!Pt of "not found" embedded particles
76 TH2 *fHistEmbRejectedJetsPhiEta[4];//!Phi-Eta of rejected embedded jets
77 TH1 *fHistEmbRejectedJetsPtArea[4];//!Pt-area of rejected embedded jets
78 TH3 *fHistEmbJetsPtArea[4]; //!Pt vs. area of embedded jets
79 TH3 *fHistEmbJetsCorrPtArea[4]; //!Pt-rho*A vs. area of embedded jets
80 TH2 *fHistEmbPartPtvsJetPt[4]; //!MC jet pt total jet pt
81 TH2 *fHistEmbPartPtvsJetCorrPt[4];//!MC jet pt total jet pt - rho*A
82 TH2 *fHistJetPtvsJetCorrPt[4]; //!Pt vs jet pt - rho*A
83 TH2 *fHistEmbJetsPhiEta; //!Phi-Eta distribution of embedded jets<
84 TH2 *fHistLeadPartPhiEta; //!Phi-Eta distribution of the leading particle of embedded jets
85 TH1 *fHistDistLeadPart2JetAxis[4];//!Distance between leading particle and jet axis
86 TH2 *fHistEmbBkgArea[4]; //!Pt(embjet) - Pt(embtrack) vs. area of embedded jets
87 TH2 *fHistRhoVSEmbBkg[4]; //!Area(embjet) * rho vs. Pt(embjet) - Pt(embtrack)
88 TH2 *fHistDeltaPtEmbArea[4]; //!deltaPt = Pt(embjet) - Area(embjet) * rho - Pt(embtrack)
91 AliAnalysisTaskDeltaPt(const AliAnalysisTaskDeltaPt&); // not implemented
92 AliAnalysisTaskDeltaPt &operator=(const AliAnalysisTaskDeltaPt&); // not implemented
94 ClassDef(AliAnalysisTaskDeltaPt, 3) // deltaPt analysis task