AliPhysics  1168478 (1168478)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskRhoBaseDev.h
Go to the documentation of this file.
1 
11 /* Copyright(c) 1998-2017, ALICE Experiment at CERN, All rights reserved. *
12  * See cxx source for full Copyright notice */
13 
14 #ifndef ALIANALYSISTASKRHOBASEDEV_H
15 #define ALIANALYSISTASKRHOBASEDEV_H
16 
17 class TString;
18 class TF1;
19 class TH1F;
20 class TH2F;
21 class TH3F;
22 class AliRhoParameter;
23 
24 #include <map>
25 #include <list>
26 #include <string>
27 
29 
30 
40  public:
42  AliAnalysisTaskRhoBaseDev(const char *name, Bool_t histo=kFALSE);
44 
46 
47  void SetOutRhoName(const char *name) { fOutRhoName = name ;
48  fOutRhoScaledName = Form("%s_Scaled",name); }
49  void SetScaleFunction(TF1* sf) { fScaleFunction = sf ; }
50  void SetRhoFunction(TF1* rf) { fRhoFunction = rf ; }
51  TF1* LoadRhoFunction(const char* path, const char* name);
53  void SetHistoBins(Int_t nbins, Double_t min, Double_t max) { fNbins = nbins; fMinBinPt = min; fMaxBinPt = max ; }
54 
55  const char* GetOutRhoName() const { return fOutRhoName.Data() ; }
56  const char* GetOutRhoScaledName() const { return fOutRhoScaledName.Data() ; }
57 
59  TString nTracks = "usedefault",
60  TString nClusters = "usedefault",
61  TString nRho = "Rho",
62  Double_t jetradius = 0.2,
63  UInt_t acceptance = AliEmcalJet::kTPCfid,
66  Bool_t histo = kTRUE,
67  TString suffix = ""
68  );
69 
70  protected:
71  void ExecOnce();
72  Bool_t Run();
74 
75  virtual Bool_t VerifyContainers() { return kTRUE; }
76 
77  virtual void CalculateRho();
78  virtual void CalculateEventProperties();
79 
80 
81  void FillJetHistograms();
82  void SortJets();
83 
84  virtual Double_t GetRhoFactor(Double_t cent);
85  virtual Double_t GetScaleFactor(Double_t cent);
86 
89  TF1 *fRhoFunction;
95 
97 
98  // Event properties
101  std::map<std::string, Int_t> fNjets;
102 
103  std::map<std::string, Double_t> fTotJetArea;
104 
105  AliVParticle *fLeadingParticle;
106  AliVCluster *fLeadingCluster;
107  std::map<std::string, AliEmcalJet*> fLeadingJet;
108 
109  std::map<std::string, std::list<AliEmcalJet*> >
111 
112  // Exported background density
115 
116  // Histograms
118 
119  std::map<std::string, TH2*> fHistRhoVsLeadJetPt;
120  std::map<std::string, TH2*> fHistLeadJetPtVsCent;
121  std::map<std::string, TH2*> fHistLeadJetPtDensityVsCent;
122  std::map<std::string, TH2*> fHistTotJetAreaVsCent;
123  std::map<std::string, TH2*> fHistLeadJetNconstVsCent;
124  std::map<std::string, TH2**> fHistLeadJetNconstVsPt;
125  std::map<std::string, TH2*> fHistNjetVsCent;
126  std::map<std::string, TH2*> fHistNjetVsNtrack;
127 
132 
137 
141 
142  AliAnalysisTaskRhoBaseDev(const AliAnalysisTaskRhoBaseDev&); // not implemented
144 
146  ClassDef(AliAnalysisTaskRhoBaseDev, 1);
148 };
149 #endif
TString fOutRhoName
name of output rho object
double Double_t
Definition: External.C:58
Definition: External.C:260
Definition: External.C:236
TF1 * fScaleFunction
pre-computed scale factor as a function of centrality
TString fOutRhoScaledName
name of output scaled rho object
virtual Double_t GetRhoFactor(Double_t cent)
Double_t fMaxBinPt
max pt in histograms
TH2 * fHistRhoVsCent
!rho vs. centrality
Base class for a task that calculates the UE.
Bool_t fAttachToEvent
whether or not attach rho to the event objects list
AliAnalysisTaskRhoBaseDev & operator=(const AliAnalysisTaskRhoBaseDev &)
std::map< std::string, TH2 * > fHistRhoVsLeadJetPt
!rho vs. leading jet pt
Bool_t fTaskConfigured
!kTRUE if the task is properly configured
std::map< std::string, TH2 * > fHistLeadJetPtVsCent
!leading jet pt vs. centrality
std::map< std::string, TH2 * > fHistTotJetAreaVsCent
!total area covered by jets vs. centrality
TH2 * fHistNtrackVsCent
!no. of tracks vs. centrality
TH2 * fHistRhoVsLeadClusterE
!rho vs. leading cluster energy
std::map< std::string, Int_t > fNjets
TPC fiducial acceptance (each eta edge narrowed by jet R)
Definition: AliEmcalJet.h:61
void SetHistoBins(Int_t nbins, Double_t min, Double_t max)
std::map< std::string, TH2 * > fHistLeadJetPtDensityVsCent
!leading jet area vs. centrality
std::map< std::string, TH2 ** > fHistLeadJetNconstVsPt
!leading jet constituents vs. pt
int Int_t
Definition: External.C:63
void SetOutRhoName(const char *name)
unsigned int UInt_t
Definition: External.C:33
TF1 * LoadRhoFunction(const char *path, const char *name)
TH2 * fHistRhoScaledVsCent
!rhoscaled vs. centrality
const char * GetOutRhoName() const
TH2 * fHistLeadClusterEVsCent
!leading cluster energy vs. centrality
const char * GetOutRhoScaledName() const
Base task in the EMCAL jet framework (lighter version of AliAnalysisTaskEmcalJet) ...
TH2 * fHistRhoScaledVsNcluster
!rhoscaled vs. no. of clusters
std::map< std::string, TH2 * > fHistLeadJetNconstVsCent
!leading jet constituents vs. cent
virtual Double_t GetScaleFactor(Double_t cent)
static AliAnalysisTaskRhoBaseDev * AddTaskRhoBaseDev(TString nTracks="usedefault", TString nClusters="usedefault", TString nRho="Rho", Double_t jetradius=0.2, UInt_t acceptance=AliEmcalJet::kTPCfid, AliJetContainer::EJetType_t jetType=AliJetContainer::kChargedJet, AliJetContainer::ERecoScheme_t rscheme=AliJetContainer::pt_scheme, Bool_t histo=kTRUE, TString suffix="")
TH2 * fHistRhoVsNcluster
!rho vs. no. of clusters
std::map< std::string, TH2 * > fHistNjetVsNtrack
!no. of jets vs. no. of tracks
TH2 * fHistRhoVsLeadTrackPt
!rho vs. leading track pt
Double_t fMinBinPt
min pt in histograms
Definition: External.C:220
std::map< std::string, Double_t > fTotJetArea
TH2 * fHistNclusterVsCent
!no. of cluster vs. centrality
TH2 * fHistRhoVsNtrack
!rho vs. no. of tracks
std::map< std::string, AliEmcalJet * > fLeadingJet
std::map< std::string, std::list< AliEmcalJet * > > fSortedJets
!jets sorted by momentum
TF1 * fRhoFunction
pre-computed rho as a function of centrality
TH2 * fHistRhoScaledVsNtrack
!rhoscaled vs. no. of tracks
const Int_t nbins
bool Bool_t
Definition: External.C:53
AliRhoParameter * fOutRhoScaled
!output scaled rho object
Int_t fNtracks
!number of tracks
AliRhoParameter * fOutRho
!output rho object
std::map< std::string, TH2 * > fHistNjetVsCent
!no. of jets vs. centrality
TH2 * fHistLeadTrackPtVsCent
!leading track pt vs. centrality
Int_t fNclusters
!number of clusters