PandaRoot
genfit::KalmanFitterRefTrack Class Reference

Kalman filter implementation with linearization around a reference track. More...

#include <KalmanFitterRefTrack.h>

Inheritance diagram for genfit::KalmanFitterRefTrack:
genfit::AbsKalmanFitter genfit::AbsFitter

Public Member Functions

 KalmanFitterRefTrack (unsigned int maxIterations=4, double deltaPval=1e-3, double blowUpFactor=1e3)
 
virtual ~KalmanFitterRefTrack ()
 
TrackPointfitTrack (Track *tr, const AbsTrackRep *rep, double &chi2, double &ndf, int direction)
 Fit the track. More...
 
void processTrackWithRep (Track *tr, const AbsTrackRep *rep, bool resortHits=false)
 
bool prepareTrack (Track *tr, const AbsTrackRep *rep, bool setSortingParams, int &nFailedHits)
 Prepare the track. More...
 
void setRefitAll (bool refit=true)
 If true always refit all points, otherwise fit points only if reference states have changed. More...
 
void setDeltaChi2Ref (double dChi2)
 
- Public Member Functions inherited from genfit::AbsKalmanFitter
 AbsKalmanFitter (unsigned int maxIterations=4, double deltaPval=1e-3, double blowUpFactor=1e3)
 
virtual ~AbsKalmanFitter ()
 
void getChiSquNdf (const Track *tr, const AbsTrackRep *rep, double &bChi2, double &fChi2, double &bNdf, double &fNdf) const
 
double getChiSqu (const Track *tr, const AbsTrackRep *rep, int direction=-1) const
 
double getNdf (const Track *tr, const AbsTrackRep *rep, int direction=-1) const
 
double getRedChiSqu (const Track *tr, const AbsTrackRep *rep, int direction=-1) const
 
double getPVal (const Track *tr, const AbsTrackRep *rep, int direction=-1) const
 
unsigned int getMinIterations () const
 
unsigned int getMaxIterations () const
 
double getDeltaPval () const
 
double getRelChi2Change () const
 
double getBlowUpFactor () const
 
bool getResetOffDiagonals () const
 
double getBlowUpMaxVal () const
 
eMultipleMeasurementHandling getMultipleMeasurementHandling () const
 
int getMaxFailedHits () const
 
virtual void setMinIterations (unsigned int n)
 Set the minimum number of iterations. More...
 
virtual void setMaxIterations (unsigned int n)
 Set the maximum number of iterations. More...
 
void setDeltaPval (double deltaPval)
 Set Convergence criterion. More...
 
void setRelChi2Change (double relChi2Change)
 
void setBlowUpFactor (double blowUpFactor)
 
void setResetOffDiagonals (bool resetOffDiagonals)
 
void setBlowUpMaxVal (double blowUpMaxVal)
 Limit the cov entries to this maximum value when blowing up the cov. Set to negative value to disable. Default is 1.E6. More...
 
void setMultipleMeasurementHandling (eMultipleMeasurementHandling mmh)
 How should multiple measurements be handled? More...
 
virtual void setMaxFailedHits (int val)
 
bool isTrackPrepared (const Track *tr, const AbsTrackRep *rep) const
 
bool isTrackFitted (const Track *tr, const AbsTrackRep *rep) const
 
bool canIgnoreWeights () const
 returns if the fitter can ignore the weights and handle the MeasurementOnPlanes as if they had weight 1. More...
 
- Public Member Functions inherited from genfit::AbsFitter
 AbsFitter ()
 
virtual ~AbsFitter ()
 
void processTrack (Track *, bool resortHits=false)
 
virtual void setDebugLvl (unsigned int lvl=1)
 

Additional Inherited Members

- Protected Member Functions inherited from genfit::AbsKalmanFitter
const std::vector< MeasurementOnPlane * > getMeasurements (const KalmanFitterInfo *fi, const TrackPoint *tp, int direction) const
 get the measurementsOnPlane taking the multipleMeasurementHandling_ into account More...
 
