13#ifndef FLEXIBILITYESTIMATION_EKFFLEXIBILITYESTIMATORBASE_H
14#define FLEXIBILITYESTIMATION_EKFFLEXIBILITYESTIMATORBASE_H
16#include <boost/utility.hpp>
18#include <state-observation/api.h>
19#include <state-observation/observer/extended-kalman-filter.hpp>
25namespace flexibilityEstimation
45 Index measurementSize,
47 const Vector & dx = Vector::Zero(0));
81 virtual Vector getMeasurement();
93 virtual Vector getMeasurementInput();
141 virtual void setJacobians(
const Matrix & A,
const Matrix & C);
143 virtual void useFiniteDifferencesJacobians(
Vector dx);
147 bool finiteDifferencesJacobians_;
virtual Matrix4 getFlexibility()=0
Gets an estimation of the flexibility in the form of a homogeneous matrix.
virtual Index getStateSize() const =0
virtual void setMeasurementNoiseCovariance(const Matrix &R)
virtual void setFlexibilityGuess(const Matrix &)=0
virtual const Vector & getFlexibilityVector()
Gets an estimation of the flexibility in the form of a state vector \hat{x_{k+1}}.
virtual Matrix getProcessNoiseCovariance() const
gets the covariance matrices for the process noises
virtual const stateObservation::ExtendedKalmanFilter & getEKF() const
Gets a const reference on the extended Kalman filter.
virtual stateObservation::ExtendedKalmanFilter & getEKF()
Gets a reference on the extended Kalman filter.
EKFFlexibilityEstimatorBase(Index stateSize, Index measurementSize, Index inputSize, const Vector &dx=Vector::Zero(0))
virtual ~EKFFlexibilityEstimatorBase()
virtual destructor
virtual Vector getLastPredictedMeasurement()
Get the last simulated measurement.
virtual void setInput(const Vector &u)
virtual Vector getInnovation()
Get the last vector of inovation of the Kalman filter.
virtual Vector getPredictedMeasurement()
Get the simulated measurement of the predicted state.
virtual void resetCovarianceMatrices()=0
Resets the covariance matrices to their original values.
virtual Index getInputSize() const =0
virtual Matrix getFlexibilityCovariance() const
Gets the covariance matrix of the flexibility.
virtual void setProcessNoiseCovariance(const Matrix &Q)
virtual void setMeasurementInput(const Vector &u)
virtual Vector getPrediction()
Get the predicted state.
virtual Vector getSimulatedMeasurement()
Gets a simulation of the.
virtual void setFlexibilityCovariance(const Matrix &P)
Sets the covariance matrix of the flexibility Guess.
virtual Vector getLastPrediction()
Get the last predicted state.
virtual void setMeasurement(const Vector &y)
Sets the value of the next sensor measurement y_{k+1}.
virtual Matrix getMeasurementNoiseCovariance() const
gets the covariance matrices for the sensor noises
virtual Index getMeasurementSize() const =0
FlexibilityEstimatorBase()
The constructor.
Definitions of base class for flexibility estimator.
Filtering of divergent component of motion (DCM) and estimation of a bias betweeen the DCM and the co...
Eigen::Matrix4d Matrix4
4x4 Scalar Matrix
Eigen::MatrixXd Matrix
Dynamic sized Matrix.
Eigen::VectorXd Vector
Dynamic sized scalar vector.