11 inline double sqr(
double arg) {
return arg *
arg; }
15 : maxIteration(15),
minDeltaR(0.0015), minDistance(0.002), weightThreshold(0.001) {}
24 std::vector<GhostTrackState> &states,
38 if (states.begin() == states.end())
42 for (
unsigned int i = 0;
i < states.size();
i++) {
51 for (std::vector<GhostTrackState>::const_iterator
state = states.begin();
state != states.end(); ++
state) {
SequentialGhostTrackFitter()
unsigned int maxIteration
virtual bool stable(const GhostTrackPrediction &before, const GhostTrackPrediction &after) const
GhostTrackPrediction fit(const GhostTrackFitter::PredictionUpdater &updater, const GhostTrackPrediction &prior, std::vector< GhostTrackState > &states, double &ndof, double &chi2) override
virtual void postFit(const GhostTrackFitter::PredictionUpdater &updater, const GhostTrackPrediction &pred, std::vector< GhostTrackState > &states)
virtual GhostTrackPrediction update(const GhostTrackPrediction &pred, const GhostTrackState &state, double &ndof, double &chi2) const =0
bool linearize(const GhostTrackPrediction &pred, bool initial=false, double lambda=0.)