ROOT logo
AliRoot » PWGCF » CORRELATIONS » BASE » AliUEHist

class AliUEHist: public TObject

Function Members (Methods)

public:
AliUEHist(const AliUEHist& c)
AliUEHist(const char* reqHist = "", const char* binning = 0)
virtual~AliUEHist()
voidTObject::AbstractMethod(const char* method) const
voidAdditionalDPhiCorrection(Int_t step)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
THnBase*ChangeToThn(THnBase* sparse)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
static TStringCombineBinning(TString defaultBinning, TString customBinning)
virtual Int_tTObject::Compare(const TObject* obj) const
voidCondenseBin(THnSparse* grid, THnSparse* target, Int_t axis, Float_t targetValue, Float_t from, Float_t to)
voidCondenseBin(AliUEHist::CFStep step, Int_t trackAxis, Int_t eventAxis, Float_t targetValue, Float_t from = 0, Float_t to = -1, AliUEHist::CFStep tmpStep = AliUEHist::kCFStepBiasStudy2)
virtual voidCopy(TObject& c) const
voidCopyReconstructedData(AliUEHist* from)
voidCorrect(AliUEHist* corrections)
voidCorrectCorrelatedContamination(AliUEHist::CFStep step1, Int_t region, TH1* trackCorrection)
voidCorrectEvents(AliUEHist::CFStep step1, AliUEHist::CFStep step2, TH1* eventCorrection, Int_t var1, Int_t var2 = -1)
voidCorrectTracks(AliUEHist::CFStep step1, AliUEHist::CFStep step2, TH1* trackCorrection, Int_t var1, Int_t var2 = -1)
voidCorrectTracks(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t region, TH1* trackCorrection, Int_t var1, Int_t var2 = -1)
voidCountEmptyBins(AliUEHist::CFStep step, Float_t ptLeadMin, Float_t ptLeadMax)
voidDeepCopy(AliUEHist* from)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
voidExtendTrackingEfficiency(Bool_t verbose = kFALSE)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
TH1*GetBias(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t region, const char* axis, Float_t leadPtMin = 0, Float_t leadPtMax = -1, Int_t weighting = 0)
TH2*GetCorrelatedContamination()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TH1*GetEventEfficiency(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t axis1, Int_t axis2 = -1, Float_t ptLeadMin = -1, Float_t ptLeadMax = -1)
AliCFContainer*GetEventHist()
TH2D*GetFakeRate()
TH1D*GetFakeRate(Int_t axis)
voidGetHistsZVtx(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, TH3** trackHist, TH1** eventHist)
voidGetHistsZVtxMult(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, THnBase** trackHist, TH2** eventHist)
virtual const char*TObject::GetIconName() const
TH3F*GetMCRecoPtCorrelation()
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
TH1*GetPtHist(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, Float_t phiMin, Float_t phiMax, Float_t etaMin, Float_t etaMax, Bool_t skipPhiNormalization = kFALSE)
const char*GetRegionTitle(AliUEHist::Region region)
const char*GetStepTitle(AliUEHist::CFStep step)
TH2*GetSumOfRatios(AliUEHist* mixed, AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, Bool_t etaNorm = kTRUE, Bool_t useVertexBins = kFALSE)
TH2*GetSumOfRatios2(AliUEHist* mixed, AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, Bool_t normalizePerTrigger = kTRUE, Int_t stepForMixed = -1, Int_t* trigger = NULL)
virtual const char*TObject::GetTitle() const
TH1*GetTrackEfficiency(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t axis1, Int_t axis2 = -1, Int_t source = 1, Int_t axis3 = -1)
THnBase*GetTrackEfficiencyND(AliUEHist::CFStep step1, AliUEHist::CFStep step2)
Float_tGetTrackEtaCut()
AliCFContainer*GetTrackHist(AliUEHist::Region region)
AliCFContainer*GetTrackHistEfficiency()
TH2D*GetTrackingContamination()
TH1D*GetTrackingContamination(Int_t axis)
TH2D*GetTrackingContaminationCentrality()
TH2D*GetTrackingCorrection()
TH1D*GetTrackingCorrection(Int_t axis)
TH2D*GetTrackingEfficiency()
TH1D*GetTrackingEfficiency(Int_t axis)
TH2D*GetTrackingEfficiencyCentrality()
TH2D*GetTrackingEfficiencyCorrection()
TH1D*GetTrackingEfficiencyCorrection(Int_t axis)
TH2D*GetTrackingEfficiencyCorrectionCentrality()
TH1*GetTriggersAsFunctionOfMultiplicity(AliUEHist::CFStep step, Float_t ptLeadMin, Float_t ptLeadMax)
TH1*GetUEHist(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin = -1, Float_t ptLeadMax = -1, Int_t multBinBegin = 0, Int_t multBinEnd = -1, Int_t twoD = 0, Bool_t etaNorm = kTRUE, Long64_t* normEvents = 0)
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Long64_tMerge(TCollection* list)
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
AliUEHist&operator=(const AliUEHist& corr)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidReset()
voidResetBinLimits(AliCFGridSparse* grid)
voidResetBinLimits(THnBase* grid)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidScale(Double_t factor)
voidSetBinLimits(AliCFGridSparse* grid)
voidSetBinLimits(THnBase* grid)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetCentralityRange(Float_t min, Float_t max)
voidSetCombineMinMax(Bool_t flag)
voidSetContaminationEnhancement(TH1F* hist)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetEtaRange(Float_t etaMin, Float_t etaMax)
voidSetEventHist(AliCFContainer* hist)
voidSetGetMultCache(Bool_t flag = kTRUE)
voidSetHistogramType(const char* histogramType)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPartSpecies(Int_t species)
voidSetPt2Min(Float_t ptMin)
voidSetPtRange(Float_t ptMin, Float_t ptMax)
voidSetSkipScaleMixedEvent(Bool_t flag)
voidSetTrackEtaCut(Float_t value)
voidSetTrackHist(AliUEHist::Region region, AliCFContainer* hist)
voidSetTrackHistEfficiency(AliCFContainer* hist)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetWeightPerEvent(Bool_t flag)
voidSetZVtxRange(Float_t min, Float_t max)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
voidSymmetrizepTBins()
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
Double_t*GetBinning(const char* configuration, const char* tag, Int_t& nBins)
voidTObject::MakeZombie()
voidMultiplyHistograms(THnSparse* grid, THnSparse* target, TH1* histogram, Int_t var1, Int_t var2)
voidSetStepNames(AliCFContainer* container)
voidWeightHistogram(TH3* hist1, TH1* hist2)

Data Members

public:
enum Region { kToward
kAway
kMin
kMax
};
enum CFStep { kCFStepAll
kCFStepTriggered
kCFStepVertex
kCFStepAnaTopology
kCFStepTrackedOnlyPrim
kCFStepTracked
kCFStepReconstructed
kCFStepRealLeading
kCFStepBiasStudy
kCFStepBiasStudy2
kCFStepCorrected
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
public:
static const Int_tfgkCFSteps
const UInt_tfkRegions
protected:
AliCFContainer*fCache! cache variable for GetTrackEfficiency
Float_tfCentralityMaxcentrality max for projections
Float_tfCentralityMincentrality min for projections
Bool_tfCombineMinMaxflag to combine min and max to a general towards region
TH1F*fContaminationEnhancementhistogram that contains the underestimation of secondaries in the MC as function of pT
Float_tfEtaMaxeta max for projections
Float_tfEtaMineta min for projections
AliCFContainer*fEventHistcontainer for event level distribution at all analysis steps
TH3F*fFakePt
THnBase*fGetMultCache! cache for GetHistsZVtxMult function
Bool_tfGetMultCacheOn! cache for GetHistsZVtxMult function active
TStringfHistogramTypewhat is stored in this histogram
Int_tfPartSpeciesParticle species for projections
Float_tfPt2MinpT min for projections (for pT,2 (only 2+1 corr case))
Float_tfPtMaxpT max for projections (for track pT, not pT,lead)
Float_tfPtMinpT min for projections (for track pT, not pT,lead)
Bool_tfSkipScaleMixedEventscale the mixed event with (0, 0) plus finite bin correction (default: kTRUE)
Float_tfTrackEtaCutcut used during production of histograms (needed for finite bin correction in GetSumOfRatios)
AliCFContainer*fTrackHist[4]container for track level distributions in four regions (toward, away, min, max) and at all analysis steps
AliCFContainer*fTrackHistEfficiencycontainer for tracking efficiency and contamination (all particles filled including leading one): axes: eta, pT, particle species
Bool_tfWeightPerEventweight with the number of trigger particles per event
Float_tfZVtxMaxz vtx max for projections
Float_tfZVtxMinz vtx min for projections

Class Charts

Inheritance Chart:
TObject
AliUEHist

Function documentation

AliUEHist(const char* reqHist = "", const char* binning = 0)
 Constructor
TString CombineBinning(TString defaultBinning, TString customBinning)
 combine default binning with custom binning
 replaces binnings in default binning if it is defined in custom binning
Double_t* GetBinning(const char* configuration, const char* tag, Int_t& nBins)
 takes the binning from <configuration> identified by <tag>
 configuration syntax example:
 eta: 2.4, -2.3, -2.2, -2.1, -2.0, -1.9, -1.8, -1.7, -1.6, -1.5, -1.4, -1.3, -1.2, -1.1, -1.0, -0.9, -0.8, -0.7, -0.6, -0.5, -0.4, -0.3, -0.2, -0.1, 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0, 2.1, 2.2, 2.3, 2.4
 phi: .....

