ROOT logo
AliRoot » STEER » STEERBASE » AliITSPIDResponse

class AliITSPIDResponse: public TObject

 ITS PID method # 1
           Implementation of the ITS PID class
 Very naive one... Should be made better by the detector experts...
      Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch

Function Members (Methods)

public:
AliITSPIDResponse(Bool_t isMC = kFALSE)
AliITSPIDResponse(const AliITSPIDResponse&)
virtual~AliITSPIDResponse()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
Double_tBethe(Double_t p, Double_t mass, Bool_t isSA = kFALSE) const
Double_tBethe(Double_t p, AliPID::EParticleType species, Bool_t isSA = kFALSE) const
Double_tBetheAleph(Double_t p, Double_t mass) const
Double_tBetheITSsaHybrid(Double_t p, Double_t mass) const
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) 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
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 TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
voidGetITSProbabilities(Float_t mom, Double_t* qclu, Double_t* condprobfun, Bool_t isMC = kFALSE) const
virtual const char*TObject::GetName() const
Double_tGetNumberOfSigmas(const AliVTrack* track, AliPID::EParticleType species) const
Float_tGetNumberOfSigmas(Float_t mom, Float_t signal, AliPID::EParticleType type, Int_t nPtsForPid = 4, Bool_t isSA = kFALSE) const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Int_tGetParticleIdFromdEdxVsP(Float_t mom, Float_t signal, Bool_t isSA = kFALSE) const
Double_tGetResolution(Double_t bethe, Int_t nPtsForPid = 4, Bool_t isSA = kFALSE, Double_t p = 0., AliPID::EParticleType type = AliPID::kPion) const
Double_tGetSignalDelta(const AliVTrack* track, AliPID::EParticleType species, Bool_t ratio = kFALSE) const
virtual const char*TObject::GetTitle() const
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 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)
AliITSPIDResponse&operator=(const AliITSPIDResponse&)
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)
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 = "")
voidSetBetheBlochHybridParamsITSsa(Double_t* param)
voidSetBetheBlochParamsITSsa(Double_t* param)
voidSetBetheBlochParamsITSTPC(Double_t* param)
voidSetBetheBlochParamsITSTPCDeuteron(Double_t* param)
voidSetBetheBlochParamsITSTPCTriton(Double_t* param)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetElectronBetheBlochParamsITSsa(Double_t* param)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
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
voidTObject::MakeZombie()
private:
Double_tBethe(Double_t bg, const Double_t *const par, Bool_t isNuclei) const

Data Members

private:
Double_tfBBdeu[5]parameters of deuteron BB for TPC+ITS tracks
Double_tfBBsa[5]parameters of BB for SA tracks
Double_tfBBsaElectron[5]parameters of electron BB for SA tracks
Double_tfBBsaHybrid[9]parameters of Hybrid BB for SA tracks, PHOB + Polinomial al low beta*gamma
Double_tfBBtpcits[5]parameters of BB for TPC+ITS tracks
Double_tfBBtri[5]parameters of triton BB for TPC+ITS tracks
Double_tfKp1ALEPH BB param 1
Double_tfKp2ALEPH BB param 2
Double_tfKp3ALEPH BB param 3
Double_tfKp4ALEPH BB param 4
Double_tfKp5ALEPH BB param
Float_tfResrelative dEdx resolution
Float_tfResolSA[5]resolutions vs. n. of SDD/SSD points
Float_tfResolTPCITS[5]resolutions vs. n. of SDD/SSD points
Double_tfResolTPCITSDeu3[3]deuteron resolutions vs. p for tracks with 3 SDD/SSD points
Double_tfResolTPCITSDeu4[3]deuteron resolutions vs. p for tracks with 4 SDD/SSD points
Double_tfResolTPCITSTri3[3]triton resolutions vs. p for tracks with 3 SDD/SSD points
Double_tfResolTPCITSTri4[3]triton resolutions vs. p for tracks with 4 SDD/SSD points

Class Charts

Inheritance Chart:
TObject
AliITSPIDResponse

Function documentation

AliITSPIDResponse(Bool_t isMC = kFALSE)
Double_t BetheAleph(Double_t p, Double_t mass) const
 returns AliExternalTrackParam::BetheBloch normalized to
 fgMIP at the minimum

Double_t Bethe(Double_t bg, const Double_t *const par, Bool_t isNuclei) const
Double_t Bethe(Double_t p, Double_t mass, Bool_t isSA = kFALSE) const
Double_t Bethe(Double_t p, AliPID::EParticleType species, Bool_t isSA = kFALSE) const
 NEW - to be used
 Alternative bethe function assuming a particle type not a mass
 should be slightly faster

Double_t BetheITSsaHybrid(Double_t p, Double_t mass) const
 returns AliExternalTrackParam::BetheBloch normalized to
 fgMIP at the minimum. The PHOBOS parameterization is used for beta*gamma>0.76.
 For beta*gamma<0.76 a polinomial function is used
Double_t GetResolution(Double_t bethe, Int_t nPtsForPid = 4, Bool_t isSA = kFALSE, Double_t p = 0., AliPID::EParticleType type = AliPID::kPion) const
 Calculate expected resolution for truncated mean

 NEW: Added new variables which are Double_t p and AliPID::EParticleType type
 AliPID::EParticleType type is used to set the correct resolution for the different particles
 default -> AliPID::EParticleType type = AliPID::kPion
 Double_t p is used for the resolution of deuteron and triton, because they are function of the momentum
 default -> Double_t p=0.
void GetITSProbabilities(Float_t mom, Double_t* qclu, Double_t* condprobfun, Bool_t isMC = kFALSE) const
 Method to calculate PID probabilities for a single track
 using the likelihood method

Double_t GetNumberOfSigmas(const AliVTrack* track, AliPID::EParticleType species) const
 number of sigmas

Double_t GetSignalDelta(const AliVTrack* track, AliPID::EParticleType species, Bool_t ratio = kFALSE) const
 Signal - expected

Int_t GetParticleIdFromdEdxVsP(Float_t mom, Float_t signal, Bool_t isSA = kFALSE) const
 method to get particle identity with simple cuts on dE/dx vs. momentum
AliITSPIDResponse(Bool_t isMC = kFALSE)
~AliITSPIDResponse()
{}
void SetBetheBlochParamsITSTPC(Double_t* param)
void SetBetheBlochParamsITSTPCDeuteron(Double_t* param)
void SetBetheBlochParamsITSTPCTriton(Double_t* param)
void SetBetheBlochParamsITSsa(Double_t* param)
void SetBetheBlochHybridParamsITSsa(Double_t* param)
void SetElectronBetheBlochParamsITSsa(Double_t* param)
Double_t GetNumberOfSigmas(const AliVTrack* track, AliPID::EParticleType species) const