Class Acts::KalmanFitter

template<typename propagator_t, typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother>
class Acts::KalmanFitter

Kalman fitter implementation.

The Kalman filter contains an Actor and a Sequencer sub-class. The Sequencer has to be part of the Navigator of the Propagator in order to initialize and provide the measurement surfaces.

tparam propagator_t

Type of the propagation class

tparam updater_t

Type of the kalman updater class

tparam smoother_t

Type of the kalman smoother class

The Actor is part of the Propagation call and does the Kalman update and eventually the smoothing. Updater, Smoother and Calibrator are given to the Actor for further use:

  • The Updater is the implemented kalman updater formalism, it runs via a visitor pattern through the measurements.

  • The Smoother is called at the end of the filtering by the Actor.

Measurements are not required to be ordered for the KalmanFilter, measurement ordering needs to be figured out by the navigation of the propagator.

The void components are provided mainly for unit testing.

Public Functions

inline KalmanFitter(propagator_t pPropagator)

Fit implementation of the foward filter, calls the the filter and smoother/reversed filter.

Note

The input measurements are given in the form of SourceLinks. It’s calibrator_t's job to turn them into calibrated measurements used in the fit.

Template Parameters
  • source_link_t – Type of the source link

  • start_parameters_t – Type of the initial parameters

  • calibrator_t – Type of the source link calibrator

  • outlier_finder_t – Type of the outlier finder

  • reverse_filtering_logic_t – Type of the smoothing logic

  • parameters_t – Type of parameters used for local parameters

Parameters
  • sourcelinks – The fittable uncalibrated measurements

  • sParameters – The initial track parameters

  • kfOptions – KalmanOptions steering the fit

Returns

the output as an output track

Fit implementation of the foward filter, calls the the filter and smoother/reversed filter.

Note

The input measurements are given in the form of SourceLinks. It’s calibrator_t's job to turn them into calibrated measurements used in the fit.

Template Parameters
  • source_link_t – Type of the source link

  • start_parameters_t – Type of the initial parameters

  • calibrator_t – Type of the source link calibrator

  • outlier_finder_t – Type of the outlier finder

  • reverse_filtering_logic_t – Type of the smoothing logic

  • parameters_t – Type of parameters used for local parameters

Parameters
  • sourcelinks – The fittable uncalibrated measurements

  • sParameters – The initial track parameters

  • kfOptions – KalmanOptions steering the fit

  • sSequence – surface sequence used to initialize a DirectNavigator

Returns

the output as an output track