 returns bin edges which have to be deleted by the caller
AliUEHist(const AliUEHist& c)
 AliUEHist copy constructor

void SetStepNames(AliCFContainer* container)
 sets the names of the correction steps
~AliUEHist()
 Destructor
AliUEHist & operator=(const AliUEHist& corr)
 assigment operator
void Copy(TObject& c) const
 copy function
Long64_t Merge(TCollection* list)
 Merge a list of AliUEHist objects with this (needed for
 PROOF).
 Returns the number of merged objects (including this).
void SetBinLimits(THnBase* grid)
 sets the bin limits in eta and pT defined by fEtaMin/Max, fPtMin/Max
void SetBinLimits(AliCFGridSparse* grid)
 sets the bin limits in eta and pT defined by fEtaMin/Max, fPtMin/Max
void ResetBinLimits(THnBase* grid)
 resets all bin limits
void ResetBinLimits(AliCFGridSparse* grid)
 resets all bin limits
void CountEmptyBins(AliUEHist::CFStep step, Float_t ptLeadMin, Float_t ptLeadMax)
 prints the number of empty bins in the track end event histograms in the given step
TH1* GetUEHist(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin = -1, Float_t ptLeadMax = -1, Int_t multBinBegin = 0, Int_t multBinEnd = -1, Int_t twoD = 0, Bool_t etaNorm = kTRUE, Long64_t* normEvents = 0)
 Extracts the UE histogram at the given step and in the given region by projection and dividing tracks by events

 ptLeadMin, ptLeadMax: Only meaningful for vs. delta phi plot (third axis is ptLead)
 Histogram has to be deleted by the caller of the function

 twoD: 0: 1D histogram as function of phi
       1: 2D histogram, deltaphi, deltaeta
       10: 1D histogram, within |deltaeta| < 0.8
       11: 1D histogram, within 0.8 < |deltaeta| < 1.6

 etaNorm: if kTRUE (default), the distributions are divided by the area in delta eta

 normEvents: if non-0 the number of events/trigger particles for the normalization is filled
void GetHistsZVtx(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, TH3** trackHist, TH1** eventHist)
 Calculates a 3d histogram with deltaphi, deltaeta, zvtx on track level and a 1d histogram on event level (as fct of zvtx)
 Histogram has to be deleted by the caller of the function
void GetHistsZVtxMult(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, THnBase** trackHist, TH2** eventHist)
 Calculates a 4d histogram with deltaphi, deltaeta, zvtx, multiplicity on track level and
 a 2d histogram on event level (as fct of zvtx, multiplicity)
 Histograms has to be deleted by the caller of the function
TH2* GetSumOfRatios2(AliUEHist* mixed, AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, Bool_t normalizePerTrigger = kTRUE, Int_t stepForMixed = -1, Int_t* trigger = NULL)
 Calls GetUEHist(...) for *each* vertex bin and multiplicity bin and performs a sum of ratios:
 1_N [ (same/mixed)_1 + (same/mixed)_2 + (same/mixed)_3 + ... ]
 where N is the total number of events/trigger particles and the subscript is the vertex/multiplicity bin
 where mixed is normalized such that the information about the number of pairs in same is kept

