6#include <janus/janus.hpp>
21 Eigen::Matrix<Scalar, N, 1>
x;
22 Eigen::Matrix<Scalar, N, N>
P;
26 :
x(Eigen::
Matrix<Scalar, N, 1>::Zero()),
27 P(Eigen::
Matrix<Scalar, N, N>::Identity()) {}
31 const Eigen::Matrix<Scalar, N, N> &covariance)
32 :
x(state),
P(covariance) {}
47 Eigen::Matrix<double, N, N>
Q;
53 explicit ProcessNoise(
const Eigen::Matrix<double, N, N> &covariance)
58 diagonal(
const Eigen::Matrix<double, N, 1> &variances) {
60 noise.
Q = variances.asDiagonal();
67 noise.
Q = Eigen::Matrix<double, N, N>::Identity() * variance;
80 Eigen::Matrix<double, M, M>
R;
91 diagonal(
const Eigen::Matrix<double, M, 1> &variances) {
93 noise.
R = variances.asDiagonal();
100 noise.
R = Eigen::Matrix<double, M, M>::Identity() * variance;
Definition EstimationTypes.hpp:8
janus::JanusMatrix< Scalar > Matrix
Dynamic-size matrix template (use with Scalar = double or SymbolicScalar).
Definition VulcanTypes.hpp:27
Eigen::Matrix< Scalar, N, 1 > x
State estimate.
Definition EstimationTypes.hpp:21
Eigen::Matrix< Scalar, N, N > P
State covariance.
Definition EstimationTypes.hpp:22
FilterState(const Eigen::Matrix< Scalar, N, 1 > &state, const Eigen::Matrix< Scalar, N, N > &covariance)
Constructor with state and covariance.
Definition EstimationTypes.hpp:30
FilterState()
Default constructor - zero-initializes state, identity covariance.
Definition EstimationTypes.hpp:25
Measurement noise specification.
Definition EstimationTypes.hpp:79
MeasurementNoise()
Default constructor - zero noise.
Definition EstimationTypes.hpp:83
static MeasurementNoise< M > scalar(double variance)
Create scalar (isotropic) measurement noise.
Definition EstimationTypes.hpp:98
MeasurementNoise(const Eigen::Matrix< double, M, M > &covariance)
Constructor with covariance matrix.
Definition EstimationTypes.hpp:86
static MeasurementNoise< M > diagonal(const Eigen::Matrix< double, M, 1 > &variances)
Create diagonal measurement noise from variance vector.
Definition EstimationTypes.hpp:91
Eigen::Matrix< double, M, M > R
Measurement noise covariance.
Definition EstimationTypes.hpp:80
Process noise specification.
Definition EstimationTypes.hpp:46
ProcessNoise()
Default constructor - zero noise.
Definition EstimationTypes.hpp:50
ProcessNoise(const Eigen::Matrix< double, N, N > &covariance)
Constructor with covariance matrix.
Definition EstimationTypes.hpp:53
static ProcessNoise< N > scalar(double variance)
Create scalar (isotropic) process noise.
Definition EstimationTypes.hpp:65
Eigen::Matrix< double, N, N > Q
Process noise covariance.
Definition EstimationTypes.hpp:47
static ProcessNoise< N > diagonal(const Eigen::Matrix< double, N, 1 > &variances)
Create diagonal process noise from variance vector.
Definition EstimationTypes.hpp:58