Equivariant Filter (EqF) implementation. More...
#include <ABC_EQF.h>
Public Member Functions | |
| EqF (const Matrix &Sigma, int m) | |
| void | propagation (const Input &u, double dt) |
| State< N > | stateEstimate () const |
| void | update (const Measurement &y) |
Private Member Functions | |
| Matrix | inputMatrixBt () const |
| Matrix | measurementMatrixC (const Unit3 &d, int idx) const |
| Matrix | outputMatrixDt (int idx) const |
| Matrix | stateMatrixA (const Input &u) const |
| Matrix | stateTransitionMatrix (const Input &u, double dt) const |
Private Attributes | |
| int | dof |
| Matrix | Dphi0 |
| Matrix | InnovationLift |
| Matrix | Sigma |
| G< N > | X_hat |
| State< N > | xi_0 |
Equivariant Filter (EqF) implementation.
| gtsam::abc_eqf_lib::EqF< N >::EqF | ( | const Matrix & | Sigma, |
| int | m | ||
| ) |
Initialize EqF
| Sigma | Initial covariance |
| m | Number of sensors |
Initializes the EqF with state dimension validation and computes lifted innovation mapping
| Sigma | Initial covariance |
| n | Number of calibration states |
| m | Number of sensors Uses SelfAdjointSolver, completeOrthoganalDecomposition().pseudoInverse() |
|
private |
|
private |
Return the measurement matrix C0 (Equation 14b)
| d | Known direction |
| idx | Calibration index |
Computes the linearized measurement matrix. The structure depends on whether the sensor has a calibration state
| d | reference direction |
| idx | Calibration index |
|
private |
Return the measurement output matrix Dt
| idx | Calibration index |
Computes the measurement uncertainty propagation matrix
| idx | Calibration index |
| void gtsam::abc_eqf_lib::EqF< N >::propagation | ( | const Input & | u, |
| double | dt | ||
| ) |
Propagate the filter state
| u | Angular velocity measurement |
| dt | Time step |
Implements the prediction step of the EqF using system dynamics and covariance propagation and advances the filter state by symmtery-preserving dynamics.Uses a Lie group integrator scheme for discrete time propagation
| u | Angular velocity measurements |
| dt | time steps Updated internal state and covariance |
| State< N > gtsam::abc_eqf_lib::EqF< N >::stateEstimate |
|
private |
|
private |
| void gtsam::abc_eqf_lib::EqF< N >::update | ( | const Measurement & | y | ) |
Update the filter state with a measurement
| y | Direction measurement |
Implements the correction step of the filter using discrete measurements Computes the measurement residual, Kalman gain and the updates both the state and covariance
| y | Measurements |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |