BmnRoot
Loading...
Searching...
No Matches
BmnMotherFitterPart Class Reference

Kalman filter mother particle fitter for the BM@N detector. More...

#include <BmnMotherFitterPart.h>

Inheritance diagram for BmnMotherFitterPart:
[legend]
Collaboration diagram for BmnMotherFitterPart:
[legend]

Public Member Functions

virtual void Exec (Option_t *option)
 
void Reset ()
 
void Register ()
 
Double_t BuildMother (BmnParticle *mother, vector< BmnParticle * > &vDaught)
 
Double_t FindVertex (vector< BmnParticle * > vDaught, TVector3 &vtx)
 
Bool_t ComputeAandB (const TMatrixD &xk0, const BmnParticle &part, TMatrixD &a, TMatrixD &b, TMatrixD &ck0, Bool_t flag=kTRUE)
 
Double_t FieldConst () const
 
TMatrixD ComputeQmatr (vector< BmnParticle * > vDaught)
 
TMatrixD & GetCovariance ()
 
Double_t Chi2Vertex (BmnParticle *part, const CbmVertex *vtx)
 compute Chi2 w.r.t. vertex
 
virtual void Exec (Option_t *option)
 
void Reset ()
 
void Register ()
 
Double_t BuildMother (BmnParticle *mother, vector< BmnParticle * > &vDaught)
 
Double_t FindVertex (vector< BmnParticle * > vDaught, TVector3 &vtx)
 
Bool_t ComputeAandB (const TMatrixD &xk0, const BmnParticle &part, TMatrixD &a, TMatrixD &b, TMatrixD &ck0, Bool_t flag=kTRUE)
 
Double_t FieldConst () const
 
TMatrixD ComputeQmatr (vector< BmnParticle * > vDaught)
 
TMatrixD & GetCovariance ()
 
Double_t Chi2Vertex (BmnParticle *part, const CbmVertex *vtx)
 compute Chi2 w.r.t. vertex
 

Static Public Member Functions

static BmnMotherFitterPartInstance ()
 get singleton instance
 
static BmnMotherFitterPartInstance (const char *name, const char *title="FAIR Task")
 get singleton instance
 
static BmnMotherFitterPartInstance ()
 get singleton instance
 
static BmnMotherFitterPartInstance (const char *name, const char *title="FAIR Task")
 get singleton instance
 

Protected Member Functions

virtual InitStatus Init ()
 
virtual InitStatus ReInit ()
 
virtual void Finish ()
 
virtual ~BmnMotherFitterPart ()
 Destructor.
 
virtual InitStatus Init ()
 
virtual InitStatus ReInit ()
 
virtual void Finish ()
 
virtual ~BmnMotherFitterPart ()
 Destructor.
 

Detailed Description

Kalman filter mother particle fitter for the BM@N detector.

(using BmnParticle)

Author
Alexander Zinchenko, LHEP JINR Dubna

Kalman filter mother particle fitter for the BM@N detector (using BmnParticle)

Author
Alexander Zinchenko (LHEP, JINR, Dubna) 03-07-2025

Definition at line 27 of file BmnMotherFitterPart.h.

Constructor & Destructor Documentation

◆ ~BmnMotherFitterPart() [1/2]

BmnMotherFitterPart::~BmnMotherFitterPart ( )
protectedvirtual

Destructor.

Destructor

Definition at line 85 of file BmnMotherFitterPart.cxx.

◆ ~BmnMotherFitterPart() [2/2]

virtual BmnMotherFitterPart::~BmnMotherFitterPart ( )
protectedvirtual

Destructor.

Member Function Documentation

◆ BuildMother() [1/2]

◆ BuildMother() [2/2]

Double_t BmnMotherFitterPart::BuildMother ( BmnParticle mother,
vector< BmnParticle * > &  vDaught 
)

◆ Chi2Vertex() [1/2]

Double_t BmnMotherFitterPart::Chi2Vertex ( BmnParticle part,
const CbmVertex vtx 
)

compute Chi2 w.r.t. vertex

Compute Chi2 w.r.t. vertex

Definition at line 1025 of file BmnMotherFitterPart.cxx.

References ComputeAandB(), CbmVertex::CovMatrix(), BmnParticle::GetG(), BmnParticle::GetMeas(), CbmVertex::GetX(), CbmVertex::GetY(), CbmVertex::GetZ(), and m.

Referenced by BmnParticle::Chi2Vertex().

◆ Chi2Vertex() [2/2]

Double_t BmnMotherFitterPart::Chi2Vertex ( BmnParticle part,
const CbmVertex vtx 
)

compute Chi2 w.r.t. vertex

◆ ComputeAandB() [1/2]

Bool_t BmnMotherFitterPart::ComputeAandB ( const TMatrixD &  xk0,
const BmnParticle part,
TMatrixD &  a,
TMatrixD &  b,
TMatrixD &  ck0,
Bool_t  flag = kTRUE 
)

◆ ComputeAandB() [2/2]

