stateObservation::examples Namespace Reference

Functions

IndexedVectorArray imuAttitudeTrajectoryReconstruction (const IndexedVectorArray &y, const IndexedVectorArray &u, const Vector &xh0, const Matrix &p, const Matrix &q, const Matrix &r, double dt, bool withGyroBias)
 
IndexedVectorArray imuAttitudeTrajectoryReconstruction (const IndexedVectorArray &y, const Vector &xh0, const Matrix &p, const Matrix &q, const Matrix &r, double dt, bool withGyroBias)
 
IndexedVectorArray imuMultiplicativeAttitudeReconstruction (const IndexedVectorArray &y, const IndexedVectorArray &u, const Vector &xh0, const Matrix &p, const Matrix &q, const Matrix &r, double dt)
 Provides the estimation of the state (mostly attitude) of an IMU, given the measurements of the IMU and the input (which provides the acceleration/jerk). This method uses multiplicative extended Kalman filtering, we need to provide it with an initial guess, a covariance matrix of this initial guess and covariance matrices of the state perturbations and measurement noises. More...
 
IndexedVectorArray imuMultiplicativeAttitudeReconstruction (const IndexedVectorArray &y, const Vector &xh0, const Matrix &p, const Matrix &q, const Matrix &r, double dt)
 Provides the estimation of the state (mostly attitude) of an IMU, given the measurements of the IMU without knowing the input. The input is assumed to be zero over the observation. This method uses multiplicative extended Kalman filtering, we need to provide it with an initial guess, a covariance matrix of this initial guess and covariance matrices of the state perturbations and measurement noises. More...
 
stateObservation::IndexedVectorArray offlineEKFFlexibilityEstimation (const stateObservation::IndexedVectorArray &y, const stateObservation::IndexedVectorArray &u, const Vector &xh0, unsigned numberOfContacts, const std::vector< Vector3, Eigen::aligned_allocator< Vector3 >> &contactsPositions, double dt, IndexedVectorArray *ino=0x0, IndexedVectorArray *premea=0x0)
 
stateObservation::IndexedVectorArray offlineEKFFlexibilityEstimation (const stateObservation::IndexedVectorArray &y, const Vector &xh0, unsigned numberOfContacts, const std::vector< Vector3, Eigen::aligned_allocator< Vector3 >> &contactsPositions, double dt)
 
stateObservation::IndexedVectorArray offlineModelBaseFlexEstimation (const stateObservation::IndexedVectorArray &y, const stateObservation::IndexedVectorArray &u, const Matrix &xh0, const stateObservation::IndexedVectorArray numberOfContacts, double dt, double mass, bool withForce, const stateObservation::IndexedMatrixArray &Q=stateObservation::IndexedMatrixArray(), const stateObservation::IndexedMatrixArray &R=stateObservation::IndexedMatrixArray(), const Matrix3 &kfe=Matrix3::Zero(), const Matrix3 &kfv=Matrix3::Zero(), const Matrix3 &kte=Matrix3::Zero(), const Matrix3 &ktv=Matrix3::Zero(), IndexedVectorArray *prediction=0x0, IndexedVectorArray *inovation=0x0, IndexedVectorArray *predictedMeasurements=0x0, IndexedVectorArray *simulatedMeasurements=0x0, int verbose=0x0)
 

Function Documentation

◆ imuAttitudeTrajectoryReconstruction() [1/2]

IndexedVectorArray stateObservation::examples::imuAttitudeTrajectoryReconstruction ( const IndexedVectorArray y,
const IndexedVectorArray u,
const Vector xh0,
const Matrix p,
const Matrix q,
const Matrix r,
double  dt,
bool  withGyroBias 
)

◆ imuAttitudeTrajectoryReconstruction() [2/2]

IndexedVectorArray stateObservation::examples::imuAttitudeTrajectoryReconstruction ( const IndexedVectorArray y,
const Vector xh0,
const Matrix p,
const Matrix q,
const Matrix r,
double  dt,
bool  withGyroBias 
)

