]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskJetShapeGR.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / UserTasks / AliAnalysisTaskJetShapeGR.h
CommitLineData
e1239602 1#ifndef ALIANALYSISTASKJETSHAPEGR_H
2#define ALIANALYSISTASKJETSHAPEGR_H
3
4class TH1;
5class TH2;
6class TH3;
7class TH3F;
8class THnSparse;
9class TF1;
10class TLorentzVector;
11class TClonesArray;
12class TArrayI;
13class TTree;
14class TLorentzVector;
15class AliAnalysisManager;
16class AliVParticle;
17class AliJetContainer;
18
19namespace fastjet {
20 class PseudoJet;
21 class GenericSubtractor;
22}
23
24#include "AliAnalysisTaskEmcalJet.h"
25
26class AliAnalysisTaskJetShapeGR : public AliAnalysisTaskEmcalJet {
27 public:
28
29 AliAnalysisTaskJetShapeGR();
30 AliAnalysisTaskJetShapeGR(const char *name);
31 virtual ~AliAnalysisTaskJetShapeGR();
32
33 void UserCreateOutputObjects();
34 void Terminate(Option_t *option);
35
36 //Setters
37 void SetCreateTree(Bool_t b) { fCreateTree = b ; }
38
39 void SetJetContainerBase(Int_t c) { fContainerBase = c ; }
40 void SetJetContainerSub(Int_t c) { fContainerSub = c ; }
41 void SetJetContainerTrue(Int_t c) { fContainerTrue = c ; }
42 void SetMinFractionShared(Double_t f) { fMinFractionShared = f ; }
43 void SetSingleTrackEmbedding(Bool_t b) { fSingleTrackEmb = b ; }
44
45 protected:
46 Bool_t RetrieveEventObjects();
47 Bool_t Run();
48 Bool_t FillHistograms();
15a3ff83 49 Bool_t FillTrueJets();
e1239602 50
51 AliVParticle* GetEmbeddedConstituent(AliEmcalJet *jet);
52
53 Double_t CalcGR(AliEmcalJet *jet, Int_t ic);
15a3ff83 54 Double_t CalcDeltaGR(AliEmcalJet *jet, Int_t ic, TArrayF *fNum, TArrayF *fDen);//Double_t *num, Double_t *den);
55 Double_t GetDeltaPhi(Double_t phi1,Double_t phi2);
e1239602 56
57 Int_t fContainerBase; // jets to be analyzed
58 Int_t fContainerSub; // subtracted jets to be analyzed
59 Int_t fContainerTrue; // true jets to be analyzed
60 Double_t fMinFractionShared; // only fill histos for jets if shared fraction larger than X
61 Bool_t fSingleTrackEmb; // single track embedding
62 Bool_t fCreateTree; // create output tree
63
64 TTree *fTreeJetBkg; //!tree with jet and bkg variables
65 TLorentzVector *fJet1Vec; // jet1(AA) vector
66 TLorentzVector *fJet2Vec; // jet2(probe) vector
67 TLorentzVector *fJetSubVec; // subtracted AA jet vector
68 Float_t fArea; // area
69 Float_t fAreaPhi; // area phi
70 Float_t fAreaEta; // area eta
71 Float_t fRho; // rho
72 Float_t fRhoM; // rho_m
73 Int_t fNConst; // N constituents in jet1
74 Int_t fMatch; // 1: matched to MC jet; 0: no match
15a3ff83 75 Double_t fDRStep; // step width
76 Double_t fMaxR; // max R
e1239602 77
e1239602 78 TH2F **fh2PtTrueDeltaGR; //! true jet pT vs (Msub - Mtrue)
79 TH2F **fh2PtTrueDeltaGRRel; //! true jet pT vs (Msub - Mtrue)/Mtrue
80 THnSparse **fhnGRResponse; //! Msub vs Mtrue vs PtCorr vs PtTrue
81
15a3ff83 82 //Histos for true jets
83 TH1F **fh1PtTrue; //! bookkeep number of jets vs Pt
84 TH3F **fh3DeltaGRNumRPtTrue; //! Numerator of DeltaGR vs R vs Pt
85 TH3F **fh3DeltaGRDenRPtTrue; //! Denomerator of DeltaGR vs R vs Pt
86 TH2F **fh2DeltaGRNumRPtTrue; //! Numerator of DeltaGR vs R vs Pt : filled with weights of sum
87 TH2F **fh2DeltaGRDenRPtTrue; //! Denomerator of DeltaGR vs R vs Pt : filled with weights of sum
88
89 //Histos for raw AA jets
90 TH1F **fh1PtRaw; //! bookkeep number of jets vs Pt
91 TH3F **fh3DeltaGRNumRPtRaw; //! Numerator of DeltaGR vs R vs Pt
92 TH3F **fh3DeltaGRDenRPtRaw; //! Denomerator of DeltaGR vs R vs Pt
93 TH2F **fh2DeltaGRNumRPtRaw; //! Numerator of DeltaGR vs R vs Pt : filled with weights of sum
94 TH2F **fh2DeltaGRDenRPtRaw; //! Denomerator of DeltaGR vs R vs Pt : filled with weights of sum
95
96 //Histos for raw AA jets matched to MC
97 TH1F **fh1PtRawMatch; //! bookkeep number of jets vs Pt
98 TH3F **fh3DeltaGRNumRPtRawMatch; //! Numerator of DeltaGR vs R vs Pt
99 TH3F **fh3DeltaGRDenRPtRawMatch; //! Denomerator of DeltaGR vs R vs Pt
100 TH2F **fh2DeltaGRNumRPtRawMatch; //! Numerator of DeltaGR vs R vs Pt : filled with weights of sum
101 TH2F **fh2DeltaGRDenRPtRawMatch; //! Denomerator of DeltaGR vs R vs Pt : filled with weights of sum
102
103 //Histos for matched jets and subtracted
104 TH1F **fh1PtMatch; //! bookkeep number of jets vs Pt
105 TH3F **fh3DeltaGRNumRPtMatch; //! Numerator of DeltaGR vs R vs Pt
106 TH3F **fh3DeltaGRDenRPtMatch; //! Denomerator of DeltaGR vs R vs Pt
107 TH2F **fh2DeltaGRNumRPtMatch; //! Numerator of DeltaGR vs R vs Pt : filled with weights of sum
108 TH2F **fh2DeltaGRDenRPtMatch; //! Denomerator of DeltaGR vs R vs Pt : filled with weights of sum
109 TH2F **fh2DeltaGRNumRPtTrueMatch; //! Numerator of DeltaGR vs R vs Pt : filled with weights of sum
110 TH2F **fh2DeltaGRDenRPtTrueMatch; //! Denomerator of DeltaGR vs R vs Pt : filled with weights of sum
111
e1239602 112 private:
113 AliAnalysisTaskJetShapeGR(const AliAnalysisTaskJetShapeGR&); // not implemented
114 AliAnalysisTaskJetShapeGR &operator=(const AliAnalysisTaskJetShapeGR&); // not implemented
115
116 ClassDef(AliAnalysisTaskJetShapeGR, 1)
117};
118#endif
119
120
121