ROOT logo
AliRoot » PWGPP » AliTrackComparison

class AliTrackComparison: public TNamed

 Base class to test the extrapolation performance from TPC to outer
 detectors. Several member functions AddTracks() with different
 arguments can be called to execute extrapolation and several
 THnSparse are filled with residuls and basic track information

 Anthor: R.Ma, M.Ivanov 02/04/2011

Id:

Function Members (Methods)

public:
AliTrackComparison()
AliTrackComparison(const AliTrackComparison& comp)
AliTrackComparison(const Text_t* name, const Text_t* title)
virtual~AliTrackComparison()
voidTObject::AbstractMethod(const char* method) const
virtual voidAdd(AliTrackComparison *const comp)
Int_tAddTracks(AliExternalTrackParam* param0, AliExternalTrackParam* param1, Double_t mass)
Int_tAddTracks(AliTrackReference* ref0, AliTrackReference* ref1, Double_t mass, Int_t charge)
Int_tAddTracks(AliExternalTrackParam* param0, AliTrackPoint* point1, Double_t mass, Double_t energy, Double_t* vxyz)
voidAnalyze()
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
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 voidTNamed::Copy(TObject& named) 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 voidTNamed::FillBuffer(char*& buffer)
voidFillHistos(AliExternalTrackParam* param0, AliExternalTrackParam* param1, Double_t tr1Pt)
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()
THnSparse*GetHnSparse(Int_t index)
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
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
voidInit()
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
voidMakeDistortionMap(Double_t refX, Int_t type)
AliExternalTrackParam*MakeTrack(const AliTrackReference* ref, Int_t charge)
voidTObject::MayNotUse(const char* method) const
virtual Long64_tMerge(TCollection *const li)
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)
AliTrackComparison&operator=(const AliTrackComparison& comp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
Bool_tPropagateToPoint(AliExternalTrackParam* param0, AliExternalTrackParam* param1, Double_t mass)
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 = "")
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)
voidSetFillAll(Bool_t fillAll)
voidSetLayerID(Double_t layerID)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidSetNBins(Int_t nBinsDY, Int_t nBinsDZ, Int_t nBinsDSnp, Int_t nBinsDTheta, Int_t nBins1Pt, Int_t nBins1PtLoss)
voidSetNCombineBin(Int_t nCombineBin)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetRange1Pt(Double_t lowBin1Pt, Double_t upBin1Pt)
voidSetRange1PtLoss(Double_t lowBin1PtLoss, Double_t upBin1PtLoss)
voidSetRangeDSnp(Double_t lowBinDSnp, Double_t upBinDSnp)
voidSetRangeDTheta(Double_t lowBinDTheta, Double_t upBinDTheta)
voidSetRangeDY(Double_t lowBinDY, Double_t upBinDY)
voidSetRangeDZ(Double_t lowBinDZ, Double_t upBinDZ)
voidSetStep(Double_t step)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
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
voidMakeHistos()
voidTObject::MakeZombie()

Data Members

protected:
Bool_tfFillAllFlag to fill all the THnSparse
Double_tfLayerIDDetector layer ID
Double_tfLowBin1PtFirst bin of residual in 1/pT
Double_tfLowBin1PtLossFirst bin of corrected energy loss
Double_tfLowBinDSnpFirst bin of residual in sin(phi)
Double_tfLowBinDThetaFirst bin of residual in Theta
Double_tfLowBinDYFirst bin of residual in Y
Double_tfLowBinDZFirst bin of residual in Z
Int_tfNBins1PtNBins of residual in 1/pT
Int_tfNBins1PtLossNBins of corrected energy loss
Int_tfNBinsDSnpNBins of residual in sin(phi)
Int_tfNBinsDThetaNBins of residual in Theta
Int_tfNBinsDYNBins of residual in Y
Int_tfNBinsDZNBins of residual in Z
Int_tfNCombineBinNumber of bins used to combine statistics in MakeDistortionMap()
TStringTNamed::fNameobject identifier
THnSparse*fResolHisto[6]Output THnSparse
Double_tfStepStep used in extrapolation
TStringTNamed::fTitleobject title
Double_tfUpBin1PtLast bin of residual in 1/pT
Double_tfUpBin1PtLossLast bin of corrected energy loss
Double_tfUpBinDSnpLast bin of residual in sin(phi)
Double_tfUpBinDThetaLast bin of residual in Theta
Double_tfUpBinDYLast bin of residual in Y
Double_tfUpBinDZLast bin of residual in Z

Class Charts

Inheritance Chart:
TNamed
AliTrackComparison

Function documentation

AliTrackComparison()
 Default constructor

AliTrackComparison(const Text_t* name, const Text_t* title)
 Non default cosntructor

AliTrackComparison(const AliTrackComparison& comp)
 copy constructor

AliTrackComparison& operator=(const AliTrackComparison& comp)


void Init()
Initilized the output histograms

~AliTrackComparison()


void Analyze()


Int_t AddTracks(AliTrackReference* ref0, AliTrackReference* ref1, Double_t mass, Int_t charge)
 Make track param out of track reference
 Test propagation from ref0 to ref1
 Fill the THnSparse with ref0 and ref1
Int_t AddTracks(AliExternalTrackParam* param0, AliExternalTrackParam* param1, Double_t mass)
Test propagation from param0 to param1
Fill the THnSparse with param0 and param1

Int_t AddTracks(AliExternalTrackParam* param0, AliTrackPoint* point1, Double_t mass, Double_t energy, Double_t* vxyz)
Test propagation from param0 to point1
This function is usually called in real data analysis when only the
position of the track point is known. In this case, the angles
in the track param are not the angles of the track momentum, but position.
Only the first two and last two THnSparse are meaninglful and should be
filled. Set this via SetFillAll(kFALSE)
Bool_t PropagateToPoint(AliExternalTrackParam* param0, AliExternalTrackParam* param1, Double_t mass)
Extrapolate is performed

AliExternalTrackParam * MakeTrack(const AliTrackReference* ref, Int_t charge)
 Make track out of the track ref
 the covariance matrix - equal 0 - starting from ideal MC position
Long64_t Merge(TCollection *const li)
Merge the comparison objects

void Add(AliTrackComparison *const comp)
 Add THnSparse

void MakeHistos()
Called in Init() to initialize histograms

void FillHistos(AliExternalTrackParam* param0, AliExternalTrackParam* param1, Double_t tr1Pt)
Fill the THnSparse.
In case of not filling all, only the 4 out of 6 THnSparse are filed

void MakeDistortionMap(Double_t refX, Int_t type)
 make a distortion map out of the residual histogram
 Results are written to the debug streamer - pcstream
 Parameters:
   pcstream   - file to write the tree
   run        - run number
   refX       - track matching reference X
   type       - 0- y 1-z,2 -snp, 3-theta, 4-1/pt, 5-corrected 1/pT
 THnSparse axes:
 OBJ: TAxis     #Delta  #Delta
 OBJ: TAxis     tanTheta        tan(#Theta)
 OBJ: TAxis     phi     #phi
 OBJ: TAxis     1/pt    1/pt
 OBJ: TAxis     LayerID LayerID
 marian.ivanov@cern.ch
void SetStep(Double_t step)
Set the step used in extrapolatoin
{fStep=step;}
void SetRangeDY(Double_t lowBinDY, Double_t upBinDY)
Set the range of the first bins of the THnSparse
{fLowBinDY=lowBinDY,fUpBinDY=upBinDY;}
void SetRangeDZ(Double_t lowBinDZ, Double_t upBinDZ)
{fLowBinDZ=lowBinDZ,fUpBinDZ=upBinDZ;}
void SetRangeDSnp(Double_t lowBinDSnp, Double_t upBinDSnp)
{fLowBinDSnp=lowBinDSnp;fUpBinDSnp=upBinDSnp;}
void SetRangeDTheta(Double_t lowBinDTheta, Double_t upBinDTheta)
{fLowBinDTheta=lowBinDTheta;fUpBinDTheta=upBinDTheta;}
void SetRange1Pt(Double_t lowBin1Pt, Double_t upBin1Pt)
{fLowBin1Pt=lowBin1Pt;fUpBin1Pt=upBin1Pt;}
void SetRange1PtLoss(Double_t lowBin1PtLoss, Double_t upBin1PtLoss)
{fLowBin1PtLoss=lowBin1PtLoss;fUpBin1PtLoss=upBin1PtLoss;}
void SetNBins(Int_t nBinsDY, Int_t nBinsDZ, Int_t nBinsDSnp, Int_t nBinsDTheta, Int_t nBins1Pt, Int_t nBins1PtLoss)
Set number of bins
void SetLayerID(Double_t layerID)
Set the layer ID of the detectors. Refer to AliGeomManager.h
{fLayerID=layerID;}
void SetFillAll(Bool_t fillAll)
Set the flag to fill all the THnSparse's. By default it is kTURE
{fFillAll=fillAll;}
THnSparse * GetHnSparse(Int_t index)
Getter
{return fResolHisto[index];}
void SetNCombineBin(Int_t nCombineBin)
Set number of bins used to combine statistics
{fNCombineBin=nCombineBin;}