 returns a 2D histogram: deltaphi, deltaeta

 Parameters:
   mixed: AliUEHist containing mixed event corresponding to this object (the histograms are taken from step <stepForMixed> if defined otherwise from step <step>)
   <other parameters> : check documentation of AliUEHist::GetUEHist
  normalizePerTrigger: divide through number of triggers
TH1* GetTriggersAsFunctionOfMultiplicity(AliUEHist::CFStep step, Float_t ptLeadMin, Float_t ptLeadMax)
 returns the distribution of triggers as function of centrality/multiplicity
TH2* GetSumOfRatios(AliUEHist* mixed, AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, Bool_t etaNorm = kTRUE, Bool_t useVertexBins = kFALSE)
 Calls GetUEHist(...) for *each* multiplicity bin and performs a sum of ratios:
 1_N [ (same/mixed)_1 + (same/mixed)_2 + (same/mixed)_3 + ... ]
 where N is the total number of events/trigger particles and the subscript is the multiplicity bin

 Can only be used for the 2D histogram at present

 Parameters:
   mixed: AliUEHist containing mixed event corresponding to this object
   <other parameters> : check documentation of AliUEHist::GetUEHist
TH1* GetPtHist(AliUEHist::CFStep step, AliUEHist::Region region, Float_t ptLeadMin, Float_t ptLeadMax, Int_t multBinBegin, Int_t multBinEnd, Float_t phiMin, Float_t phiMax, Float_t etaMin, Float_t etaMax, Bool_t skipPhiNormalization = kFALSE)
 returns a histogram projected to pT,assoc with the provided cuts
void MultiplyHistograms(THnSparse* grid, THnSparse* target, TH1* histogram, Int_t var1, Int_t var2)
 multiplies <grid> with <histogram> and put the result in <target>
 <grid> has usually more dimensions than histogram. The axis which are used to choose the value
 from <histogram> are given in <var1> and <var2>

 if <histogram> is 0, just copies content from step1 to step2
void CorrectTracks(AliUEHist::CFStep step1, AliUEHist::CFStep step2, TH1* trackCorrection, Int_t var1, Int_t var2 = -1)
 corrects from step1 to step2 by multiplying the tracks with trackCorrection
 trackCorrection can be a function of eta (var1 == 0), pT (var1 == 1), leading pT (var1 == 2), multiplicity (var1 == 3), delta phi (var1 == 4)
 if var2 >= 0 a two dimension correction is assumed in trackCorrection

 if trackCorrection is 0, just copies content from step1 to step2
void CorrectTracks(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t region, TH1* trackCorrection, Int_t var1, Int_t var2 = -1)
 see documentation of CorrectTracks above

void CorrectEvents(AliUEHist::CFStep step1, AliUEHist::CFStep step2, TH1* eventCorrection, Int_t var1, Int_t var2 = -1)
 corrects from step1 to step2 by multiplying the events with eventCorrection
 eventCorrection is as function of leading pT (var == 0) or multiplicity (var == 1)

 if eventCorrection is 0, just copies content from step1 to step2
void Correct(AliUEHist* corrections)
 applies the given corrections to extract from the step kCFStepReconstructed all previous steps

 in this object the data is expected in the step kCFStepReconstructed
THnBase* GetTrackEfficiencyND(AliUEHist::CFStep step1, AliUEHist::CFStep step2)
 creates a track-level efficiency by dividing step2 by step1
 in all dimensions but the particle species one
TH1* GetTrackEfficiency(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t axis1, Int_t axis2 = -1, Int_t source = 1, Int_t axis3 = -1)
 creates a track-level efficiency by dividing step2 by step1
 projected to axis1 and axis2 (optional if >= 0)

