ROOT logo
AliRoot » PWGHF » HFE » AliHFEBeautySpectrum

class AliHFEBeautySpectrum: public AliHFECorrectSpectrumBase

Function Members (Methods)

public:
AliHFEBeautySpectrum(const char* name)
virtual~AliHFEBeautySpectrum()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
voidCalculateNonHFEsyst()
voidCallInputFileForBeauty2ndMethod()
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual Bool_tCorrect(Bool_t subtractcontamination = kTRUE, Bool_t = kFALSE)
AliCFDataGrid*CorrectForEfficiency(AliCFDataGrid *const bgsubpectrum = 0x0)
AliCFDataGrid*CorrectParametrizedEfficiency(AliCFDataGrid *const bgsubpectrum = 0x0)
voidAliHFECorrectSpectrumBase::CorrectStatErr(AliCFDataGrid* backgroundGrid) const
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
voidEnableIPanaCharmBgSubtract()
voidEnableIPanaHadronBgSubtract()
voidEnableIPanaNonHFEBgSubtract()
voidEnableIPParameterizedEff()
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)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
THnSparse*GetBeautyIPEff(Bool_t isMCpt)
AliCFDataGrid*GetCharmBackground()
THnSparse*GetCharmWeights(Int_t centBin)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
AliCFDataGrid*GetNonHFEBackground(Int_t decay = 0, Int_t source = 0)
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
THnSparse*GetPIDxIPEff(Int_t source)
AliCFDataGrid*GetRawBspectra2ndMethod()
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::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 Bool_tInit(const AliHFEcontainer* datahfecontainer, const AliHFEcontainer* mchfecontainer, const AliHFEcontainer* bghfecontainer = 0x0, const AliHFEcontainer* = 0x0, AliCFContainer* = 0x0)
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_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
TGraphErrors*AliHFECorrectSpectrumBase::Normalize(THnSparse *const spectrum) const
TGraphErrors*AliHFECorrectSpectrumBase::Normalize(AliCFDataGrid *const spectrum) const
TGraphErrors*AliHFECorrectSpectrumBase::NormalizeTH1(TH1* input) const
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)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
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 = "")
voidSetBeautyAnalysis2ndMethod(Bool_t beauty2ndmethod)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidAliHFECorrectSpectrumBase::SetChargeChoosen(AliHFECorrectSpectrumBase::Chargetype_t chargechoosen)
voidAliHFECorrectSpectrumBase::SetContainer(AliCFContainer* cont, AliHFECorrectSpectrumBase::CFContainer_t type)
voidAliHFECorrectSpectrumBase::SetCorrelation(THnSparseF *const correlation)
voidSetDebugLevel(Int_t debugLevel, Bool_t writeToFile = kFALSE)
voidAliHFECorrectSpectrumBase::SetDim(Int_t dim0, Int_t dim1 = 0, Int_t dim2 = 0)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetDumpToFile(Bool_t dumpToFile)
voidAliHFECorrectSpectrumBase::SetEfficiencyFunction(TF1* efficiencyFunction)
voidAliHFECorrectSpectrumBase::SetEtaRange(Double_t etamin, Double_t etamax)
voidSetEtaSyst(Bool_t etaSyst = kTRUE)
voidSetFillMoreCorrelationMatrix(Bool_t fillMoreCorrelationMatrix)
voidSetHadronEffbyIPcut(THnSparseF* hsHadronEffbyIPcut)
voidSetInputFileForBeauty2ndMethod(const char* filenameb = "BSpectrum2ndmethod.root")
voidSetIPEffCombinedSamples(Bool_t ipEffCombinedSamples)
voidSetLowHighBoundaryCentralityBinAtTheEnd(Int_t low, Int_t high, Int_t i)
voidAliHFECorrectSpectrumBase::SetMCEffStep(Int_t step)
voidAliHFECorrectSpectrumBase::SetMCTruthStep(Int_t step)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidAliHFECorrectSpectrumBase::SetNbDimensions(Int_t nbDimensions)
voidSetNCentralityBinAtTheEnd(Int_t nCentralityBinAtTheEnd)
voidSetNonHFEsyst(Bool_t syst)
voidAliHFECorrectSpectrumBase::SetNumberOfEvents(Int_t nEvents)
voidAliHFECorrectSpectrumBase::SetNumberOfIteration(Int_t numberOfIteration)
voidSetNumberOfMC2Events(Int_t nEvents)
voidSetNumberOfMCEvents(Int_t nEvents)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetParameterizedEff(AliCFContainer* container, AliCFContainer* containermb, AliCFContainer* containeresd, AliCFContainer* containeresdmb, Int_t* dimensions)
voidSetPbPbAnalysis(Bool_t isPbPb = kFALSE)
voidAliHFECorrectSpectrumBase::SetSmoothing(Bool_t setSmoothing)
voidAliHFECorrectSpectrumBase::SetStepAfterCutsV0(Int_t step)
voidAliHFECorrectSpectrumBase::SetStepBeforeCutsV0(Int_t step)
voidAliHFECorrectSpectrumBase::SetStepGuessedUnfolding(Int_t stepGuessedUnfolding)
voidAliHFECorrectSpectrumBase::SetStepToCorrect(Int_t step)
voidAliHFECorrectSpectrumBase::SetTestOneBinCentrality(Double_t centralitymin, Double_t centralitymax)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidSetUnfoldBG()
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetUnSetCorrelatedErrors(Bool_t unsetcorrelatederrors)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
AliCFDataGrid*SubtractBackground(Bool_t setBackground = kFALSE)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
THnSparse*Unfold(AliCFDataGrid *const bgsubpectrum = 0x0)
voidUnfoldBG(AliCFDataGrid *const bgsubpectrum)
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:
voidAddTemporaryObject(TObject* cont)
voidClearObject(TObject* o)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
AliCFContainer*AliHFECorrectSpectrumBase::GetContainer(AliHFECorrectSpectrumBase::CFContainer_t contt)
TObject*AliHFECorrectSpectrumBase::GetEfficiency(const AliCFContainer *const c, Int_t step, Int_t step0)
AliCFContainer*AliHFECorrectSpectrumBase::GetSlicedContainer(AliCFContainer* cont, Int_t ndim, Int_t* dimensions, Int_t source = -1, AliHFECorrectSpectrumBase::Chargetype_t charge = kAllCharge, Int_t centralitylow = -1, Int_t centralityhigh = -1, Bool_t doCentralityProjection = kTRUE)
THnSparseF*AliHFECorrectSpectrumBase::GetSlicedCorrelation(THnSparseF* correlationmatrix, Int_t nDim, Int_t* dimensions, AliHFECorrectSpectrumBase::Chargetype_t charge = kAllCharge, Int_t centralitylow = -1, Int_t centralityhigh = -1, Bool_t doCentralityProjection = kTRUE) const
TObject*AliHFECorrectSpectrumBase::GetSpectrum(const AliCFContainer *const c, Int_t step)
voidTObject::MakeZombie()

