![]() |
PandaRoot
|
Generic Kalman Filter implementation. More...
#include <GFKalman.h>
Public Member Functions | |
GFKalman () | |
~GFKalman () | |
void | operator() (GFTrack *track) |
Operator for use with STL. More... | |
void | operator() (std::pair< int, GFTrack *> tr) |
Operator for use with STL. More... | |
void | setLazy (Int_t) |
Switch lazy error handling. More... | |
void | setNumIterations (Int_t i) |
Set number of iterations for Kalman Filter. More... | |
void | processTrack (GFTrack *trk) |
Performs fit on a GFTrack. More... | |
void | fittingPass (GFTrack *, int dir) |
Performs fit on a GFTrack beginning with the current hit. More... | |
double | getChi2Hit (GFAbsRecoHit *, GFAbsTrackRep *) |
Calculates chi2 of a given hit with respect to a given track representation. More... | |
void | setInitialDirection (int d) |
Sets the inital direction of the track fit (1 for inner to outer, or -1 for outer to inner). The standard is 1 and is set in the ctor. More... | |
void | setBlowUpFactor (double f) |
Set the blowup factor (see blowUpCovs() ) More... | |
Generic Kalman Filter implementation.
The Kalman Filter operates on genfit GFTrack objects. It is an implementation of the Kalman Filter algebra that uses the genfit interface classes GFAbsRecoHit and GFAbsTrackRep in order to be independent from the specific detector geometry and the details of the track parameterization / track extraoplation engine.
The Kalman Filter can use hits from several detectors in a single fit to estimate the parameters of several track representations in parallel.
Definition at line 49 of file GFKalman.h.
GFKalman::GFKalman | ( | ) |
GFKalman::~GFKalman | ( | ) |
void GFKalman::fittingPass | ( | GFTrack * | , |
int | dir | ||
) |
Performs fit on a GFTrack beginning with the current hit.
Referenced by setNumIterations().
double GFKalman::getChi2Hit | ( | GFAbsRecoHit * | , |
GFAbsTrackRep * | |||
) |
Calculates chi2 of a given hit with respect to a given track representation.
Referenced by setNumIterations().
|
inline |
Operator for use with STL.
This operator allows to use the std::foreach algorithm with an STL container o GFTrack* objects.
Definition at line 63 of file GFKalman.h.
References processTrack().
|
inline |
Operator for use with STL.
This operator allows to use the std::foreach algorithm with an STL container o GFTrack* objects.
Definition at line 70 of file GFKalman.h.
References processTrack().
void GFKalman::processTrack | ( | GFTrack * | trk | ) |
Performs fit on a GFTrack.
The hits are processed in the order in which they are stored in the GFTrack object. Sorting of hits in space has to be done before!
Referenced by operator()(), and setNumIterations().
|
inline |
|
inline |
Sets the inital direction of the track fit (1 for inner to outer, or -1 for outer to inner). The standard is 1 and is set in the ctor.
Definition at line 105 of file GFKalman.h.
|
inline |
Switch lazy error handling.
This is a historically left-over method and shall be deleted some time
Definition at line 78 of file GFKalman.h.
|
inline |
Set number of iterations for Kalman Filter.
One iteration is one forward pass plus one backward pass
Definition at line 84 of file GFKalman.h.
References fittingPass(), getChi2Hit(), i, and processTrack().