 source: 0 = fTrackHist; 1 = fTrackHistEfficiency; 2 = fTrackHistEfficiency rebinned for pT,T / pT,lead binning
TH1* GetEventEfficiency(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t axis1, Int_t axis2 = -1, Float_t ptLeadMin = -1, Float_t ptLeadMax = -1)
 creates a event-level efficiency by dividing step2 by step1
 projected to axis1 and axis2 (optional if >= 0)
void WeightHistogram(TH3* hist1, TH1* hist2)
 weights each entry of the 3d histogram hist1 with the 1d histogram hist2
 where the matching is done of the z axis of hist1 with the x axis of hist2
TH1* GetBias(AliUEHist::CFStep step1, AliUEHist::CFStep step2, Int_t region, const char* axis, Float_t leadPtMin = 0, Float_t leadPtMax = -1, Int_t weighting = 0)
 extracts the track-level bias (integrating out the multiplicity) between two steps (dividing step2 by step1)
 in the given region (sum over all regions is calculated if region == -1)
 done by weighting the track-level distribution with the number of events as function of leading pT
 and then calculating the ratio between the distributions
 projected to axis which is a TH3::Project3D string, e.g. "x", or "yx"
   no projection is done if axis == 0
 weighting: 0 = tracks weighted with events (as discussed above)
            1 = only track bias is returned
            2 = only event bias is returned
void CorrectCorrelatedContamination(AliUEHist::CFStep step1, Int_t region, TH1* trackCorrection)
 corrects for the given factor in a small delta-eta and delta-phi window as function of pT,A and pT,T
TH2* GetCorrelatedContamination()
 contamination correlated with the trigger particle is evaluated between step kCFStepTracked and kCFStepTrackedOnlyPrim in the region of delta eta and delta phi < 0.1 (smallest bin!)
TH2D* GetTrackingEfficiency()
 extracts the tracking efficiency by calculating the efficiency from step kCFStepAnaTopology to kCFStepTrackedOnlyPrim
 integrates over the regions and all other variables than pT and eta to increase the statistics

 returned histogram has to be deleted by the user
TH2D* GetFakeRate()
TH2D* GetTrackingEfficiencyCentrality()
 extracts the tracking efficiency by calculating the efficiency from step kCFStepAnaTopology to kCFStepTrackedOnlyPrim
 integrates over the regions and all other variables than pT, centrality to increase the statistics

 returned histogram has to be deleted by the user
TH1D* GetTrackingEfficiency(Int_t axis)
 extracts the tracking efficiency by calculating the efficiency from step kCFStepAnaTopology to kCFStepTrackedOnlyPrim
 integrates over the regions and all other variables than pT (axis == 0) and eta (axis == 1) to increase the statistics
TH1D* GetFakeRate(Int_t axis)
TH2D* GetTrackingCorrection()
 extracts the tracking correction by calculating the efficiency from step kCFStepAnaTopology to kCFStepTracked
 integrates over the regions and all other variables than pT and eta to increase the statistics

 returned histogram has to be deleted by the user
TH1D* GetTrackingCorrection(Int_t axis)
 extracts the tracking correction by calculating the efficiency from step kCFStepAnaTopology to kCFStepTracked
 integrates over the regions and all other variables than pT (axis == 0) and eta (axis == 1) to increase the statistics
TH2D* GetTrackingEfficiencyCorrection()
 extracts the tracking correction by calculating the efficiency from step kCFStepAnaTopology to kCFStepTracked
 integrates over the regions and all other variables than pT and eta to increase the statistics

 returned histogram has to be deleted by the user
TH2D* GetTrackingEfficiencyCorrectionCentrality()
 extracts the tracking correction by calculating the efficiency from step kCFStepAnaTopology to kCFStepTracked
 integrates over the regions and all other variables than pT and centrality to increase the statistics

 returned histogram has to be deleted by the user
TH1D* GetTrackingEfficiencyCorrection(Int_t axis)
 extracts the tracking correction by calculating the efficiency from step kCFStepAnaTopology to kCFStepTracked
 integrates over the regions and all other variables than pT (axis == 0) and eta (axis == 1) to increase the statistics
TH2D* GetTrackingContamination()
 extracts the tracking contamination by secondaries by calculating the efficiency from step kCFStepTrackedOnlyPrim to kCFStepTracked
 integrates over the regions and all other variables than pT and eta to increase the statistics

 returned histogram has to be deleted by the user
TH2D* GetTrackingContaminationCentrality()
 extracts the tracking contamination by secondaries by calculating the efficiency from step kCFStepTrackedOnlyPrim to kCFStepTracked
 integrates over the regions and all other variables than pT and centrality to increase the statistics

 returned histogram has to be deleted by the user
TH1D* GetTrackingContamination(Int_t axis)
 extracts the tracking contamination by secondaries by calculating the efficiency from step kCFStepTrackedOnlyPrim to kCFStepTracked
 integrates over the regions and all other variables than pT (axis == 0) and eta (axis == 1) to increase the statistics
const char* GetRegionTitle(AliUEHist::Region region)
 returns the name of the given region
const char* GetStepTitle(AliUEHist::CFStep step)
 returns the name of the given step
void CopyReconstructedData(AliUEHist* from)
 copies those histograms extracted from ESD to this object
void DeepCopy(AliUEHist* from)
 copies the entries of this object's members from the object <from> to this object
 fills using the fill function and thus allows that the objects have different binning
void SymmetrizepTBins()
 copy pt,a < pt,t bins to pt,a > pt,t (inverting deltaphi and delta eta as it should be) including symmetric bins
void ExtendTrackingEfficiency(Bool_t verbose = kFALSE)
 fits the tracking efficiency at high pT with a constant and fills all bins with this tracking efficiency
void AdditionalDPhiCorrection(Int_t step)
 corrects the dphi distribution with an extra factor close to dphi ~ 0
void Scale(Double_t factor)
 scales all contained histograms by the given factor
void Reset()
 resets all contained histograms
THnBase* ChangeToThn(THnBase* sparse)
 change the object to THn for faster processing
void CondenseBin(THnSparse* grid, THnSparse* target, Int_t axis, Float_t targetValue, Float_t from, Float_t to)
 loops through the histogram and moves all entries to a single point <targetValue> on the axis <axis>
 if <from> and <to> are set, then moving only occurs if value on <axis> is betweem <from> and <to>

void CondenseBin(AliUEHist::CFStep step, Int_t trackAxis, Int_t eventAxis, Float_t targetValue, Float_t from = 0, Float_t to = -1, AliUEHist::CFStep tmpStep = AliUEHist::kCFStepBiasStudy2)
 loops through the histogram at <step> and moves all entries to a single point <targetValue> on the axes
 <trackAxis> and <eventAxis>. <tmpStep> is used to temporary store the data
 This is useful e.g. to move bin content around for MC productions where the centrality selection did
 not yield the desired result
AliCFContainer* GetTrackHist(AliUEHist::Region region)
{ return fTrackHist[region]; }
AliCFContainer* GetEventHist()
{ return fEventHist; }
AliCFContainer* GetTrackHistEfficiency()
TH3F* GetMCRecoPtCorrelation()
{ return fFakePt; }
void SetTrackHist(AliUEHist::Region region, AliCFContainer* hist)
{ fTrackHist[region] = hist; }
void SetEventHist(AliCFContainer* hist)
{ fEventHist = hist; }
void SetTrackHistEfficiency(AliCFContainer* hist)
void SetCombineMinMax(Bool_t flag)
{ fCombineMinMax = flag; }
void SetEtaRange(Float_t etaMin, Float_t etaMax)
{ fEtaMin = etaMin; fEtaMax = etaMax; }
void SetPtRange(Float_t ptMin, Float_t ptMax)
{ fPtMin = ptMin; fPtMax = ptMax; }
void SetPartSpecies(Int_t species)
{ fPartSpecies = species;}
void SetCentralityRange(Float_t min, Float_t max)
{ fCentralityMin = min; fCentralityMax = max; }
void SetZVtxRange(Float_t min, Float_t max)
{ fZVtxMin = min; fZVtxMax = max; }
void SetPt2Min(Float_t ptMin)
{ fPt2Min = ptMin; }
Float_t GetTrackEtaCut()
{ return fTrackEtaCut; }
void SetTrackEtaCut(Float_t value)
{ fTrackEtaCut = value; }
void SetWeightPerEvent(Bool_t flag)
{ fWeightPerEvent = flag; }
void SetSkipScaleMixedEvent(Bool_t flag)
void SetContaminationEnhancement(TH1F* hist)
void SetHistogramType(const char* histogramType)
{ fHistogramType = histogramType; }
void SetGetMultCache(Bool_t flag = kTRUE)
{ fGetMultCacheOn = flag; }