- Protected Attributes inherited from genfit::AbsKalmanFitter
unsigned int minIterations_
 Minimum number of iterations to attempt. Forward and backward are counted as one iteration. More...
 
unsigned int maxIterations_
 Maximum number of iterations to attempt. Forward and backward are counted as one iteration. More...
 
double deltaPval_
 Convergence criterion. More...
 
double relChi2Change_
 
double blowUpFactor_
 Blow up the covariance of the forward (backward) fit by this factor before seeding the backward (forward) fit. More...
 
bool resetOffDiagonals_
 Reset the off-diagonals to 0 when blowing up the cov. More...
 
double blowUpMaxVal_
 Limit the cov entries to this maxuimum value when blowing up the cov. More...
 
eMultipleMeasurementHandling multipleMeasurementHandling_
 How to handle if there are multiple MeasurementsOnPlane. More...
 
int maxFailedHits_
 
- Protected Attributes inherited from genfit::AbsFitter
unsigned int debugLvl_
 

Detailed Description

Kalman filter implementation with linearization around a reference track.

Definition at line 36 of file KalmanFitterRefTrack.h.

Constructor & Destructor Documentation

◆ KalmanFitterRefTrack()

genfit::KalmanFitterRefTrack::KalmanFitterRefTrack ( unsigned int  maxIterations = 4,
double  deltaPval = 1e-3,
double  blowUpFactor = 1e3 
)
inline

Definition at line 38 of file KalmanFitterRefTrack.h.

39  : AbsKalmanFitter(maxIterations, deltaPval, blowUpFactor), refitAll_(false), deltaChi2Ref_(1)
40  {
41  }
AbsKalmanFitter(unsigned int maxIterations=4, double deltaPval=1e-3, double blowUpFactor=1e3)

◆ ~KalmanFitterRefTrack()

virtual genfit::KalmanFitterRefTrack::~KalmanFitterRefTrack ( )
inlinevirtual

Definition at line 43 of file KalmanFitterRefTrack.h.

References fitTrack(), prepareTrack(), and processTrackWithRep().

43 {}

Member Function Documentation

◆ fitTrack()

TrackPoint* genfit::KalmanFitterRefTrack::fitTrack ( Track tr,
const AbsTrackRep rep,
double &  chi2,
double &  ndf,
int  direction 
)

Fit the track.

Needs a prepared track! Return last TrackPoint that has been processed.

Referenced by ~KalmanFitterRefTrack().

◆ prepareTrack()

bool genfit::KalmanFitterRefTrack::prepareTrack ( Track tr,
const AbsTrackRep rep,
bool  setSortingParams,
int &  nFailedHits 
)

Prepare the track.

Calc all reference states. If setSortingParams is true, the extrapolation lengths will be set as sorting parameters of the TrackPoints. Returns if the track has been changed.

Referenced by ~KalmanFitterRefTrack().

◆ processTrackWithRep()

void genfit::KalmanFitterRefTrack::processTrackWithRep ( Track ,
const AbsTrackRep ,
bool  resortHits = false 
)
virtual

Process Track with one AbsTrackRep of the Track. Optionally resort the hits if necessary (and supported by the fitter)

Implements genfit::AbsFitter.

Referenced by ~KalmanFitterRefTrack().

◆ setDeltaChi2Ref()

void genfit::KalmanFitterRefTrack::setDeltaChi2Ref ( double  dChi2)
inline

When will the reference track be updated? If (smoothedState - referenceState) * smoothedCov^(-1) * (smoothedState - referenceState)^T >= deltaChi2Ref_.

Definition at line 69 of file KalmanFitterRefTrack.h.

69 { deltaChi2Ref_ = dChi2; }

◆ setRefitAll()

void genfit::KalmanFitterRefTrack::setRefitAll ( bool  refit = true)
inline

If true always refit all points, otherwise fit points only if reference states have changed.

Definition at line 63 of file KalmanFitterRefTrack.h.

63 { refitAll_ = refit; }

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