]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskEmcalJetMassResponse.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / UserTasks / AliAnalysisTaskEmcalJetMassResponse.h
CommitLineData
1ea3d0d4 1#ifndef ALIANALYSISTASKEMCALJETMASSRESPONSE_H
2#define ALIANALYSISTASKEMCALJETMASSRESPONSE_H
3
4class TH1;
5class TH2;
6class TH3;
7class TH3F;
8class THnSparse;
bda6a83f 9class TF1;
10class TLorentzVector;
1ea3d0d4 11class TClonesArray;
12class TArrayI;
4d3b366f 13class TTree;
14class TLorentzVector;
1ea3d0d4 15class AliAnalysisManager;
4d3b366f 16class AliVParticle;
1ea3d0d4 17class AliJetContainer;
18
19#include "AliAnalysisTaskEmcalJet.h"
20
21class AliAnalysisTaskEmcalJetMassResponse : public AliAnalysisTaskEmcalJet {
22 public:
23
24 AliAnalysisTaskEmcalJetMassResponse();
25 AliAnalysisTaskEmcalJetMassResponse(const char *name);
26 virtual ~AliAnalysisTaskEmcalJetMassResponse();
27
28 void UserCreateOutputObjects();
29 void Terminate(Option_t *option);
30
31 //Setters
4d3b366f 32 void SetCreateTree(Bool_t b) { fCreateTree = b ; }
33
1ea3d0d4 34 void SetJetContainerBase(Int_t c) { fContainerBase = c ; }
35 void SetMinFractionShared(Double_t f) { fMinFractionShared = f ; }
bda6a83f 36 void SetJetMassAverageFunc(TF1 *f) { f1JetMassAvg = f ; }
4d3b366f 37 void SetSingleTrackEmbedding(Bool_t b) { fSingleTrackEmb = b ; }
38 void SetSubtractMasslessParticleJet(Bool_t b) { fSubtractMassless = b ; }
1ea3d0d4 39
40 protected:
41 Bool_t RetrieveEventObjects();
42 Bool_t Run();
43 Bool_t FillHistograms();
44
bda6a83f 45 TLorentzVector GetSubtractedVector(AliEmcalJet *jet);
46 TLorentzVector GetSubtractedVectorCheat(AliEmcalJet *jet);
4d3b366f 47 TLorentzVector GetBkgVector(AliEmcalJet *jet, AliJetContainer *cont);
48 TLorentzVector GetBkgVectorCheat(AliEmcalJet *jet);
1ea3d0d4 49 Double_t GetJetMass(AliEmcalJet *jet);
4d3b366f 50 Double_t GetJetMassMasslessConstituents(AliEmcalJet *jet);
51 AliVParticle* GetEmbeddedConstituent(AliEmcalJet *jet);
1ea3d0d4 52
53 Int_t fContainerBase; // jets to be analyzed
54 Double_t fMinFractionShared; // only fill histos for jets if shared fraction larger than X
bda6a83f 55 TF1 *f1JetMassAvg; // parametrization of average jet mass
4d3b366f 56 Bool_t fSingleTrackEmb; // single track embedding
57 Bool_t fSubtractMassless; // subtract mass of jet assuming massless particles
58 Bool_t fCreateTree; // create output tree
bda6a83f 59
60 TH2F **fh2PtJet1DeltaMNoSub; //!pt jet1 vs delta-pt vs delta-M
61 TH2F **fh2PtJet2DeltaMNoSub; //!pt jet2 vs delta-pt vs delta-M
62
63 TH3F **fh3PtJet1DeltaPtDeltaMCheat; //!pt jet1 vs delta-pt vs delta-M
64 TH3F **fh3PtJet2DeltaPtDeltaMCheat; //!pt jet2 vs delta-pt vs delta-M
1ea3d0d4 65
66 TH3F **fh3PtJet1DeltaPtDeltaM; //!pt jet1 vs delta-pt vs delta-M
67 TH3F **fh3PtJet2DeltaPtDeltaM; //!pt jet2 vs delta-pt vs delta-M
4d3b366f 68 TH2F **fh2PtJet1DeltaE; //!pt jet1 vs delta-E
69 TH2F **fh2PtJet2DeltaE; //!pt jet2 vs delta-E
70 TH2F **fh2PtJet1DeltaP; //!pt jet1 vs delta-P
71 TH2F **fh2PtJet2DeltaP; //!pt jet2 vs delta-P
72 TH2F **fh2PtJet2DeltaM; //!pt jet2 vs delta-M
1ea3d0d4 73 TH3F **fh3PtJet1MJet1MJet2; //!pt jet1 vs jet mass jet1 vs jet mass jet2
74 TH3F **fh3PtJet2MJet1MJet2; //!pt jet2 vs jet mass jet1 vs jet mass jet2
75
4d3b366f 76 TH3F **fh3PtJet1DeltaPtDeltaMRho; //!pt jet1 vs delta-pt vs delta-M
77 TH2F **fh2PtJet1DeltaERho; //!pt jet1 vs delta-E
78 TH3F **fh3PtJet2DeltaPtDeltaMRho; //!pt jet2 vs delta-pt vs delta-M
79 TH2F **fh2PtJet2DeltaPxRho; //!pt jet2 vs delta-px
80 TH2F **fh2PtJet2DeltaPyRho; //!pt jet2 vs delta-py
81 TH2F **fh2PtJet2DeltaPzRho; //!pt jet2 vs delta-pz
82 TH2F **fh2PtJet2DeltaERho; //!pt jet2 vs delta-E
83 TH2F **fh2PtJet2DeltaMRho; //!pt jet2 vs delta-M
84 TH2F **fh2PtJet2DeltaPtRho; //!pt jet2 vs delta-pT
85 TH3F **fh3PtJet2DeltaEDeltaMRho; //!pt jet2 vs delta-E vs delta-M
86 TH3F **fh3PtJet2DeltaPDeltaMRho; //!pt jet2 vs delta-P vs delta-M
87
bda6a83f 88 TH2F **fh2PtJet1DeltaPtVecSub; //!pt jet1 (AA) vs delta pT while using vector subtraction
89
4d3b366f 90 TTree *fTreeJetBkg; //!tree with jet and bkg variables
91 TLorentzVector *fJet1Vec; // jet1(AA) vector
92 TLorentzVector *fJet2Vec; // jet2(probe) vector
93 TLorentzVector *fBkgVec; // bkg vector
94 Float_t fArea; // area
95 Float_t fAreaPhi; // area phi
96 Float_t fAreaEta; // area eta
97 Float_t fRho; // rho
98 Float_t fRhoM; // rho_m
99 Int_t fNConst; // N constituents in jet1
100 Float_t fJetMassMassless; // jet mass for massless constituents
101
1ea3d0d4 102 private:
103 AliAnalysisTaskEmcalJetMassResponse(const AliAnalysisTaskEmcalJetMassResponse&); // not implemented
104 AliAnalysisTaskEmcalJetMassResponse &operator=(const AliAnalysisTaskEmcalJetMassResponse&); // not implemented
105
106 ClassDef(AliAnalysisTaskEmcalJetMassResponse, 1)
107};
108#endif
109