◆ imuMultiplicativeAttitudeReconstruction() [1/2]

IndexedVectorArray stateObservation::examples::imuMultiplicativeAttitudeReconstruction ( const IndexedVectorArray y,
const IndexedVectorArray u,
const Vector xh0,
const Matrix p,
const Matrix q,
const Matrix r,
double  dt 
)

Provides the estimation of the state (mostly attitude) of an IMU, given the measurements of the IMU and the input (which provides the acceleration/jerk). This method uses multiplicative extended Kalman filtering, we need to provide it with an initial guess, a covariance matrix of this initial guess and covariance matrices of the state perturbations and measurement noises.

Parameters
yIMU measurements
uthe inputs of the dynamical system
xh0an initial guess of the state
pthe covariance matrix of the error of the initial guess
qthe covariance matrix of the process noise (state perturbation)
rthe covariance matrix of the measurement noise
dtthe time discretization period

◆ imuMultiplicativeAttitudeReconstruction() [2/2]

IndexedVectorArray stateObservation::examples::imuMultiplicativeAttitudeReconstruction ( const IndexedVectorArray y,
const Vector xh0,
const Matrix p,
const Matrix q,
const Matrix r,
double  dt 
)

Provides the estimation of the state (mostly attitude) of an IMU, given the measurements of the IMU without knowing the input. The input is assumed to be zero over the observation. This method uses multiplicative extended Kalman filtering, we need to provide it with an initial guess, a covariance matrix of this initial guess and covariance matrices of the state perturbations and measurement noises.

Parameters
yIMU measurements
xh0an initial guess of the state
pthe covariance matrix of the error of the initial guess
qthe covariance matrix of the process noise (state perturbation)
rthe covariance matrix of the measurement noise
dtthe time discretization period

◆ offlineEKFFlexibilityEstimation() [1/2]

stateObservation::IndexedVectorArray stateObservation::examples::offlineEKFFlexibilityEstimation ( const stateObservation::IndexedVectorArray y,
const stateObservation::IndexedVectorArray u,
const Vector xh0,
unsigned  numberOfContacts,
const std::vector< Vector3, Eigen::aligned_allocator< Vector3 >> &  contactsPositions,
double  dt,
IndexedVectorArray ino = 0x0,
IndexedVectorArray premea = 0x0 
)

◆ offlineEKFFlexibilityEstimation() [2/2]

stateObservation::IndexedVectorArray stateObservation::examples::offlineEKFFlexibilityEstimation ( const stateObservation::IndexedVectorArray y,
const Vector xh0,
unsigned  numberOfContacts,
const std::vector< Vector3, Eigen::aligned_allocator< Vector3 >> &  contactsPositions,
double  dt 
)

◆ offlineModelBaseFlexEstimation()

stateObservation::IndexedVectorArray stateObservation::examples::offlineModelBaseFlexEstimation ( const stateObservation::IndexedVectorArray y,
const stateObservation::IndexedVectorArray u,
const Matrix xh0,
const stateObservation::IndexedVectorArray  numberOfContacts,
double  dt,
double  mass,
bool  withForce,
const stateObservation::IndexedMatrixArray Q = stateObservation::IndexedMatrixArray(),
const stateObservation::IndexedMatrixArray R = stateObservation::IndexedMatrixArray(),
const Matrix3 kfe = Matrix3::Zero(),
const Matrix3 kfv = Matrix3::Zero(),
const Matrix3 kte = Matrix3::Zero(),
const Matrix3 ktv = Matrix3::Zero(),
IndexedVectorArray prediction = 0x0,
IndexedVectorArray inovation = 0x0,
IndexedVectorArray predictedMeasurements = 0x0,
IndexedVectorArray simulatedMeasurements = 0x0,
int  verbose = 0x0 
)