state-observation 1.7.0
Loading...
Searching...
No Matches
ekf-flexibility-estimator-base.hpp
Go to the documentation of this file.
1
13#ifndef FLEXIBILITYESTIMATION_EKFFLEXIBILITYESTIMATORBASE_H
14#define FLEXIBILITYESTIMATION_EKFFLEXIBILITYESTIMATORBASE_H
15
16#include <boost/utility.hpp>
17
18#include <state-observation/api.h>
20
22
23namespace stateObservation
24{
25namespace flexibilityEstimation
26{
36{
37public:
43
47 const Vector & dx = Vector::Zero(0));
48
51
56 virtual void setFlexibilityGuess(const Matrix &) = 0;
57
59 virtual void setFlexibilityCovariance(const Matrix & P);
60
63
66 virtual void setProcessNoiseCovariance(const Matrix & Q);
67
70 virtual void setMeasurementNoiseCovariance(const Matrix & R);
71
74
77
79 virtual void setMeasurement(const Vector & y);
80
82
85 virtual void setInput(const Vector & u);
86
89 virtual void setMeasurementInput(const Vector & u);
90
91 virtual Vector getInput();
92
94
96 virtual const Vector & getFlexibilityVector();
97
99 virtual Matrix4 getFlexibility() = 0;
100
103
106
109 virtual Index getStateSize() const = 0;
110
113 virtual Index getMeasurementSize() const = 0;
114
117 virtual Index getInputSize() const = 0;
118
121
123 virtual void resetCovarianceMatrices() = 0;
124
127
130
133
136
139
140protected:
141 virtual void setJacobians(const Matrix & A, const Matrix & C);
142
144
146
148
150
152
154
155private:
156};
157} // namespace flexibilityEstimation
158} // namespace stateObservation
159#endif // FLEXIBILITYESTIMATION_EKFFLEXIBILITYESTIMATORBASE_H
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.
stateObservation::ExtendedKalmanFilter ekf_
Definition ekf-flexibility-estimator-base.hpp:145
virtual void setJacobians(const Matrix &A, const Matrix &C)
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 Vector getLastPredictedMeasurement()
Get the last simulated measurement.
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 Matrix getFlexibilityCovariance() const
Gets the covariance matrix of the flexibility.
bool finiteDifferencesJacobians_
Definition ekf-flexibility-estimator-base.hpp:147
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
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