AliPhysics  ba8894a (ba8894a)
AliEmcalJetByJetCorrection.h
Go to the documentation of this file.
1 #ifndef ALIEMCALJETBYJETCORRECTION_H
2 #define ALIEMCALJETBYJETCORRECTION_H
3 
4 #include <TNamed.h>
5 #include <TObjArray.h>
6 #include <TArrayF.h>
7 #include <TClonesArray.h>
8 
9 class TH3;
10 class TProfile;
11 class AliEmcalJet;
12 class TList;
13 class THnSparse;
14 
16 {
17  public:
18 
20  AliEmcalJetByJetCorrection(const char* name);
24 
25  void SetTemplate(TH3 *h) { fh3JetPtDRTrackPt = h; }
27  void SetJetPtRange(Double_t min, Double_t max) {fJetPtMin = min; fJetPtMax = max;}
29  void SetEfficiencyHist(TH1 *h) { fhEfficiency = h ; }
30  void SetCorrectTemplateTrackpT(Bool_t correct=kTRUE) {fCorrectpTtrack = correct;}
31  void SetPoissonianNmissing(Bool_t set=kTRUE) {fNpPoisson=set;}
32  void SetNMissedTracks(Double_t number) {fNMissedTracks = number;}
34 
35  Int_t GetJetPtBin(const Double_t jetpt) const;
36  Double_t GetEfficiency(const Double_t pt) const;
37  Double_t GetMeanPtConstituents(const AliEmcalJet *jet, TClonesArray *fTracks) const;
38 
39  TProfile *GetAppliedEfficiency() const {return fpAppliedEfficiency;}
43  TList *GetListOfOutput() const {return fListOfOutput;}
44  void Init();
45  AliEmcalJet *Eval(const AliEmcalJet *jet, TClonesArray *fTracks);
46  TClonesArray *GetAddedTrackArray() const {return fArrayTrackCorr;}
47 
48  protected:
61  TRandom3 *fRndm;
63  // -- now done in the analysis task from the difference of the integral of the pt distr of the constituents of the particle level jet and the reco level jet
64  TClonesArray *fArrayTrackCorr;
66  //book-keeping object filled inside Eval()
67  TProfile *fpAppliedEfficiency;
68  THnSparse*fhNmissing;
70  private:
71  ClassDef(AliEmcalJetByJetCorrection, 8) // jet-by-jet correction class
72 };
73 #endif
void SetCorrectTemplateTrackpT(Bool_t correct=kTRUE)
void SetExternalDefinitionOfNmissed(Bool_t set=kTRUE)
double Double_t
Definition: External.C:58
Definition: External.C:244
TClonesArray * fArrayTrackCorr
TClonesArray containing the jet constituents after correction.
AliEmcalJetByJetCorrection & operator=(const AliEmcalJetByJetCorrection &jet)
void SetJetPtRange(Double_t min, Double_t max)
AliEmcalJet * Eval(const AliEmcalJet *jet, TClonesArray *fTracks)
void SetNMissedTracks(Double_t number)
Bool_t fNpPoisson
draw Nmissing particle from a Poissonian with mean Nconst(1/eff-1)
TH1D * fhSmoothEfficiency
single particle efficiency smooth (see Init())
Double_t GetEfficiency(const Double_t pt) const
TProfile * fpAppliedEfficiency
Control profile efficiency.
int Int_t
Definition: External.C:63
TList * fListOfOutput
list containing all histograms
Bool_t fExternalNmissed
Set to true if want to give Nmissing from the MassStructureTask.
Definition: External.C:212
TString fPartArrayN
Array of particles used for jet reconstruction at particle level (need to make it transient probably)...
THnSparse * fhNmissing
pTjet vs number of added constituents (depends on settings) versus Nmissed constituents ...
TRandom3 * fRndm
TRandom3 object.
Double_t fBinWidthJetPt
jet pt bin width in which to do correction
TObjArray fCollTemplates
templates (2D histos with track pT vs r)
Double_t fEfficiencyFixed
fixed efficiency for all pT and all types of tracks
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:51
Bool_t fCorrectpTtrack
if true the templates are corrected by track efficiency
Double_t GetMeanPtConstituents(const AliEmcalJet *jet, TClonesArray *fTracks) const
Int_t GetJetPtBin(const Double_t jetpt) const
bool Bool_t
Definition: External.C:53
TClonesArray * GetAddedTrackArray() const
TH1 * fhEfficiency
single particle efficiency
void SetPoissonianNmissing(Bool_t set=kTRUE)
Definition: External.C:196
Bool_t fInitialized
status of initialization
Int_t fNMissedTracks
Track missed in reconstruction calculated from external input (to be improved)