Represent an output for a system.
More...
#include <MultiSensorEKF.h>
|
| Output (int stateDim, int outputDim, int outputNoiseDim, const outputfunc_t &outputFunc, const statespace::NoiseCovMatX &covMat) |
| Create an output for a model.
|
|
Eigen::MatrixXd | outputFuncJacobianX (const Eigen::VectorXd &state) |
| Calculate the output function jacobian at the given state wrt state.
|
|
Eigen::MatrixXd | outputFuncJacobianV (const Eigen::VectorXd &state) |
| Calculate the output function jacobian at the given state wrt the output noise.
|
|
Eigen::VectorXd | getOutput (const Eigen::VectorXd &state) |
| Evaluate the output function at the given state.
|
|
void | setOutputFuncJacobianX (const std::function< Eigen::MatrixXd(const Eigen::VectorXd &, const Eigen::VectorXd &)> &jacobianX) |
| Set an analytic solution to dh/dx.
|
|
void | setOutputFuncJacobianV (const std::function< Eigen::MatrixXd(const Eigen::VectorXd &, const Eigen::VectorXd &)> &jacobianV) |
| Set an analytic solution to dh/dv.
|
|
|
const int | stateDim |
|
const int | outputDim |
|
const int | outputNoiseDim |
|
const outputfunc_t | outputFunc |
|
const statespace::NoiseCovMatX | covMat |
|
Represent an output for a system.
This represents a sensor.
◆ outputfunc_t
using filters::Output::outputfunc_t |
Initial value:
std::function<Eigen::VectorXd(const Eigen::VectorXd&, const Eigen::VectorXd&)>
◆ Output()
filters::Output::Output |
( |
int | stateDim, |
|
|
int | outputDim, |
|
|
int | outputNoiseDim, |
|
|
const outputfunc_t & | outputFunc, |
|
|
const statespace::NoiseCovMatX & | covMat ) |
|
inline |
Create an output for a model.
- Parameters
-
stateDim | The dimension of the state vector. |
outputDim | The dimension of the output vector (measurement). |
outputNoiseDim | The dimension of the noise applied to the output. |
outputFunc | The output function that takes a state vector and output noise vector and produces an output vector. |
covMat | The covariance matrix of the output noise vector. The state dimension must be statedim , the parameter size must outputDim and the size must be outputnoiseDim |
◆ getOutput()
Eigen::VectorXd filters::Output::getOutput |
( |
const Eigen::VectorXd & | state | ) |
|
|
inline |
Evaluate the output function at the given state.
- Parameters
-
state | The state vector to evaluate at. |
- Returns
- Eigen::VectorXd An output vector of dimension outputDim.
◆ outputFuncJacobianV()
Eigen::MatrixXd filters::Output::outputFuncJacobianV |
( |
const Eigen::VectorXd & | state | ) |
|
|
inline |
Calculate the output function jacobian at the given state wrt the output noise.
If an analytic solution has been provided, the jacobian is calculated using that. Otherwise, it is numerically approximated using the output function.
- Parameters
-
state | The state to evaluate the jacobian at. |
- Returns
- Eigen::MatrixXd The outputDim x processNoiseDim jacobian matrix.
◆ outputFuncJacobianX()
Eigen::MatrixXd filters::Output::outputFuncJacobianX |
( |
const Eigen::VectorXd & | state | ) |
|
|
inline |
Calculate the output function jacobian at the given state wrt state.
If an analytic solution has been provided, the jacobian is calculated using that. Otherwise, it is numerically approximated using the output function.
- Parameters
-
state | The state to evaluate the jacobian at. |
- Returns
- Eigen::MatrixXd The outputDim x stateDim jacobian matrix.
◆ setOutputFuncJacobianV()
void filters::Output::setOutputFuncJacobianV |
( |
const std::function< Eigen::MatrixXd(const Eigen::VectorXd &, const Eigen::VectorXd &)> & | jacobianV | ) |
|
|
inline |
Set an analytic solution to dh/dv.
Behavior is undefined if the supplied functions do not accept or return vectors/matrices of the correct dimensions.
- Parameters
-
jacobianV | The analytic solution to dh/dv. The jacobian function takes a state vector and an output noise vector and returns a outputDim x outputNoiseDim jacobian matrix. |
- Warning
- Behavior is undefined if the supplied functions do not accept or return vectors/matrices of the correct dimensions.
◆ setOutputFuncJacobianX()
void filters::Output::setOutputFuncJacobianX |
( |
const std::function< Eigen::MatrixXd(const Eigen::VectorXd &, const Eigen::VectorXd &)> & | jacobianX | ) |
|
|
inline |
Set an analytic solution to dh/dx.
Behavior is undefined if the supplied functions do not accept or return vectors/matrices of the correct dimensions.
- Parameters
-
jacobianV | The analytic solution to dh/dx. The jacobian function takes a state vector and an output noise vector and returns a outputDim x stateDim jacobian matrix. |
- Warning
- Behavior is undefined if the supplied functions do not accept or return vectors/matrices of the correct dimensions.
The documentation for this class was generated from the following file: