srukfInterface#
Executive Summary#
This class provides an interface for square root unscented Kalman Filters. Modules which inherit from it will benefit from having the core functionality of the SRuKF. This class inherits from the Kalman Filter interface
The math is derived primarily using the following equations:
PDF Description
contains further information on this module’s mathematical framework.
Virtual and Private method descriptors#
The following table lists all the module input and output messages. The module msg connection is set by the user from python. The msg type contains a link to the message structure definition, while the description provides information on what this message is used for.
Method Name |
Method Function |
Protected or Private |
Virtual or not |
|---|---|---|---|
timeUpdate |
filter time update |
private |
non-virtual |
measurementUpdate |
filter measurement update in the presence of measurements |
private |
non-virtual |
computePostFitResiudals |
compute filter post fit residuals |
private |
non-virtual |
qrDecompositionJustR |
perform a QR decomposition and return just the R matrix |
private |
non-virtual |
choleskyUpDownDate |
perform a cholesky down-date as seen in the paper |
private |
non-virtual |
backSubstitution |
perform a back-substitution on a upper triangular matrix |
private |
non-virtual |
forwardSubstitution |
perform a forward-substitution on a lower triangular matrix |
private |
non-virtual |
choleskyDecomposition |
perform a cholesky decomposition |
private |
non-virtual |
Module assumptions and limitations#
- The module inherits all assumptions made while implementing a Kalman filter:
Observability considerations
Gaussian covariances
Linearity limits
and more
Otherwise, the limitations are governed by the measurement model and dynamics models relative to the required performance.
User Guide#
This section lists all the setters and getters that are defined by the interface
Method Name |
Method Function |
Necessity |
|---|---|---|
set/getAlpha |
filter alpha parameter |
necessary |
set/getBeta |
filter beta parameter |
necessary |
-
class SRukfInterface : public KalmanFilter#
Square Root unscented Kalman Filter base class.
Subclassed by FlybyODuKF, InertialAttitudeUkf, SunlineSRuKF
Public Functions
-
void reset(uint64_t currentSimNanos) final#
Reset all of the filter states, including the custom reset
- Parameters:
currentSimNanos – The clock time at which the function was called (nanoseconds)
- Returns:
void
-
void setAlpha(double alpha)#
Set the filter alpha parameter
- Parameters:
double – alphaInput
- Returns:
void
-
double getAlpha() const#
Get the filter alpha parameter
- Returns:
double alpha
-
void setBeta(double beta)#
Set the filter beta parameter
- Parameters:
double – betaInput
- Returns:
void
-
double getBeta() const#
Get the filter beta parameter
- Returns:
double beta
-
void reset(uint64_t currentSimNanos) final#