Data Members

protected:
TObjArray*AliHFECorrectSpectrumBase::fCFContainersList of Correction Framework Containers
AliHFECorrectSpectrumBase::Chargetype_tAliHFECorrectSpectrumBase::fChargeChoosenSelect positive or negative electrons
THnSparseF*AliHFECorrectSpectrumBase::fCorrelationCorrelation Matrices
Int_tAliHFECorrectSpectrumBase::fDims[3]For 2D corrections
TF1*AliHFECorrectSpectrumBase::fEfficiencyFunctionEfficiency Function
Double_tAliHFECorrectSpectrumBase::fEtaRange[2]Eta range
Double_tAliHFECorrectSpectrumBase::fEtaRangeNorm[2]Eta range used in the normalization
Bool_tAliHFECorrectSpectrumBase::fEtaSelectedSwitch for eta selection
Int_tAliHFECorrectSpectrumBase::fNEventsNumber of Events
TStringTNamed::fNameobject identifier
Int_tAliHFECorrectSpectrumBase::fNbDimensionsNumber of dimensions for the correction
Int_tAliHFECorrectSpectrumBase::fNumberOfIterationsNumber of iterations
Bool_tAliHFECorrectSpectrumBase::fSetSmoothingSet smoothing
Int_tAliHFECorrectSpectrumBase::fStepAfterCutsV0After cuts V0
Int_tAliHFECorrectSpectrumBase::fStepBeforeCutsV0Before cuts V0
Int_tAliHFECorrectSpectrumBase::fStepDataData Step (various applications)
Int_tAliHFECorrectSpectrumBase::fStepGuessedUnfoldingStep for first guessed unfolding
Int_tAliHFECorrectSpectrumBase::fStepMCMC step (for unfolding)
Int_tAliHFECorrectSpectrumBase::fStepTrueMC step of the final spectrum
Int_tAliHFECorrectSpectrumBase::fTestCentralityHighTo test one bin in centrality only
Int_tAliHFECorrectSpectrumBase::fTestCentralityLowTo test one bin in centrality only
TStringTNamed::fTitleobject title
private:
TH1D*fBSpectrum2ndMethodbeauty spectrum for 2nd method
AliCFDataGrid*fBackgroundBackground Grid
Char_tfBeamTypebeamtype; default -1; pp =0; PbPb=1
Bool_tfBeauty2ndMethod2nd method to get beauty spectrum
TH1D*fBeautyEffbeauty IP cut eff
TH1D*fCharmEffcharm IP cut eff
AliCFContainer*fConvSourceContainer[9][3]container for conversion electrons, divided into different photon sources
TH1D*fConversionEffconversion IP cut eff
TH1D*fConversionEffbgcconversion IP cut eff
Int_tfDebugLevelDebug Level
Bool_tfDumpToFileWrite Result in a file
TH1D*fEfficiencyBeautySigDbeauty IP cut eff from signal enhanced MC
TH1D*fEfficiencyBeautySigesdDbeauty IP cut eff from signal enhanced MC for esd
TH1D*fEfficiencyCharmSigDcharm IP cut eff from signal enhanced MC
TF1*fEfficiencyIPBeautyDIP efficiency parameterized for beauty
TF1*fEfficiencyIPBeautyesdDIP efficiency parameterized for beauty for esd
TF1*fEfficiencyIPCharmDIP efficiency parameterized for charm
TF1*fEfficiencyIPConversionDIP efficiency parameterized for conversion
TF1*fEfficiencyIPNonhfeDIP efficiency parameterized for nonhfe
TF1*fEfficiencyTOFPIDDTOF PID efficiency parameterized
TF1*fEfficiencyesdTOFPIDDTOF PID efficiency parameterized
Bool_tfEtaSystpp 2.76 TeV (= kTRUE) or 7 TeV (= kFALSE)
Bool_tfFillMoreCorrelationMatrixFor low stats to have reasonable errors
THnSparseF*fHadronEffbyIPcutcontainer for hadron efficiency by IP cut
Int_tfHighBoundaryCentralityBinAtTheEnd[20]Boundary of the bins
Bool_tfIPEffCombinedSamplesflag to combine two different samples
Bool_tfIPParameterizedEffswitch to use parameterized efficiency for ip analysis
Bool_tfIPanaCharmBgSubtractCharm background subtraction
Bool_tfIPanaHadronBgSubtractHadron background subtraction
Bool_tfIPanaNonHFEBgSubtractnonHFE background subtraction
Bool_tfInclusiveSpectrumInclusive Spectrum
Int_tfLowBoundaryCentralityBinAtTheEnd[20]Boundary of the bins
Int_tfNCentralityBinAtTheEndNumber of centrality class at the end
Int_tfNMCEventsNumber of MC Events
Int_tfNMCbgEventsNumber of BG MC Events
TH1D*fNonHFEEffnonhfe IP cut eff
TH1D*fNonHFEEffbgcnonhfe IP cut eff
AliCFContainer*fNonHFESourceContainer[9][3]container for non-HF electrons, divided into different sources
TF1*fNonHFEbgEfficiency Function
Bool_tfNonHFEsystchoose NonHFE background level (upper, lower, central)
AliHFEBeautySpectrumQA*fQABeauty QA
TList*fTemporaryObjectsEmulate garbage collection
Bool_tfUnSetCorrelatedErrorsUnset correlated errors
Bool_tfUnfoldBGflag to unfold backgroud
THnSparseF*fWeightCharmWeight for charm bg
Bool_tfWriteToFileWrite plots to eps files
const char*fkBeauty2ndMethodfilenamename of file, which contains beauty spectrum for 2ndmethod

Class Charts

Inheritance Chart:
TNamed
AliHFECorrectSpectrumBase
AliHFEBeautySpectrum

Function documentation

AliHFEBeautySpectrum(const char* name)
 Default constructor

AliHFEBeautySpectrum(const AliHFEBeautySpectrum& ref)
 Copy constructor

AliHFEBeautySpectrum & operator=(const AliHFEBeautySpectrum& ref)
 Assignment operator

void Copy(TObject& o) const
 Copy into object o

~AliHFEBeautySpectrum()
 Destructor

Bool_t Init(const AliHFEcontainer* datahfecontainer, const AliHFEcontainer* mchfecontainer, const AliHFEcontainer* bghfecontainer = 0x0, const AliHFEcontainer* = 0x0, AliCFContainer* = 0x0)
 Init what we need for the correction:

 Raw spectrum, hadron contamination
 MC efficiency maps, correlation matrix

 This for a given dimension.
 If no inclusive spectrum, then take only efficiency map for beauty electron
 and the appropriate correlation matrix

void CallInputFileForBeauty2ndMethod()
 get spectrum for beauty 2nd method


Bool_t Correct(Bool_t subtractcontamination = kTRUE, Bool_t = kFALSE)
 Correct the spectrum for efficiency and unfolding for beauty analysis
 with both method and compare

AliCFDataGrid* SubtractBackground(Bool_t setBackground = kFALSE)
 Apply background subtraction for IP analysis

AliCFDataGrid* GetNonHFEBackground(Int_t decay = 0, Int_t source = 0)
 calculate non-HF electron background
 Arguments: decay = 0 for conversions, decay = 1 for meson decays to electrons
 source: gives mother either of the electron (for meson->electron) or of the gamma (conversions);
 source numbers as given by array in AliAnalysisTaskHFE:
 {"Pion","Eta","Omega","Phi","EtaPrime","Rho","K0sSec","OtherSecPi0","Else"};

AliCFDataGrid* GetCharmBackground()
 calculate charm background; when using centrality binning 2: centBin = 0 for 0-20%, centBin = 5 for 40-80%

AliCFDataGrid * CorrectParametrizedEfficiency(AliCFDataGrid *const bgsubpectrum = 0x0)
 Apply TPC pid efficiency correction from parametrisation

THnSparse * Unfold(AliCFDataGrid *const bgsubpectrum = 0x0)
AliCFDataGrid * CorrectForEfficiency(AliCFDataGrid *const bgsubpectrum = 0x0)
void AddTemporaryObject(TObject* cont)
 Emulate garbage collection on class level

void ClearObject(TObject* o)
 Do a safe deletion

THnSparse* GetCharmWeights(Int_t centBin)
void SetParameterizedEff(AliCFContainer* container, AliCFContainer* containermb, AliCFContainer* containeresd, AliCFContainer* containeresdmb, Int_t* dimensions)
THnSparse* GetBeautyIPEff(Bool_t isMCpt)
 Return beauty electron IP cut efficiency

THnSparse* GetPIDxIPEff(Int_t source)
 Return PID x IP cut efficiency

AliCFDataGrid * GetRawBspectra2ndMethod()
 retrieve AliCFDataGrid for raw beauty spectra obtained from fit method

void CalculateNonHFEsyst()
 Calculate non HFE sys


void UnfoldBG(AliCFDataGrid *const bgsubpectrum)
 Unfold backgrounds to check its sanity

void SetPbPbAnalysis(Bool_t isPbPb = kFALSE)
{ fBeamType=(Char_t) isPbPb; }
void SetEtaSyst(Bool_t etaSyst = kTRUE)
{ fEtaSyst = etaSyst; }
void SetNumberOfMCEvents(Int_t nEvents)
{ fNMCEvents = nEvents; }
void SetNumberOfMC2Events(Int_t nEvents)
{ fNMCbgEvents = nEvents; }
void SetUnSetCorrelatedErrors(Bool_t unsetcorrelatederrors)
{fUnSetCorrelatedErrors = unsetcorrelatederrors;}
void SetFillMoreCorrelationMatrix(Bool_t fillMoreCorrelationMatrix)
{ fFillMoreCorrelationMatrix = fillMoreCorrelationMatrix;}
void SetNCentralityBinAtTheEnd(Int_t nCentralityBinAtTheEnd)
{fNCentralityBinAtTheEnd = nCentralityBinAtTheEnd; }
void SetLowHighBoundaryCentralityBinAtTheEnd(Int_t low, Int_t high, Int_t i)
void SetInputFileForBeauty2ndMethod(const char* filenameb = "BSpectrum2ndmethod.root")
void SetBeautyAnalysis2ndMethod(Bool_t beauty2ndmethod)
{ fBeauty2ndMethod = beauty2ndmethod; }
void SetIPEffCombinedSamples(Bool_t ipEffCombinedSamples)
{ fIPEffCombinedSamples = ipEffCombinedSamples; }
void SetHadronEffbyIPcut(THnSparseF* hsHadronEffbyIPcut)
{ fHadronEffbyIPcut = hsHadronEffbyIPcut;}
void SetNonHFEsyst(Bool_t syst)
{ fNonHFEsyst = syst; }
void SetDumpToFile(Bool_t dumpToFile)
{ fDumpToFile=dumpToFile; }
void SetDebugLevel(Int_t debugLevel, Bool_t writeToFile = kFALSE)
{ fDebugLevel = debugLevel; fWriteToFile = writeToFile; }
void SetUnfoldBG()
void EnableIPanaHadronBgSubtract()
void EnableIPanaCharmBgSubtract()
void EnableIPanaNonHFEBgSubtract()
void EnableIPParameterizedEff()