]>
Commit | Line | Data |
---|---|---|
a487deae | 1 | #ifndef ALIANALYSISTASKDELTAPT_H |
2 | #define ALIANALYSISTASKDELTAPT_H | |
3 | ||
4 | // $Id$ | |
5 | ||
6 | class TClonesArray; | |
7 | class TString; | |
6a20534a | 8 | class TH1; |
9 | class TH2; | |
ca5c29fa | 10 | class TH3; |
a487deae | 11 | |
12 | #include "AliAnalysisTaskEmcalJet.h" | |
13 | ||
14 | class AliAnalysisTaskDeltaPt : public AliAnalysisTaskEmcalJet { | |
15 | public: | |
16 | ||
17 | AliAnalysisTaskDeltaPt(); | |
18 | AliAnalysisTaskDeltaPt(const char *name); | |
19 | virtual ~AliAnalysisTaskDeltaPt(); | |
20 | ||
21 | void UserCreateOutputObjects(); | |
22 | void Terminate(Option_t *option); | |
23 | ||
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 ; } | |
a487deae | 30 | void SetRCperEvent(Int_t n) { fRCperEvent = n ; } |
f660c2d6 | 31 | void SetMCJetPtThreshold(Double_t t) { fMCJetPtThreshold = t ; } |
a487deae | 32 | |
33 | protected: | |
34 | void ExecOnce() ; | |
35 | Bool_t FillHistograms() ; | |
36 | void GetLeadingJets(Int_t &maxJetIndex, Int_t &max2JetIndex) ; | |
f660c2d6 | 37 | AliEmcalJet* NextEmbeddedJet(Int_t i=-1) ; |
a487deae | 38 | void DoEmbTrackLoop() ; |
39 | void DoEmbClusterLoop() ; | |
40 | void GetRandomCone(Float_t &pt, Float_t &eta, Float_t &phi, | |
56f370b0 | 41 | AliEmcalJet *jet = 0, TClonesArray* tracks = 0, TClonesArray* clusters = 0, Bool_t bPartialExclusion = 0) const; |
42 | Double_t GetNColl() const; | |
43 | ||
a487deae | 44 | |
f660c2d6 | 45 | Double_t fMCJetPtThreshold; // threshold for MC jets |
a487deae | 46 | Float_t fMinRC2LJ; // Minimum distance random cone to leading jet |
47 | TString fEmbJetsName; // Name of embedded jet collection | |
48 | TString fEmbTracksName; // Name of embedded track collection | |
49 | TString fEmbCaloName; // Name of embedded calo cluster collection | |
50 | TString fRandTracksName; // Name of randomized track collection | |
51 | TString fRandCaloName; // Name of randomized calo cluster collection | |
52 | Int_t fRCperEvent; // No. of random cones per event | |
53 | ||
54 | TClonesArray *fEmbJets; //!Embedded jets | |
55 | TClonesArray *fEmbTracks; //!Embedded tracks | |
56 | TClonesArray *fEmbCaloClusters; //!Embedded clusters | |
57 | TClonesArray *fRandTracks; //!Randomized tracks | |
58 | TClonesArray *fRandCaloClusters; //!Randomized clusters | |
f660c2d6 | 59 | Int_t fEmbeddedClusterNIds; //!Embedded cluster id count |
60 | Int_t fEmbeddedClusterIds[999]; //!Embedded cluster ids | |
61 | Int_t fEmbeddedTrackNIds; //!Embedded track id count | |
62 | Int_t fEmbeddedTrackIds[999]; //!Embedded track ids | |
a487deae | 63 | |
64 | // Random cones | |
6a20534a | 65 | TH2 *fHistRCPhiEta; //!Phi-Eta distribution of random cones |
56f370b0 | 66 | TH1 **fHistRCPt; //!Random cone pt |
67 | TH1 **fHistRCPtExLJ; //!Random cone pt, imposing min distance from leading jet | |
68 | TH1 **fHistRCPtExPartialLJ; //!Random cone pt, imposing min distance from leading jet with 1/ncoll probability | |
69 | TH1 **fHistRCPtRand; //!Random cone pt, randomized particles | |
70 | TH2 **fHistRhoVSRCPt; //!Area(RC) * rho vs. Pt(RC) | |
71 | TH1 **fHistDeltaPtRC; //!deltaPt = Pt(RC) - A * rho | |
72 | TH1 **fHistDeltaPtRCExLJ; //!deltaPt = Pt(RC) - A * rho, imposing min distance from leading jet | |
73 | TH1 **fHistDeltaPtRCExPartialLJ; //!deltaPt = Pt(RC) - A * rho, imposing min distance from leading jet with 1/ncoll probability | |
74 | TH1 **fHistDeltaPtRCRand; //!deltaPt = Pt(RC) - A * rho, randomzied particles | |
a487deae | 75 | |
76 | // Jet embedding | |
56f370b0 | 77 | TH1 **fHistEmbNotFoundPt; //!Pt of "not found" embedded particles |
78 | TH2 **fHistEmbNotFoundPhiEta; //!Phi-Eta of "not found" embedded particles | |
79 | TH2 **fHistEmbRejectedJetsPhiEta; //!Phi-Eta of rejected embedded jets | |
80 | TH1 **fHistEmbRejectedJetsPtArea; //!Pt-area of rejected embedded jets | |
81 | TH3 **fHistEmbJetsPtArea; //!Pt vs. area of embedded jets | |
82 | TH3 **fHistEmbJetsCorrPtArea; //!Pt-rho*A vs. area of embedded jets | |
83 | TH2 **fHistEmbPartPtvsJetPt; //!MC jet pt total jet pt | |
84 | TH2 **fHistEmbPartPtvsJetCorrPt; //!MC jet pt total jet pt - rho*A | |
85 | TH2 **fHistJetPtvsJetCorrPt; //!Pt vs jet pt - rho*A | |
86 | TH1 **fHistDistLeadPart2JetAxis; //!Distance between leading particle and jet axis | |
87 | TH2 **fHistEmbBkgArea; //!Pt(embjet) - Pt(embtrack) vs. area of embedded jets | |
88 | TH2 **fHistRhoVSEmbBkg; //!Area(embjet) * rho vs. Pt(embjet) - Pt(embtrack) | |
89 | TH2 **fHistDeltaPtEmbArea; //!deltaPt = Pt(embjet) - Area(embjet) * rho - Pt(embtrack) | |
90 | TH2 *fHistRCPtExLJVSDPhiLJ; //!Random cone pt, imposing min distance from leading jet, vs. deltaPhi leading jet | |
91 | TH2 *fHistRCPtExPartialLJVSDPhiLJ;//!Random cone pt, imposing min distance from leading jet, vs. deltaPhi leading jet with 1/ncoll probability | |
ca5c29fa | 92 | TH2 *fHistEmbJetsPhiEta; //!Phi-Eta distribution of embedded jets< |
6a20534a | 93 | TH2 *fHistLeadPartPhiEta; //!Phi-Eta distribution of the leading particle of embedded jets |
a487deae | 94 | |
95 | private: | |
96 | AliAnalysisTaskDeltaPt(const AliAnalysisTaskDeltaPt&); // not implemented | |
97 | AliAnalysisTaskDeltaPt &operator=(const AliAnalysisTaskDeltaPt&); // not implemented | |
98 | ||
56f370b0 | 99 | ClassDef(AliAnalysisTaskDeltaPt, 4) // deltaPt analysis task |
a487deae | 100 | }; |
101 | #endif |