Bool_t BmnMotherFitterPart::ComputeAandB ( const TMatrixD &  xk0,
const BmnParticle part,
TMatrixD &  a,
TMatrixD &  b,
TMatrixD &  ck0,
Bool_t  flag = kTRUE 
)

◆ ComputeQmatr() [1/2]

TMatrixD BmnMotherFitterPart::ComputeQmatr ( vector< BmnParticle * >  vDaught)

Compute matrix Q = covariance cov(qk,qj) Qkj = Wk*Bkt*Gk*Ak*C*Ajt*Gj*Bj*Wj = Wk*Bkt*Gk*Ak*(-E), k!=j Qii = D

Definition at line 946 of file BmnMotherFitterPart.cxx.

References BmnParticle::GetA(), BmnParticle::GetB(), BmnParticle::GetCharge(), BmnParticle::GetD(), BmnParticle::GetE(), BmnParticle::GetG(), BmnParticle::GetJ(), BmnParticle::GetW(), and i.

Referenced by BuildMother().

◆ ComputeQmatr() [2/2]

TMatrixD BmnMotherFitterPart::ComputeQmatr ( vector< BmnParticle * >  vDaught)

◆ Exec() [1/2]

void BmnMotherFitterPart::Exec ( Option_t *  option)
virtual

Definition at line 143 of file BmnMotherFitterPart.cxx.

◆ Exec() [2/2]

virtual void BmnMotherFitterPart::Exec ( Option_t *  option)
virtual

◆ FieldConst() [1/2]

Double_t BmnMotherFitterPart::FieldConst ( ) const
inline

Definition at line 54 of file BmnMotherFitterPart.h.

◆ FieldConst() [2/2]

Double_t BmnMotherFitterPart::FieldConst ( ) const
inline

Definition at line 54 of file BmnMotherFitterPart.h.

◆ FindVertex() [1/2]

Double_t BmnMotherFitterPart::FindVertex ( vector< BmnParticle * >  vDaught,
TVector3 &  vtx 
)

Kalman filter based secondary vertex fitter

Definition at line 454 of file BmnMotherFitterPart.cxx.

References ComputeAandB(), BmnParticle::GetG(), BmnParticle::GetMeas(), i, and m.

Referenced by BuildMother().

◆ FindVertex() [2/2]

Double_t BmnMotherFitterPart::FindVertex ( vector< BmnParticle * >  vDaught,
TVector3 &  vtx 
)

◆ Finish() [1/2]

void BmnMotherFitterPart::Finish ( )
protectedvirtual

Definition at line 137 of file BmnMotherFitterPart.cxx.

◆ Finish() [2/2]

virtual void BmnMotherFitterPart::Finish ( )
protectedvirtual

◆ GetCovariance() [1/2]

TMatrixD & BmnMotherFitterPart::GetCovariance ( )
inline

Definition at line 56 of file BmnMotherFitterPart.h.

Referenced by BuildMother().

◆ GetCovariance() [2/2]

TMatrixD & BmnMotherFitterPart::GetCovariance ( )
inline

Definition at line 56 of file BmnMotherFitterPart.h.

◆ Init() [1/2]

InitStatus BmnMotherFitterPart::Init ( )
protectedvirtual

Definition at line 93 of file BmnMotherFitterPart.cxx.

Referenced by Instance(), and Instance().

◆ Init() [2/2]

virtual InitStatus BmnMotherFitterPart::Init ( )
protectedvirtual

◆ Instance() [1/4]

BmnMotherFitterPart * BmnMotherFitterPart::Instance ( )
static

get singleton instance

Get pointer to the mother fitter singleton object

Definition at line 59 of file BmnMotherFitterPart.cxx.

References Init().

Referenced by BuildMother(), BmnParticle::BuildMother(), and BmnParticle::Chi2Vertex().

◆ Instance() [2/4]

static BmnMotherFitterPart * BmnMotherFitterPart::Instance ( )
static

get singleton instance

◆ Instance() [3/4]

BmnMotherFitterPart * BmnMotherFitterPart::Instance ( const char *  name,
const char *  title = "FAIR Task" 
)
static

get singleton instance

Get pointer to the mother fitter singleton object

Definition at line 72 of file BmnMotherFitterPart.cxx.

References Init().

◆ Instance() [4/4]

static BmnMotherFitterPart * BmnMotherFitterPart::Instance ( const char *  name,
const char *  title = "FAIR Task" 
)
static

get singleton instance

◆ Register() [1/2]

void BmnMotherFitterPart::Register ( )

Definition at line 129 of file BmnMotherFitterPart.cxx.

◆ Register() [2/2]

void BmnMotherFitterPart::Register ( )

◆ ReInit() [1/2]

InitStatus BmnMotherFitterPart::ReInit ( )
protectedvirtual

Definition at line 115 of file BmnMotherFitterPart.cxx.

◆ ReInit() [2/2]

virtual InitStatus BmnMotherFitterPart::ReInit ( )
protectedvirtual

◆ Reset() [1/2]

void BmnMotherFitterPart::Reset ( )

Definition at line 122 of file BmnMotherFitterPart.cxx.

◆ Reset() [2/2]

void BmnMotherFitterPart::Reset ( )

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