26 #include "AbsKalmanFitter.h"
63 DAF(
bool useRefKalman =
true,
double deltaPval = 1e-3,
double deltaWeight = 1e-3);
82 void addProbCut(
const double prob_cut,
const int measDim);
84 const std::vector<double>& getBetas()
const {
return betas_;}
100 virtual void setMaxFailedHits(
int val)
override {getKalman()->setMaxFailedHits(val);}
102 virtual void setDebugLvl(
unsigned int lvl = 1)
override {AbsFitter::setDebugLvl(lvl);
if (lvl > 1) getKalman()->setDebugLvl(lvl-1);}
110 bool calcWeights(Track* trk,
const AbsTrackRep* rep,
double beta);
114 std::vector<double> betas_;
120 std::unique_ptr<AbsKalmanFitter> kalman_;
124 ClassDefOverride(DAF,2)
Abstract base class for Kalman fitter and derived fitting algorithms.
unsigned int maxIterations_
Maximum number of iterations to attempt. Forward and backward are counted as one iteration.
Abstract base class for a track representation.
Determinstic Annealing Filter (DAF) implementation.
void setConvergenceDeltaWeight(double delta)
If all weights change less than delta between two iterations, the fit is regarded as converged.
void processTrackWithRep(Track *tr, const AbsTrackRep *rep, bool resortHits=false) override
Process a track using the DAF.
void setProbCut(const double prob_cut)
Set the probability cut for the weight calculation for the hits.
void setMaxIterations(unsigned int n) override
Set the maximum number of iterations.
void setAnnealingScheme(double bStart, double bFinal, unsigned int nSteps)
Configure the annealing scheme.
void addProbCut(const double prob_cut, const int measDim)
Set the probability cut for the weight calculation for the hits for a specific measurement dimensiona...
bool calcWeights(Track *trk, const AbsTrackRep *rep, double beta)
Calculate and set the weights for the next fitting pass.
Collection of TrackPoint objects, AbsTrackRep objects and FitStatus objects.
Defines for I/O streams used for error and debug printing.