13#ifndef FLEXIBILITYESTIMATION_EKFFLEXIBILITYESTIMATORBASE_H
14#define FLEXIBILITYESTIMATION_EKFFLEXIBILITYESTIMATORBASE_H
16#include <boost/utility.hpp>
18#include <state-observation/api.h>
25namespace flexibilityEstimation
47 const Vector &
dx = Vector::Zero(0));
Definition extended-kalman-filter.hpp:43
This class is the base class of the flexibility estimators that use an extended Kalman Filter....
Definition ekf-flexibility-estimator-base.hpp:36
virtual Matrix4 getFlexibility()=0
Gets an estimation of the flexibility in the form of a homogeneous matrix.
virtual Index getStateSize() const =0
virtual Vector getMeasurement()
stateObservation::ExtendedKalmanFilter ekf_
Definition ekf-flexibility-estimator-base.hpp:145
virtual void setMeasurementNoiseCovariance(const Matrix &R)
virtual void setJacobians(const Matrix &A, const Matrix &C)
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}}.
Vector lastX_
Definition ekf-flexibility-estimator-base.hpp:151
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.
TimeIndex k_
Definition ekf-flexibility-estimator-base.hpp:153
virtual stateObservation::ExtendedKalmanFilter & getEKF()
Gets a reference on the extended Kalman filter.
Vector dx_
Definition ekf-flexibility-estimator-base.hpp:149
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 Vector getInput()
bool finiteDifferencesJacobians_
Definition ekf-flexibility-estimator-base.hpp:147
virtual void setMeasurementInput(const Vector &u)
virtual void useFiniteDifferencesJacobians(Vector dx)
virtual Vector getMeasurementInput()
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
This class is the base class of the flexibility estimators.
Definition flexibility-estimator-base.hpp:28
Definitions of base class for flexibility estimator.
Definition bidim-elastic-inv-pendulum-dyn-sys.hpp:21
Eigen::Matrix4d Matrix4
4x4 Scalar Matrix
Definition definitions.hpp:115
long int TimeIndex
Definition definitions.hpp:139
Eigen::MatrixXd Matrix
Dynamic sized Matrix.
Definition definitions.hpp:100
Eigen::Index Index
Definition definitions.hpp:138
Eigen::VectorXd Vector
Dynamic sized scalar vector.
Definition definitions.hpp:76