Update Thornton Bierman factorization authored by Gabriel François Laupré's avatar Gabriel François Laupré
...@@ -22,9 +22,9 @@ containing the diagonal coefficients. ...@@ -22,9 +22,9 @@ containing the diagonal coefficients.
### Initial decomposition ### Initial decomposition
Even that we always work with the factorized covariance, we still read Even though the factorized covariance is used for computation, the unfactorized
the unfactorized initial covariance matrix from the configuration file. initial covariance matrix is read from the configuration file.
Therefore, we need to factorize this initial covariance matrix before Therefore, this initial covariance matrix needs to be factorized before
beginning to filter. This is done by the `EKF::UDDecomp()` method. This beginning to filter. This is done by the `EKF::UDDecomp()` method. This
factorization is a variant of the Cholewsky decomposition, and the factorization is a variant of the Cholewsky decomposition, and the
implementation is largely inspired from the source of Eigen's `LDLT` implementation is largely inspired from the source of Eigen's `LDLT`
...@@ -51,12 +51,12 @@ implementation is very close to the Matlab ...@@ -51,12 +51,12 @@ implementation is very close to the Matlab
implementation, since it is not possible to use many block operations in implementation, since it is not possible to use many block operations in
this case. It is implemented in the `EKF::updateState` method. this case. It is implemented in the `EKF::updateState` method.
Since the algorithm only support single-dimensional updates, we have to Since the algorithm only supports single-dimensional updates, each component of
compute each component of the measurement sequentially. This implies the measurement has to be computed sequentially. This implies
that we must recompute the residuals after every component update. Since that the residuals must be computed after every component update. Since
the measurement model is non-linear, we recompute the h function after the measurement model is non-linear, the h function is reevaluated after
every iteration, and the results differ significantly from the result of every iteration, and the results differ significantly from the result of
the standard Kalman filter algorithm. The difference can be greatly the standard Kalman filter algorithm. The difference can be greatly
reduced by using a linearized version of the of the measurement model. reduced by using a linearized version of the measurement model.
In the absence of ground truth, it is not possible to tell which results In the absence of ground truth, it is not possible to tell which results
are closest to reality, and this would require further research. are closest to reality, and this would require further research.
\ No newline at end of file