 |
Belle II Software
release-05-01-25
|
23 #ifndef genfit_AbsKalmanFitter_h
24 #define genfit_AbsKalmanFitter_h
26 #include "AbsFitter.h"
27 #include "MeasurementOnPlane.h"
28 #include "TrackPoint.h"
33 class KalmanFitterInfo;
55 AbsKalmanFitter(
unsigned int maxIterations = 4,
double deltaPval = 1e-3,
double blowUpFactor = 1e3)
68 void getChiSquNdf(
const Track* tr,
const AbsTrackRep* rep,
double& bChi2,
double& fChi2,
double& bNdf,
double& fNdf)
const;
69 double getChiSqu(
const Track* tr,
const AbsTrackRep* rep,
int direction = -1)
const;
70 double getNdf(
const Track* tr,
const AbsTrackRep* rep,
int direction = -1)
const;
71 double getRedChiSqu(
const Track* tr,
const AbsTrackRep* rep,
int direction = -1)
const;
72 double getPVal(
const Track* tr,
const AbsTrackRep* rep,
int direction = -1)
const;
76 double getDeltaPval()
const {
return deltaPval_;}
108 void setBlowUpFactor(
double blowUpFactor) {
blowUpFactor_ = blowUpFactor;}
109 void setResetOffDiagonals(
bool resetOffDiagonals) {
resetOffDiagonals_ = resetOffDiagonals;}
126 bool isTrackPrepared(
const Track* tr,
const AbsTrackRep* rep)
const;
127 bool isTrackFitted(
const Track* tr,
const AbsTrackRep* rep)
const;
135 const std::vector<MeasurementOnPlane *>
getMeasurements(
const KalmanFitterInfo* fi,
const TrackPoint* tp,
int direction)
const;
183 #endif //genfit_AbsKalmanFitter_h
@ unweightedClosestToReferenceWire
if corresponding TrackPoint has one WireMeasurement, select closest to reference, weighted with 1.
@ unweightedClosestToPredictionWire
if corresponding TrackPoint has one WireMeasurement, select closest to prediction,...
const std::vector< MeasurementOnPlane * > getMeasurements(const KalmanFitterInfo *fi, const TrackPoint *tp, int direction) const
get the measurementsOnPlane taking the multipleMeasurementHandling_ into account
virtual void setMaxIterations(unsigned int n)
Set the maximum number of iterations.
@ unweightedClosestToReference
closest to reference, weighted with 1
@ weightedClosestToReference
closest to reference, weighted with its weight_
Defines for I/O streams used for error and debug printing.
Collection of TrackPoint objects, AbsTrackRep objects and FitStatus objects.
double blowUpFactor_
Blow up the covariance of the forward (backward) fit by this factor before seeding the backward (forw...
Abstract base class for a track representation.
void setMultipleMeasurementHandling(eMultipleMeasurementHandling mmh)
How should multiple measurements be handled?
@ unweightedAverage
average between measurements, all weighted with 1
@ weightedClosestToPrediction
closest to prediction, weighted with its weight_
eMultipleMeasurementHandling multipleMeasurementHandling_
How to handle if there are multiple MeasurementsOnPlane.
double relChi2Change_
@ brief Non-convergence criterion
double blowUpMaxVal_
Limit the cov entries to this maxuimum value when blowing up the cov.
@ unweightedClosestToPrediction
closest to prediction, weighted with 1
void setDeltaPval(double deltaPval)
Set Convergence criterion.
double deltaPval_
Convergence criterion.
@ weightedClosestToReferenceWire
if corresponding TrackPoint has one WireMeasurement, select closest to reference, weighted with its w...
bool canIgnoreWeights() const
returns if the fitter can ignore the weights and handle the MeasurementOnPlanes as if they had weight...
Abstract base class for Kalman fitter and derived fitting algorithms.
@ weightedAverage
weighted average between measurements; used by DAF
bool resetOffDiagonals_
Reset the off-diagonals to 0 when blowing up the cov.
void setRelChi2Change(double relChi2Change)
@ brief Set Non-convergence criterion
eMultipleMeasurementHandling
unsigned int maxIterations_
Maximum number of iterations to attempt. Forward and backward are counted as one iteration.
virtual void setMinIterations(unsigned int n)
Set the minimum number of iterations.
int maxFailedHits_
after how many failed hits (exception during construction of plane, extrapolation etc....
void setBlowUpMaxVal(double blowUpMaxVal)
Limit the cov entries to this maximum value when blowing up the cov. Set to negative value to disable...
@ weightedClosestToPredictionWire
if corresponding TrackPoint has one WireMeasurement, select closest to prediction,...
Abstract base class for fitters.
unsigned int minIterations_
Minimum number of iterations to attempt. Forward and backward are counted as one iteration.