BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnStsKFTrackFitter Class Reference

#include <BmnStsKFTrackFitter.h>

Inheritance diagram for BmnStsKFTrackFitter:
Collaboration diagram for BmnStsKFTrackFitter:

Public Member Functions

 BmnStsKFTrackFitter ()
 Default constructor.
 ~BmnStsKFTrackFitter ()
 Destructor.
void Init ()
 Initialisation.
Int_t DoFit (CbmStsTrack *track, Int_t pidHypo=211)
 Fit given track using Kalman Filter algorithm.
void ReadMatBudget (TString &matBudgetFileName)
Int_t Fit (CbmStsTrack *track, Int_t pidHypo=211)
Int_t FitWithMat (CbmKFTrack &track, Int_t downstream)
void EvalMaterial (CbmKFTrack &track, int ihit, Int_t downstream, CbmKFMaterial &mat)
void Extrapolate (CbmStsTrack *track, Double_t z, FairTrackParam *e_track)
 Extrapolate track to any Z position.
void Extrapolate (FairTrackParam *trackPar, Double_t z, FairTrackParam *e_track)
 Extrapolate track param.
Double_t GetChiToVertex (CbmStsTrack *track, CbmVertex *vtx=0)
 Get normalized (in sigma's) impact parameter form vertex vtx if no vtx given, return deviation from primary vertex.
Double_t FitToVertex (CbmStsTrack *track, CbmVertex *vtx, FairTrackParam *v_track)
 Fit track to a vertex.
void SetKFHits (CbmKFTrack &T, CbmStsTrack *track)
 BmnStsKFTrackFitter ()
 Default constructor.
 ~BmnStsKFTrackFitter ()
 Destructor.
void Init ()
 Initialisation.
Int_t DoFit (CbmStsTrack *track, Int_t pidHypo=211)
 Fit given track using Kalman Filter algorithm.
void ReadMatBudget (TString &matBudgetFileName)
Int_t Fit (CbmStsTrack *track, Int_t pidHypo=211)
Int_t FitWithMat (CbmKFTrack &track, Int_t downstream)
void EvalMaterial (CbmKFTrack &track, int ihit, Int_t downstream, CbmKFMaterial &mat)
void Extrapolate (CbmStsTrack *track, Double_t z, FairTrackParam *e_track)
 Extrapolate track to any Z position.
void Extrapolate (FairTrackParam *trackPar, Double_t z, FairTrackParam *e_track)
 Extrapolate track param.
Double_t GetChiToVertex (CbmStsTrack *track, CbmVertex *vtx=0)
 Get normalized (in sigma's) impact parameter form vertex vtx if no vtx given, return deviation from primary vertex.
Double_t FitToVertex (CbmStsTrack *track, CbmVertex *vtx, FairTrackParam *v_track)
 Fit track to a vertex.
void SetKFHits (CbmKFTrack &T, CbmStsTrack *track)
Public Member Functions inherited from CbmStsTrackFitter
 CbmStsTrackFitter ()
 Default constructor.
virtual ~CbmStsTrackFitter ()
 Destructor.
 CbmStsTrackFitter ()
 Default constructor.
virtual ~CbmStsTrackFitter ()
 Destructor.
Public Member Functions inherited from TObject
 TObject ()
 TObject (const TObject &object)
virtual ~TObject ()
void AbstractMethod (const char *method) const
virtual void AppendPad (Option_t *option="")
virtual void Browse (TBrowser *b)
ULong_t CheckedHash ()
virtual const char * ClassName () const
virtual void Clear (Option_t *="")
virtual TObject * Clone (const char *newname="") const
virtual Int_t Compare (const TObject *obj) const
virtual void Copy (TObject &object) const
virtual void Delete (Option_t *option="")
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
virtual void Draw (Option_t *option="")
virtual void DrawClass () const
virtual TObject * DrawClone (Option_t *option="") const
virtual void Dump () const
virtual void Error (const char *method, const char *msgfmt,...) const
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
virtual void Fatal (const char *method, const char *msgfmt,...) const
virtual TObject * FindObject (const char *name) const
virtual TObject * FindObject (const TObject *obj) const
virtual Option_t * GetDrawOption () const
virtual const char * GetIconName () const
virtual const char * GetName () const
virtual char * GetObjectInfo (Int_t px, Int_t py) const
virtual Option_t * GetOption () const
virtual const char * GetTitle () const
virtual UInt_t GetUniqueID () const
virtual Bool_t HandleTimer (TTimer *timer)
virtual ULong_t Hash () const
Bool_t HasInconsistentHash () const
virtual void Info (const char *method, const char *msgfmt,...) const
virtual Bool_t InheritsFrom (const char *classname) const
virtual Bool_t InheritsFrom (const TClass *cl) const
virtual void Inspect () const
void InvertBit (UInt_t f)
virtual TClass * IsA () const
Bool_t IsDestructed () const
virtual Bool_t IsEqual (const TObject *obj) const
virtual Bool_t IsFolder () const
R__ALWAYS_INLINE Bool_t IsOnHeap () const
virtual Bool_t IsSortable () const
R__ALWAYS_INLINE Bool_t IsZombie () const
virtual void ls (Option_t *option="") const
void MayNotUse (const char *method) const
virtual Bool_t Notify ()
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
void operator delete (void *ptr)
void operator delete (void *ptr, void *vp)
void operator delete[] (void *ptr)
void operator delete[] (void *ptr, void *vp)
void * operator new (size_t sz)
void * operator new (size_t sz, void *vp)
void * operator new[] (size_t sz)
void * operator new[] (size_t sz, void *vp)
TObject & operator= (const TObject &rhs)
virtual void Paint (Option_t *option="")
virtual void Pop ()
virtual void Print (Option_t *option="") const
virtual Int_t Read (const char *name)
virtual void RecursiveRemove (TObject *obj)
void ResetBit (UInt_t f)
virtual void SaveAs (const char *filename="", Option_t *option="") const
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
void SetBit (UInt_t f)
void SetBit (UInt_t f, Bool_t set)
virtual void SetDrawOption (Option_t *option="")
virtual void SetUniqueID (UInt_t uid)
virtual void Streamer (TBuffer &)
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
virtual void SysError (const char *method, const char *msgfmt,...) const
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
Int_t TestBits (UInt_t f) const
virtual void UseCurrentStyle ()
virtual void Warning (const char *method, const char *msgfmt,...) const
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const

Private Member Functions

Bool_t CheckTrack (CbmKFTrack &T)
 BmnStsKFTrackFitter (const BmnStsKFTrackFitter &)
void operator= (const BmnStsKFTrackFitter &)
Bool_t CheckTrack (CbmKFTrack &T)
 BmnStsKFTrackFitter (const BmnStsKFTrackFitter &)
void operator= (const BmnStsKFTrackFitter &)

Private Attributes

std::vector< BmnKFStsHit > fHits
TClonesArray * fMvdHitsArray
TClonesArray * fStsHitsArray
Bool_t fIsInitialised
std::map< Double_t, TProfile2D * > fMatHistos
TFile * fMatBudgetFile

Additional Inherited Members

Public Types inherited from TObject
enum  EDeprecatedStatusBits
enum  EStatusBits
Static Public Member Functions inherited from TObject
static TClass * Class ()
static const char * Class_Name ()
static constexpr Version_t Class_Version ()
static const char * DeclFileName ()
static Longptr_t GetDtorOnly ()
static Bool_t GetObjectStat ()
static void SetDtorOnly (void *obj)
static void SetObjectStat (Bool_t stat)
Public Attributes inherited from TObject
 kIsOnHeap
 kNotDeleted
 kZombie
 kInconsistent
 kBitMask
 kSingleKey
 kOverwrite
 kWriteDelete
 kObjInCanvas
 kCanDelete
 kMustCleanup
 kIsReferenced
 kHasUUID
 kCannotPick
 kNoContextMenu
 kInvalidObject
Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
void MakeZombie ()
Static Protected Member Functions inherited from TObject
static void SavePrimitiveConstructor (std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE)
static void SavePrimitiveDraw (std::ostream &out, const char *variable_name, Option_t *option=nullptr)
static TString SavePrimitiveVector (std::ostream &out, const char *prefix, Int_t len, Double_t *arr, Bool_t empty_line=kFALSE)
Protected Attributes inherited from TObject
 kOnlyPrepStep

Detailed Description

Definition at line 25 of file BmnStsKFTrackFitter.h.

Constructor & Destructor Documentation

◆ BmnStsKFTrackFitter() [1/4]

BmnStsKFTrackFitter::BmnStsKFTrackFitter ( )

Definition at line 32 of file BmnStsKFTrackFitter.cxx.

References fHits, fIsInitialised, fMatBudgetFile, fMvdHitsArray, and fStsHitsArray.

Referenced by BmnStsKFTrackFitter(), CheckTrack(), and operator=().

Here is the caller graph for this function:

◆ ~BmnStsKFTrackFitter() [1/2]

BmnStsKFTrackFitter::~BmnStsKFTrackFitter ( )

Definition at line 40 of file BmnStsKFTrackFitter.cxx.

◆ BmnStsKFTrackFitter() [2/4]

BmnStsKFTrackFitter::BmnStsKFTrackFitter ( const BmnStsKFTrackFitter & )
private

References BmnStsKFTrackFitter().

Here is the call graph for this function:

◆ BmnStsKFTrackFitter() [3/4]

BmnStsKFTrackFitter::BmnStsKFTrackFitter ( )

◆ ~BmnStsKFTrackFitter() [2/2]

BmnStsKFTrackFitter::~BmnStsKFTrackFitter ( )

◆ BmnStsKFTrackFitter() [4/4]

BmnStsKFTrackFitter::BmnStsKFTrackFitter ( const BmnStsKFTrackFitter & )
private

References BmnStsKFTrackFitter().

Here is the call graph for this function:

Member Function Documentation

◆ CheckTrack() [1/2]

Bool_t BmnStsKFTrackFitter::CheckTrack ( CbmKFTrack & T)
private

Definition at line 556 of file BmnStsKFTrackFitter.cxx.

References TMath::Abs(), i, and TMath::Sqrt().

Referenced by DoFit(), and Fit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CheckTrack() [2/2]

Bool_t BmnStsKFTrackFitter::CheckTrack ( CbmKFTrack & T)
private

References BmnStsKFTrackFitter(), fHits, fIsInitialised, fMatBudgetFile, fMatHistos, fMvdHitsArray, fStsHitsArray, and TObject::TClonesArray.

Here is the call graph for this function:

◆ DoFit() [1/2]

Int_t BmnStsKFTrackFitter::DoFit ( CbmStsTrack * track,
Int_t pidHypo = 211 )
virtual

Implements CbmStsTrackFitter.

Definition at line 114 of file BmnStsKFTrackFitter.cxx.

References CheckTrack(), CbmStsTrack::GetParamLast(), i, CbmStsTrack::SetFlag(), SetKFHits(), CbmKFTrack::SetPID(), and CbmStsTrack::SetPidHypo().

Here is the call graph for this function:

◆ DoFit() [2/2]

Int_t BmnStsKFTrackFitter::DoFit ( CbmStsTrack * track,
Int_t pidHypo = 211 )
virtual

Implements CbmStsTrackFitter.

◆ EvalMaterial() [1/2]

void BmnStsKFTrackFitter::EvalMaterial ( CbmKFTrack & track,
int ihit,
Int_t downstream,
CbmKFMaterial & mat )

Definition at line 391 of file BmnStsKFTrackFitter.cxx.

References TMath::Abs(), CbmKFTube::dz, TAxis::FindBin(), BmnKFStsHit::FitPoint, fMatHistos, TAxis::GetBinCenter(), TProfile2D::GetBinContent(), CbmKFTrack::GetHit(), CbmKFTrack::GetNOfHits(), BmnKFStsHit::GetX(), TH1::GetXaxis(), BmnKFStsHit::GetY(), TH1::GetYaxis(), BmnKFStsHit::GetZ(), i, CbmKFMaterial::ID, CbmKFMaterial::RadLength, CbmKFUMeasurement::sigma2, TMath::Sign(), BmnKFStsHit::tube, CbmKFMaterial::ZReference, and CbmKFMaterial::ZThickness.

Referenced by FitWithMat().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EvalMaterial() [2/2]

void BmnStsKFTrackFitter::EvalMaterial ( CbmKFTrack & track,
int ihit,
Int_t downstream,
CbmKFMaterial & mat )

◆ Extrapolate() [1/4]

void BmnStsKFTrackFitter::Extrapolate ( CbmStsTrack * track,
Double_t z,
FairTrackParam * e_track )
virtual
Parameters
trackalready fitted STS track
znew z-position
e_track(return value) extrapolated track parameters

Implements CbmStsTrackFitter.

Definition at line 480 of file BmnStsKFTrackFitter.cxx.

References CbmStsTrack::GetParamFirst(), CbmStsTrack::GetParamLast(), CbmStsTrack::GetPidHypo(), GetZ(), SetKFHits(), CbmKFTrack::SetPID(), and z.

Here is the call graph for this function:

◆ Extrapolate() [2/4]

void BmnStsKFTrackFitter::Extrapolate ( CbmStsTrack * track,
Double_t z,
FairTrackParam * e_track )
virtual
Parameters
trackalready fitted STS track
znew z-position
e_track(return value) extrapolated track parameters

Implements CbmStsTrackFitter.

References z.

◆ Extrapolate() [3/4]

void BmnStsKFTrackFitter::Extrapolate ( FairTrackParam * trackPar,
Double_t z,
FairTrackParam * e_track )

to any Z position

Parameters
trackParalready fitted track parameters
znew z-position
e_track(return value) extrapolated track parameters

Definition at line 466 of file BmnStsKFTrackFitter.cxx.

References CbmKFTrack::SetTrackParam(), and z.

Here is the call graph for this function:

◆ Extrapolate() [4/4]

void BmnStsKFTrackFitter::Extrapolate ( FairTrackParam * trackPar,
Double_t z,
FairTrackParam * e_track )

to any Z position

Parameters
trackParalready fitted track parameters
znew z-position
e_track(return value) extrapolated track parameters

References z.

◆ Fit() [1/2]

Int_t BmnStsKFTrackFitter::Fit ( CbmStsTrack * track,
Int_t pidHypo = 211 )

Definition at line 194 of file BmnStsKFTrackFitter.cxx.

References CheckTrack(), FitWithMat(), CbmStsTrack::GetParamLast(), i, CbmStsTrack::SetFlag(), SetKFHits(), CbmKFTrack::SetPID(), and CbmStsTrack::SetPidHypo().

Here is the call graph for this function:

◆ Fit() [2/2]

Int_t BmnStsKFTrackFitter::Fit ( CbmStsTrack * track,
Int_t pidHypo = 211 )

◆ FitToVertex() [1/2]

Double_t BmnStsKFTrackFitter::FitToVertex ( CbmStsTrack * track,
CbmVertex * vtx,
FairTrackParam * v_track )
Parameters
trackalready fitted STS track
vtxvertex
v_track(return value) fitted track parameters
Returns
sqrt(Chi^2/NDF)

Definition at line 536 of file BmnStsKFTrackFitter.cxx.

◆ FitToVertex() [2/2]

Double_t BmnStsKFTrackFitter::FitToVertex ( CbmStsTrack * track,
CbmVertex * vtx,
FairTrackParam * v_track )
Parameters
trackalready fitted STS track
vtxvertex
v_track(return value) fitted track parameters
Returns
sqrt(Chi^2/NDF)

◆ FitWithMat() [1/2]

Int_t BmnStsKFTrackFitter::FitWithMat ( CbmKFTrack & track,
Int_t downstream )

Definition at line 245 of file BmnStsKFTrackFitter.cxx.

References EvalMaterial(), CbmKFHit::Filter(), fMatHistos, CbmKFTrack::GetCovMatrix(), CbmKFTrack::GetHit(), CbmKF::GetMethod(), CbmKFTrack::GetNOfHits(), CbmKFTrack::GetRefChi2(), CbmKFTrack::GetRefNDF(), CbmKFTrack::GetTrack(), i, CbmKF::Instance(), CbmKFHit::MaterialIndex, CbmKFMaterial::Pass(), and CbmKF::vMaterial.

Referenced by Fit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FitWithMat() [2/2]

Int_t BmnStsKFTrackFitter::FitWithMat ( CbmKFTrack & track,
Int_t downstream )

◆ GetChiToVertex() [1/2]

Double_t BmnStsKFTrackFitter::GetChiToVertex ( CbmStsTrack * track,
CbmVertex * vtx = 0 )

Definition at line 512 of file BmnStsKFTrackFitter.cxx.

References CbmVertex::CovMatrix(), CbmKFMath::getDeviation(), CbmVertex::GetX(), CbmVertex::GetY(), CbmVertex::GetZ(), and CbmKFTrack::SetStsTrack().

Here is the call graph for this function:

◆ GetChiToVertex() [2/2]

Double_t BmnStsKFTrackFitter::GetChiToVertex ( CbmStsTrack * track,
CbmVertex * vtx = 0 )

◆ Init() [1/2]

void BmnStsKFTrackFitter::Init ( )
virtual

Reimplemented from CbmStsTrackFitter.

Definition at line 52 of file BmnStsKFTrackFitter.cxx.

References fIsInitialised, fMvdHitsArray, fStsHitsArray, and TObject::TClonesArray.

Referenced by SetKFHits().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Init() [2/2]

void BmnStsKFTrackFitter::Init ( )
virtual

Reimplemented from CbmStsTrackFitter.

◆ operator=() [1/2]

void BmnStsKFTrackFitter::operator= ( const BmnStsKFTrackFitter & )
private

References BmnStsKFTrackFitter().

Here is the call graph for this function:

◆ operator=() [2/2]

void BmnStsKFTrackFitter::operator= ( const BmnStsKFTrackFitter & )
private

References BmnStsKFTrackFitter().

Here is the call graph for this function:

◆ ReadMatBudget() [1/2]

void BmnStsKFTrackFitter::ReadMatBudget ( TString & matBudgetFileName)

Definition at line 159 of file BmnStsKFTrackFitter.cxx.

References TObject::TObject(), TString::Atof(), TString::Contains(), fMatBudgetFile, fMatHistos, TNamed::GetTitle(), TString::Last(), TString::Length(), and TFile::Open().

Here is the call graph for this function:

◆ ReadMatBudget() [2/2]

void BmnStsKFTrackFitter::ReadMatBudget ( TString & matBudgetFileName)

◆ SetKFHits() [1/2]

void BmnStsKFTrackFitter::SetKFHits ( CbmKFTrack & T,
CbmStsTrack * track )

Definition at line 83 of file BmnStsKFTrackFitter.cxx.

References fHits, fIsInitialised, fMvdHitsArray, fStsHitsArray, CbmStsTrack::GetMvdHitIndex(), CbmStsTrack::GetNMvdHits(), CbmStsTrack::GetNStsHits(), CbmStsTrack::GetStsHitIndex(), i, and Init().

Referenced by DoFit(), Extrapolate(), and Fit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetKFHits() [2/2]

void BmnStsKFTrackFitter::SetKFHits ( CbmKFTrack & T,
CbmStsTrack * track )

Member Data Documentation

◆ fHits

std::vector< BmnKFStsHit > BmnStsKFTrackFitter::fHits
private

Definition at line 91 of file BmnStsKFTrackFitter.h.

Referenced by BmnStsKFTrackFitter(), CheckTrack(), and SetKFHits().

◆ fIsInitialised

Bool_t BmnStsKFTrackFitter::fIsInitialised
private

Definition at line 96 of file BmnStsKFTrackFitter.h.

Referenced by BmnStsKFTrackFitter(), CheckTrack(), Init(), and SetKFHits().

◆ fMatBudgetFile

TFile * BmnStsKFTrackFitter::fMatBudgetFile
private

Definition at line 100 of file BmnStsKFTrackFitter.h.

Referenced by BmnStsKFTrackFitter(), CheckTrack(), and ReadMatBudget().

◆ fMatHistos

std::map< Double_t, TProfile2D * > BmnStsKFTrackFitter::fMatHistos
private

Definition at line 98 of file BmnStsKFTrackFitter.h.

Referenced by CheckTrack(), EvalMaterial(), FitWithMat(), and ReadMatBudget().

◆ fMvdHitsArray

TClonesArray * BmnStsKFTrackFitter::fMvdHitsArray
private

Definition at line 93 of file BmnStsKFTrackFitter.h.

Referenced by BmnStsKFTrackFitter(), CheckTrack(), Init(), and SetKFHits().

◆ fStsHitsArray

TClonesArray * BmnStsKFTrackFitter::fStsHitsArray
private

Definition at line 94 of file BmnStsKFTrackFitter.h.

Referenced by BmnStsKFTrackFitter(), CheckTrack(), Init(), and SetKFHits().


The documentation for this class was generated from the following files: