7 #include <TClonesArray.h>
11 #include <THnSparse.h>
13 #include <TLorentzVector.h>
20 #include "AliAnalysisManager.h"
26 #include "AliVCluster.h"
27 #include "AliVTrack.h"
44 fRhoMChargedEmcalName(""),
45 fRhoMCharged2xEmcalName(""),
48 fRhoMCharged2xEmcal(0),
49 fHistScaleEmcalvsCent(0),
50 fHistScale2EmcalvsCent(0),
51 fHistDeltaScale2EmcalvsCent(0),
52 fHistScaleEmcalvsMult(0),
53 fHistScale2EmcalvsMult(0),
54 fHistDeltaScale2EmcalvsMult(0)
58 SetMakeGeneralHistograms(kTRUE);
67 fRhoMChargedEmcalName(
""),
68 fRhoMCharged2xEmcalName(
""),
71 fRhoMCharged2xEmcal(0),
72 fHistScaleEmcalvsCent(0),
73 fHistScale2EmcalvsCent(0),
74 fHistDeltaScale2EmcalvsCent(0),
75 fHistScaleEmcalvsMult(0),
76 fHistScale2EmcalvsMult(0),
77 fHistDeltaScale2EmcalvsMult(0)
97 Bool_t oldStatus = TH1::AddDirectoryStatus();
98 TH1::AddDirectory(kFALSE);
104 histName =
"fHistScaleEmcalvsCent";
105 histTitle = TString::Format(
"%s;Centrality;s_{EMC}",histName.Data());
107 fOutput->Add(fHistScaleEmcalvsCent);
109 histName =
"fHistScale2EmcalvsCent";
110 histTitle = TString::Format(
"%s;Centrality;s_{2 #times EMC}",histName.Data());
112 fOutput->Add(fHistScale2EmcalvsCent);
114 histName =
"fHistDeltaScale2EmcalvsCent";
115 histTitle = TString::Format(
"%s;Centrality;s_{2 #times EMC}-s_{EMC}",histName.Data());
117 fOutput->Add(fHistDeltaScale2EmcalvsCent);
119 histName =
"fHistScaleEmcalvsMult";
120 histTitle = TString::Format(
"%s;#it{N}_{track};s_{EMC}",histName.Data());
122 fOutput->Add(fHistScaleEmcalvsMult);
124 histName =
"fHistScale2EmcalvsMult";
125 histTitle = TString::Format(
"%s;#it{N}_{track};s_{2 #times EMC}",histName.Data());
127 fOutput->Add(fHistScale2EmcalvsMult);
129 histName =
"fHistDeltaScale2EmcalvsMult";
130 histTitle = TString::Format(
"%s;#it{N}_{track};s_{2 #times EMC}-s_{EMC}",histName.Data());
132 fOutput->Add(fHistDeltaScale2EmcalvsMult);
141 THnSparse *hn =
dynamic_cast<THnSparse*
>(
fOutput->At(i));
145 TH1::AddDirectory(oldStatus);
167 if(rhomChEmcal>0.) scale = (rhomNe+rhomChEmcal)/rhomChEmcal;
168 if(rhomCh2xEmcal>0.) scale2 = (rhomNe+rhomChEmcal)/rhomCh2xEmcal;
195 AliError(Form(
"%s: Could not retrieve rho %s!", GetName(),
fRhoMNeutralName.Data()));
TH2 * fHistScale2EmcalvsMult
scale factor 1xEmcal vs track multiplicity
TH2 * fHistScaleEmcalvsCent
charged rho_m in two times EMCal acceptance
TH2 * fHistScale2EmcalvsCent
scale factor 1xEmcal vs centrality
Bool_t fLocalInitialized
whether or not the task has been already initialized
TH2 * fHistDeltaScale2EmcalvsCent
scale factor 2xEmcal vs centrality
TString fRhoMChargedEmcalName
TH2 * fHistScaleEmcalvsMult
difference between scale factors vs centrality
Bool_t RetrieveEventObjects()
void Terminate(Option_t *option)
AliParticleContainer * GetParticleContainer(Int_t i=0) const
Get particle container attached to this task.
Bool_t Run()
Run function. This is the core function of the analysis and contains the user code. Therefore users have to implement this function.
AliAnalysisTaskRhoMassScale()
Double_t fCent
!event centrality
TH2 * fHistDeltaScale2EmcalvsMult
scale factor 2xEmcal vs track multiplicity
TString fRhoMCharged2xEmcalName
AliRhoParameter * fRhoMNeutral
AliEmcalList * fOutput
!output list
void SetMakeGeneralHistograms(Bool_t g)
Bool_t FillHistograms()
Function filling histograms.
Base task in the EMCAL jet framework.
virtual ~AliAnalysisTaskRhoMassScale()
AliRhoParameter * fRhoMCharged2xEmcal
charged rho_m in EMCal acceptance
Bool_t RetrieveEventObjects()
Retrieve common objects from event.
void UserCreateOutputObjects()
Main initialization function on the worker.
Int_t GetNAcceptedParticles() const
AliRhoParameter * fRhoMChargedEmcal
neutral rho_m
void UserCreateOutputObjects()