AliPhysics  e59a9ba (e59a9ba)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskJetShapeBase.h
Go to the documentation of this file.
1 
17 #ifndef ALIANALYSISTASKJETSHAPEBASE_H
18 #define ALIANALYSISTASKJETSHAPEBASE_H
19 
20 class TH1;
21 class TH2;
22 class TH3F;
23 class THnSparse;
24 class TF1;
25 class TArrayI;
26 class TTree;
27 class TLorentzVector;
28 class AliAnalysisManager;
29 class AliVParticle;
30 class AliJetContainer;
31 
33 
35  public:
37  kMass = 0, //jet mass
38  kRatMPt = 1 //ratio mass/pt jet
39  };
41  kDet = 0, //detector level
42  kPart = 1 //particle level
43  };
44 
46  AliAnalysisTaskJetShapeBase(const char *name);
48 
50  void Terminate(Option_t *option);
51 
52  //Setters
53  void SetCreateTree(Bool_t b) { fCreateTree = b ; }
54 
55  void SetJetContainerBase(Int_t c) { fContainerBase = c ; }
56  void SetJetContainerNoEmb(Int_t c) { fContainerNoEmb = c ; }
57  void SetJetContainerOverlap(Int_t c) { fContainerOverlap = c ; }
58  void SetMinFractionShared(Double_t f) { fMinFractionShared = f ; }
59  void SetSingleTrackEmbedding(Bool_t b, Int_t min = 99999, Int_t max = 999999) { fSingleTrackEmb = b; fMinLabelEmb = min; fMaxLabelEmb = max; }
60  void SetRemoveOverlapTrackJet(Bool_t b, Double_t r) { fOverlap = b; fRadius = r; if(!fSingleTrackEmb) Printf("No effect, since fSingleTrackEmb is false"); }
63  void SetUseSumw2(Bool_t b) { fUseSumw2 = b ; }
64  void SetSmallSystRanges(Bool_t small = kTRUE) { fSmallSyst = small; }
65  void SetNamesForTree(TString path, TString treename, TString branchnameD, TString branchnameP) { fPathTreeinputFile = path; fTreeinputName = treename; fBranchJDetName = branchnameD; fBranchJParName = branchnameP;}
66  void SetRhoWeights(Int_t nbins, Double_t *binlims, TString pathname, TString histname, Double_t maxrho);
67 
68 
69  protected:
70  Bool_t RetrieveEventObjects();
71  Bool_t Run();
72  //Bool_t FillHistograms();
73 
74  AliVParticle* GetEmbeddedConstituent(AliEmcalJet *jet);
75  void SetTree(TTree *tree);
76  void SetTreeFromFile(TString filenameM, TString treename);
78 
79  Double_t GetRhoFactor(Double_t ptdet, Double_t rhoCurrent);
80 
82  Int_t fContainerSub;
83 
86  Double_t fMinFractionShared;
87  Bool_t fSingleTrackEmb;
88  Bool_t fCreateTree;
91  Bool_t fUseSumw2;
92  Bool_t fOverlap;
93  Double_t fRadius;
94 
95  TTree *fTreeJetBkg;
96  TLorentzVector *fJet1Vec;
97  TLorentzVector *fJet2Vec;
98  TLorentzVector *fJetSubVec;
99  Float_t fArea;
100  Float_t fAreaPhi;
101  Float_t fAreaEta;
102  Float_t fRho;
103  Float_t fRhoM;
104  Int_t fNConst;
105  Int_t fMatch;
106  Int_t fMinLabelEmb;
107  Int_t fMaxLabelEmb;
108  Bool_t fSmallSyst;
109  TH2F **fh2MSubMatch;
116  THnSparse **fhnMassResponse;
117  THnSparse **fhnDeltaMass;
119  TH1F *fhNJetsSelEv;
127  TTree *fTreeEmb;
128  Bool_t fFromTree;
130  TString fTreeinputName;
131  TString fBranchJDetName;
132  TString fBranchJParName;
133  Int_t fThisEntry;
135  TLorentzVector *fVecD;
136  TLorentzVector *fVecP;
139  Double_t *fPtDetBinsForRho; //[fnBinsLimsForRho]
141 
142  TString fPathRhoDistr;
144  TH1D **fhRhoData;
145  TH1D **fhRhoMData;
146  Double_t fMaxRhoAvail;
147  TH1D *fRhoFactorQA;
148 
149 
150  private:
151 
152  AliAnalysisTaskJetShapeBase(const AliAnalysisTaskJetShapeBase&); // not implemented
154 
156  ClassDef(AliAnalysisTaskJetShapeBase, 5);
158 };
159 #endif
160 
161 
162 
TString fBranchJDetName
name of the detector level jet branch in the TTree
TTree * fTreeEmb
! tree with the TLorentzVector of the jet detector and particle level
TH3F ** fh3PtTrueDeltaMLeadPt
! true jet pT vs (Msub - Mtrue) vs LeadPt for matched jets
TH1D * fRhoFactorQA
! actual rho weighting factors used
Bool_t fSmallSyst
flag for the axes ranges in pPb
Bool_t fUseSumw2
activate sumw2 for output histograms
TH1D ** fhRhoMData
! rho distributions from data for different bins of pTDet leading
void SetRemoveOverlapTrackJet(Bool_t b, Double_t r)
THnSparse * fhnDeltaMassAndBkgInfo
! DeltaM, DeltapT bkg-unsubtracted M and pT, rho and rhom
void SetRhoWeights(Int_t nbins, Double_t *binlims, TString pathname, TString histname, Double_t maxrho)
Int_t fThisEntry
current entry in the embedded TTree
TH3F * fhJetSubMatchEtaPhiPt
! eta, phi, pt distribution of jet subtracted and matched
Int_t fnPtDetBinsForRho
Number of data rho (rhom) distributions in input (they are pT bins, 2 is pretty fine). If it is -1 (default) do not use this weighting.
TH3F ** fh3MSubPtTrueLeadPt
! subtracted jet mass vs true jet pT vs LeadPt for matched jets for matched jets
TH2F * fhJetEtaPhiOvl
! eta-phi distribution of the selected signal jets
Double_t GetRhoFactor(Double_t ptdet, Double_t rhoCurrent)
TH1D ** fhRhoData
! rho distributions from data for different bins of pTDet leading
Int_t fContainerOverlap
jets (jetO) with a pT cut selection to reject overlapping embedded single track (used only in single ...
TLorentzVector * fVecD
! vector with detector level jet
Int_t fMaxLabelEmb
max label of embedded particles
TString fPathRhoDistr
path to the file where the rho distibution from data is. Can be an alien path.
AliAnalysisTaskJetShapeBase & operator=(const AliAnalysisTaskJetShapeBase &)
void SetTreeFromFile(TString filenameM, TString treename)
Double_t fRadius
Radius that define overlap.
TLorentzVector * fJet1Vec
jet1(AA) vector
TString fBranchJParName
name of the detector level jet branch in the TTree
ResponseReference fResponseReference
true axis of response matrix
void SetNamesForTree(TString path, TString treename, TString branchnameD, TString branchnameP)
TH3F ** fh3MSubPtRawDRMatch
! subtracted jet mass vs subtracted jet pT vs distance to leading Pb-Pb jet
THnSparse ** fhnDeltaMass
! deltaM vs deltapT
THnSparse ** fhnMassResponse
! Msub vs Mtrue vs PtCorr vs PtTrue vs DR
Double_t fMinFractionShared
only fill histos for jets if shared fraction larger than X
TH1F * fhNJetsSelEv
! number of selected signal jets per event
Bool_t fOverlap
activate the check on overlap between single particle embedded and jetO (jet with a pT of at least 5 ...
TH3F ** fh3MTruePtTrueLeadPt
! true jet mass vs true jet pT vs LeadPt for matched jets for matched jets
void SetSmallSystRanges(Bool_t small=kTRUE)
TString fNameTHnSparseRhoDistr
base name of the histograms to be read (e.g."hRhoDataR_Bin"), the bin number is added ...
JetMassVarType fJetMassVarType
observable to use
TH2F ** fh2MSubMatch
! subtracted jet mass vs match index (0: no match; 1:match)
Double_t fMaxRhoAvail
above this value our ratio of rho is nor reliable
Int_t fMatch
1: matched to MC jet; 0: no match
void SetJetMassVarType(JetMassVarType t)
TTree * fTreeJetBkg
! tree with jet and bkg variables
TH2F ** fh2MSubPtRawAll
! subtracted jet mass vs subtracted jet pT
Int_t fMaxTreeEntries
number of entries in the TTree
Int_t fMinLabelEmb
min label of embedded particles
Base task in the EMCAL jet framework.
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:44
AliVParticle * GetEmbeddedConstituent(AliEmcalJet *jet)
Int_t fNConst
N constituents in jet1.
TH2F * fhRjetTrvspTj
! distance in R between each jetO and embedded single track (those below fRadius are rejected) ...
void SetSingleTrackEmbedding(Bool_t b, Int_t min=99999, Int_t max=999999)
const Int_t nbins
TString fPathTreeinputFile
path to the file where the external input Tree is (can be from alien)
Int_t fContainerSub
subtracted jets to be analyzed
Bool_t fFromTree
Input embedding from tree.
TLorentzVector * fJetSubVec
subtracted AA jet vector
void SetResponseReference(ResponseReference r)
TLorentzVector * fJet2Vec
jet2(probe) vector
TLorentzVector * fVecP
! vector with particle level jet
Bool_t fCreateTree
create output tree
TString fTreeinputName
name of the external input Tree
Int_t fContainerNoEmb
subtracted jets from Pb-Pb only events
Bool_t fSingleTrackEmb
single track embedding
Background fluctuation studies: dMdpT spectrum for PYTHIA and single track embedding.
Double_t * fPtDetBinsForRho
limits of the pT bins corresponding to each rho (rhom) distribution from data
Container for jet within the EMCAL jet framework.
Int_t fContainerBase
jets to be analyzed
TH3F ** fh3PtTrueDeltaMRelLeadPt
! true jet pT vs (Msub - Mtrue)/Mtrue vs LeadPt for matched jets
TH1F * fhptjetSMinusSingleTrack
! pT distribution of jets subtracting the pT of the embedded track