ROOT logo
AliRoot » ITS » AliITSPlaneEffSSD

class AliITSPlaneEffSSD: public AliITSPlaneEff

Function Members (Methods)

public:
AliITSPlaneEffSSD()
AliITSPlaneEffSSD(const AliITSPlaneEffSSD& source)
virtual~AliITSPlaneEffSSD()
voidTObject::AbstractMethod(const char* method) const
virtual Bool_tAddFromCDB()
Bool_tAddFromCDB(AliCDBId* cdbId)
virtual voidTObject::AppendPad(Option_t* option = "")
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::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 Double_tErrLivePlaneEff(UInt_t mod) const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
Double_tErrPlaneEff(const UInt_t mod) 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 Bool_tFillHistos(UInt_t key, Bool_t found, Float_t* track, Float_t* cluster, Int_t* ctype, Float_t*)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Bool_tGetBlockBoundaries(const UInt_t key, Float_t& xmn, Float_t& xmx, Float_t& zmn, Float_t& zmx) const
virtual Bool_tAliITSPlaneEff::GetCreateHistos() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Int_tGetFound(const UInt_t key) const
virtual Double_tGetFracBad(const UInt_t mod) const
virtual Double_tGetFracLive(const UInt_t mod) const
virtual const char*TObject::GetIconName() const
UInt_tGetKey(const UInt_t mod) const
virtual UInt_tGetKeyFromDetLocCoord(Int_t ilay, Int_t idet, Float_t, Float_t locz) const
virtual const char*TObject::GetName() const
virtual Int_tAliITSPlaneEff::GetNTracksForGivenEff(Double_t eff, Double_t RelErr) const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual voidAliITSPlaneEff::GetPlaneEff(Int_t nfound, Int_t ntried, Double_t& eff, Double_t& err) const
Int_tAliITSPlaneEff::GetRunNumber() const
virtual const char*TObject::GetTitle() const
Int_tGetTried(const UInt_t key) 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 voidAliITSPlaneEff::InitCDB()
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 Double_tLivePlaneEff(UInt_t mod) const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual UInt_tNblock() 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)
AliITSPlaneEffSSD&operator+=(const AliITSPlaneEffSSD& add)
AliITSPlaneEffSSD&operator=(const AliITSPlaneEffSSD& s)
virtual voidTObject::Paint(Option_t* option = "")
virtual Double_tPlaneEff(const UInt_t mod) const
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual Bool_tReadFromCDB()
virtual Bool_tReadHistosFromFile(TString filename = "PlaneEffSSDHistos.root")
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 = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetCreateHistos(Bool_t his = kFALSE)
voidAliITSPlaneEff::SetDefaultStorage(const char* uri)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidAliITSPlaneEff::SetRunNumber(Int_t n)
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 Bool_tUpDatePlaneEff(const Bool_t Kfound, const UInt_t mod)
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
virtual Bool_tWriteHistosToFile(TString filename = "PlaneEffSSDHistos.root", Option_t* option = "RECREATE")
virtual Bool_tWriteIntoCDB() const
protected:
virtual voidCopy(TObject& obj) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidGetBadInModule(const UInt_t mod, UInt_t& bad) const
Int_tGetMissingTracksForGivenEff(Double_t eff, Double_t RelErr, UInt_t im) const
UInt_tGetModFromKey(const UInt_t key) const
voidTObject::MakeZombie()
voidAliITSPlaneEff::NotImplemented(const char* method) const
private:
voidCopyHistos(AliITSPlaneEffSSD& target) const
virtual voidDeleteHistos()
virtual voidInitHistos()

Data Members

