![]() |
AliPhysics
1c9c77b (1c9c77b)
|
Calculate the weight to the event to be applied when filling histograms. More...
#include <AliAnaWeights.h>
Public Member Functions | |
AliAnaWeights () | |
Constructor. More... | |
virtual | ~AliAnaWeights () |
Destructor. More... | |
void | InitCentralityWeightsHistogram (Int_t nbins=100, Int_t minCen=0, Int_t maxCen=100) |
TH1F * | GetCentralityWeightsHistogram () |
void | SetCentralityWeightsHistogram (TH1F *h) |
void | SetCentrality (Float_t cen) |
Bool_t | IsCentralityWeightOn () const |
void | SwitchOnCentralityWeight () |
void | SwitchOffCentralityWeight () |
TList * | GetCreateOutputHistograms () |
virtual Double_t | GetPythiaCrossSection () |
virtual Double_t | GetWeight () |
Bool_t | IsMCCrossSectionCalculationOn () const |
Bool_t | IsMCCrossSectionJustHistoFillOn () const |
void | SwitchOnMCCrossSectionCalculation () |
void | SwitchOffMCCrossSectionCalculation () |
void | SwitchOnMCCrossSectionHistoFill () |
void | SetPythiaEventHeader (AliGenPythiaEventHeader *py) |
void | SwitchOnMCCrossSectionFromEventHeader () |
void | SwitchOffMCCrossSectionFromEventHeader () |
Bool_t | IsWeightSettingOn () const |
Int_t | GetDebug () const |
void | SetDebug (Int_t d) |
Static Public Member Functions | |
static Bool_t | GetPythiaInfoFromFile (TString currFile, Float_t &xsec, Float_t &trials) |
Private Member Functions | |
AliAnaWeights (const AliAnaWeights &) | |
Copy constructor not implemented. More... | |
AliAnaWeights & | operator= (const AliAnaWeights &) |
Assignment operator not implemented. More... | |
Private Attributes | |
Int_t | fDebug |
Debug level. More... | |
TH1F * | fhCentralityWeight |
Container of centrality weights. More... | |
Float_t | fCentrality |
Container of centrality percentile. More... | |
Bool_t | fUseCentralityWeight |
Return the centratlity weight. More... | |
Double_t | fMCWeight |
pT-hard bin MC weight. It is used only internally. More... | |
TString | fCurrFileName |
Current file path name. More... | |
Bool_t | fCheckMCCrossSection |
Retrieve from the pyxsec.root file the cross section, only if requested. More... | |
Bool_t | fJustFillCrossSecHist |
Do not provide a weight, just fill cross section histograms. More... | |
TH1F * | fhXsec |
! Cross section in PYTHIA. More... | |
TH1F * | fhTrials |
! Number of event trials in PYTHIA. More... | |
AliGenPythiaEventHeader * | fPyEventHeader |
! Pythia event header, needed to retrieve cross section, only in recent MC More... | |
Bool_t | fCheckPythiaEventHeader |
Get cross section from pythia event header. More... | |
Calculate the weight to the event to be applied when filling histograms.
This class is intended to get/calculate the global event weight needed to fill histograms. Right now it only gets the weight corresponding to:
This task is called by the class AliCaloTrackReader in method AliCaloTrackReader::FillInputEvent(). Also, in case of MC pT-hard bins analysis, the cross section and trials used are stored in dedicated histograms via AliAnaCaloTrackCorrMaker, being initialized in AliAnaCaloTrackCorrMaker::GetOutputContainer()
The different analysis subtasks should recover the weight stored in the reader, and apply it when filling the histogram.
Definition at line 32 of file AliAnaWeights.h.
AliAnaWeights::AliAnaWeights | ( | ) |
Constructor.
Definition at line 39 of file AliAnaWeights.cxx.
|
inlinevirtual |
Destructor.
Definition at line 39 of file AliAnaWeights.h.
|
private |
Copy constructor not implemented.
TH1F * AliAnaWeights::GetCentralityWeightsHistogram | ( | ) |
Definition at line 308 of file AliAnaWeights.cxx.
TList * AliAnaWeights::GetCreateOutputHistograms | ( | ) |
Init histogram pointers.
Definition at line 58 of file AliAnaWeights.cxx.
Referenced by AliAnaCaloTrackCorrMaker::GetOutputContainer().
|
inline |
Definition at line 91 of file AliAnaWeights.h.
Referenced by AliCaloTrackReader::Init().
|
virtual |
Read the cross sections and number of trials from pyxsec.root (ESD) or pysec_hists.root (AODs), values stored in specific histograms-trees. If no file available, get information from Pythia event header
Fill the control histograms on number of trials and xsection optionally, with fJustFillCrossSecHist, just do that and do not return a weight. For cross section obtained from pythia event header, this is already the case.
Definition at line 122 of file AliAnaWeights.cxx.
Referenced by GetWeight().
|
static |
This method gets and returns the
file | : either pyxsec.root (ESDs) or pysec_hists.root (AODs) files |
xsec | : cross section |
trials | : number of event trials that should be located where the main data file is. This is called in Notify and should provide the path to the AOD/ESD file |
Definition at line 214 of file AliAnaWeights.cxx.
Referenced by GetPythiaCrossSection().
|
virtual |
Definition at line 84 of file AliAnaWeights.cxx.
Referenced by AliCaloTrackReader::FillInputEvent().
void AliAnaWeights::InitCentralityWeightsHistogram | ( | Int_t | nbins = 100 , |
Int_t | minCen = 0 , |
||
Int_t | maxCen = 100 |
||
) |
This method intializes the histogram containing the centrality weights. Use in case of different binning than default.
nbins | : number of bins in histogram, default 100 |
minCen | : minimum value of centrality, default 0 |
maxCen | : maximum value of centrality, default 100 |
Definition at line 295 of file AliAnaWeights.cxx.
Referenced by GetCentralityWeightsHistogram(), and SwitchOnCentralityWeight().
|
inline |
Definition at line 53 of file AliAnaWeights.h.
Referenced by AliAnaCaloTrackCorrMaker::FillControlHistograms().
|
inline |
Definition at line 71 of file AliAnaWeights.h.
Referenced by AliAnaCaloTrackCorrMaker::FillControlHistograms(), and AliAnaCaloTrackCorrMaker::GetOutputContainer().
|
inline |
Definition at line 72 of file AliAnaWeights.h.
Referenced by AliAnaCaloTrackCorrMaker::FillControlHistograms(), and AliAnaCaloTrackCorrMaker::GetOutputContainer().
|
inline |
Definition at line 89 of file AliAnaWeights.h.
Referenced by AliCaloTrackReader::FillInputEvent().
|
private |
Assignment operator not implemented.
|
inline |
Definition at line 51 of file AliAnaWeights.h.
Referenced by AliCaloTrackReader::FillInputEvent().
|
inline |
Definition at line 49 of file AliAnaWeights.h.
|
inline |
Definition at line 93 of file AliAnaWeights.h.
|
inline |
Definition at line 79 of file AliAnaWeights.h.
Referenced by AliCaloTrackReader::FillInputEvent().
|
inline |
Definition at line 57 of file AliAnaWeights.h.
|
inline |
Definition at line 75 of file AliAnaWeights.h.
|
inline |
Definition at line 82 of file AliAnaWeights.h.
|
inline |
Definition at line 55 of file AliAnaWeights.h.
|
inline |
Definition at line 74 of file AliAnaWeights.h.
|
inline |
Definition at line 81 of file AliAnaWeights.h.
|
inline |
Definition at line 77 of file AliAnaWeights.h.
Referenced by AddTaskCalorimeterQA(), and AddTaskGenKine().
|
private |
Container of centrality percentile.
Definition at line 106 of file AliAnaWeights.h.
Referenced by GetWeight(), and SetCentrality().
|
private |
Retrieve from the pyxsec.root file the cross section, only if requested.
Definition at line 118 of file AliAnaWeights.h.
Referenced by GetCreateOutputHistograms(), GetWeight(), IsMCCrossSectionCalculationOn(), IsWeightSettingOn(), SwitchOffMCCrossSectionCalculation(), SwitchOnMCCrossSectionCalculation(), and SwitchOnMCCrossSectionHistoFill().
|
private |
Get cross section from pythia event header.
Definition at line 128 of file AliAnaWeights.h.
Referenced by GetPythiaCrossSection(), SwitchOffMCCrossSectionFromEventHeader(), and SwitchOnMCCrossSectionFromEventHeader().
|
private |
Current file path name.
Definition at line 116 of file AliAnaWeights.h.
Referenced by GetPythiaCrossSection().
|
private |
Debug level.
Definition at line 98 of file AliAnaWeights.h.
Referenced by GetDebug(), GetPythiaCrossSection(), and SetDebug().
|
private |
Container of centrality weights.
Definition at line 104 of file AliAnaWeights.h.
Referenced by GetCentralityWeightsHistogram(), GetWeight(), InitCentralityWeightsHistogram(), SetCentralityWeightsHistogram(), and ~AliAnaWeights().
|
private |
! Number of event trials in PYTHIA.
Definition at line 124 of file AliAnaWeights.h.
Referenced by GetCreateOutputHistograms(), and GetPythiaCrossSection().
|
private |
! Cross section in PYTHIA.
Definition at line 122 of file AliAnaWeights.h.
Referenced by GetCreateOutputHistograms(), and GetPythiaCrossSection().
|
private |
Do not provide a weight, just fill cross section histograms.
Definition at line 120 of file AliAnaWeights.h.
Referenced by GetPythiaCrossSection(), IsMCCrossSectionJustHistoFillOn(), and SwitchOnMCCrossSectionHistoFill().
|
private |
pT-hard bin MC weight. It is used only internally.
Definition at line 114 of file AliAnaWeights.h.
Referenced by GetPythiaCrossSection().
|
private |
! Pythia event header, needed to retrieve cross section, only in recent MC
Definition at line 126 of file AliAnaWeights.h.
Referenced by GetPythiaCrossSection(), and SetPythiaEventHeader().
|
private |
Return the centratlity weight.
Definition at line 108 of file AliAnaWeights.h.
Referenced by GetWeight(), IsCentralityWeightOn(), IsWeightSettingOn(), SwitchOffCentralityWeight(), and SwitchOnCentralityWeight().