26 #include "AbsKalmanFitter.h"
71 DAF(std::tuple<double, double, int> annealingScheme,
int minIter,
int maxIter,
int minIterForPval,
bool useRefKalman =
true,
72 double deltaPval = 1e-3,
double deltaWeight = 1e-3,
double probCut = 1e-3);
78 DAF(
bool useRefKalman =
true,
double deltaPval = 1e-3,
double deltaWeight = 1e-3);
97 void addProbCut(
const double prob_cut,
const int measDim);
99 const std::vector<double>& getBetas()
const {
return betas_;}
113 void setAnnealingScheme(
double bStart,
double bFinal,
unsigned int nSteps,
unsigned int minIter,
unsigned int maxIter);
122 virtual void setMaxFailedHits(
int val)
override {getKalman()->setMaxFailedHits(val);}
124 virtual void setDebugLvl(
unsigned int lvl = 1)
override {AbsFitter::setDebugLvl(lvl);
if (lvl > 1) getKalman()->setDebugLvl(lvl - 1);}
132 bool calcWeights(Track* trk,
const AbsTrackRep* rep,
double beta);
136 std::vector<double> betas_;
142 std::unique_ptr<AbsKalmanFitter> kalman_;
146 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.