public:
enum { kNModule
kNChip
kNSide
kNStrip
kNHisto
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TStringAliITSPlaneEff::fCDBUri! Uri of the default CDB storage
Int_tfFound[1698]number of associated clusters in a given module
Bool_tAliITSPlaneEff::fHis! if true, then histograms are created and filled
Bool_tAliITSPlaneEff::fInitCDBCalled! flag to check if CDB storages are already initialized
Int_tAliITSPlaneEff::fRunNumber! run number (to access CDB)
Int_tfTried[1698]number of tracks used for module efficiency evaluation
private:
TH1F**fHisClusErrX! histos with Local_X cluster error
TH1F**fHisClusErrZ! histos with Local_Z cluster error
TH2I**fHisClusterSize! histos with cluster-size distribution
TH1F**fHisResX! histos with residual distribution (track-cluster) along local X (r-phi)
TH2F**fHisResXZ! 2-d histos with residual distribution (track-cluster) along local X and Z
TH1F**fHisResZ! histos with residual distribution (track-cluster) along local Z
TH1F**fHisTrackErrX! histos with track prediction error on Local X
TH1F**fHisTrackErrZ! histos with track prediction error on Local Z

Class Charts

Inheritance Chart:
TObject
AliPlaneEff
AliITSPlaneEff
AliITSPlaneEffSSD

Function documentation

AliITSPlaneEffSSD()
~AliITSPlaneEffSSD()
 destructor
 Inputs:
    none.
 Outputs:
    none.
 Return:
     none.
AliITSPlaneEffSSD(const AliITSPlaneEffSSD& source)
     Copy Constructor
 Inputs:
    AliITSPlaneEffSSD &s The original class for which
                                this class is a copy of
 Outputs:
    none.
 Return:
AliITSPlaneEffSSD& operator+=(const AliITSPlaneEffSSD& add)
    Add-to-me operator
 Inputs:
    const AliITSPlaneEffSSD &add  simulation class to be added
 Outputs:
    none.
 Return:
    none
AliITSPlaneEffSSD& operator=(const AliITSPlaneEffSSD& s)
    Assignment operator
 Inputs:
    AliITSPlaneEffSSD &s The original class for which
                                this class is a copy of
 Outputs:
    none.
 Return:
void Copy(TObject& obj) const
 protected method. copy this to obj
void CopyHistos(AliITSPlaneEffSSD& target) const
 protected method: copy histos from this to target
Int_t GetMissingTracksForGivenEff(Double_t eff, Double_t RelErr, UInt_t im) const
   Estimate the number of tracks still to be collected to attain a
   given efficiency eff, with relative error RelErr
   Inputs:
         eff    -> Expected efficiency (e.g. those from actual estimate)
         RelErr -> tollerance [0,1]
         im     -> module number [0,1697]
   Outputs: none
   Return: the estimated n. of tracks

Double_t PlaneEff(const UInt_t mod) const
 Compute the efficiency for a basic block,
 Inputs:
        im     -> module number [0,1697]
Double_t ErrPlaneEff(const UInt_t mod) const
 Compute the statistical error on efficiency for a basic block,
 using binomial statistics
 Inputs:
        im     -> module number [0,1697]
Bool_t UpDatePlaneEff(const Bool_t Kfound, const UInt_t mod)
 Update efficiency for a basic block
UInt_t GetKey(const UInt_t mod) const
 get key given a basic block
UInt_t GetModFromKey(const UInt_t key) const
 get mod. from key
Double_t LivePlaneEff(UInt_t mod) const
 returns plane efficieny after adding the fraction of sensor which is bad
Double_t ErrLivePlaneEff(UInt_t mod) const
 returns error on live plane efficiency
Double_t GetFracLive(const UInt_t mod) const
 returns the fraction of the sensor area which is OK (neither noisy nor dead)
 As for now, it computes only the fraction of good strips / total strips.
 If this fraction is large, then the computation is a good approximation.
 In any case, it is a lower limit of the fraction of the live area.
 The next upgrades would be to add the fraction of area of superoposition
 between bad N-side strips and bad P-side strips.
void GetBadInModule(const UInt_t mod, UInt_t& bad) const
 returns the number of dead and noisy strips (sum of P and N sides).
Double_t GetFracBad(const UInt_t mod) const
 returns 1-fractional live
Bool_t WriteIntoCDB() const
 write onto CDB
Bool_t ReadFromCDB()
 read from CDB
Bool_t AddFromCDB(AliCDBId* cdbId)
 Read (actually add the statistics) plane eff. from Data Base
UInt_t GetKeyFromDetLocCoord(Int_t ilay, Int_t idet, Float_t , Float_t locz) const
 method to locate a basic block from Detector Local coordinate (to be used in tracking)
void InitHistos()
 for the moment let's create the histograms
 module by  module
void DeleteHistos()
 Delete histograms and remove them from memory
Bool_t FillHistos(UInt_t key, Bool_t found, Float_t* track, Float_t* cluster, Int_t* ctype, Float_t* )
 this method fill the histograms
 input: - key: unique key of the basic block
        - found: Boolean to asses whether a cluster has been associated to the track or not
        - tr[0],tr[1] local X and Z coordinates of the track prediction, respectively
        - tr[2],tr[3] error on local X and Z coordinates of the track prediction, respectively
        - clu[0],clu[1] local X and Z coordinates of the cluster associated to the track, respectively
        - clu[2],clu[3] error on local X and Z coordinates of the cluster associated to the track, respectively
        - csize[0][1] cluster size in X and Z, respectively
 output: kTRUE if filling was succesfull kFALSE otherwise
 side effects: updating of the histograms.

Bool_t WriteHistosToFile(TString filename = "PlaneEffSSDHistos.root", Option_t* option = "RECREATE")
 Saves the histograms into a tree and saves the trees into a file

Bool_t ReadHistosFromFile(TString filename = "PlaneEffSSDHistos.root")
 Read histograms from an already existing file

UInt_t Nblock() const
{return kNModule;}
Bool_t GetBlockBoundaries(const UInt_t key, Float_t& xmn, Float_t& xmx, Float_t& zmn, Float_t& zmx) const
  This method return the geometrical boundaries of the active volume of a given
  basic block, in the detector reference system.

{AliWarning("GetBlockBoundaries: you asked for a non existing key"); return kFALSE;}
Int_t GetFound(const UInt_t key) const
Int_t GetTried(const UInt_t key) const
Bool_t AddFromCDB(AliCDBId* cdbId)
void SetCreateHistos(Bool_t his = kFALSE)
 Methods for dealing with auxiliary histograms
 method to set on/off the creation/updates of histograms (Histos are created/destroyed)