13#ifndef IMU_MULTIPLICATIVE_DYNAMICAL_SYSTEM_HPP
14#define IMU_MULTIPLICATIVE_DYNAMICAL_SYSTEM_HPP
16#include <state-observation/api.h>
83 static const Index stateSize_ = 19;
84 static const Index stateTangentSize_ = 18;
85 static const Index inputSize_ = 6;
86 static const Index measurementSize_ = 6;
102 opt(
int stateSize,
int measurementSize) : AJacobian(stateSize, stateSize), CJacobian(measurementSize, stateSize)
105 AJacobian.block<3, 3>(indexesTangent::pos, indexesTangent::pos).setIdentity();
106 AJacobian.block<6, 6>(indexesTangent::linVel, indexesTangent::linVel).setIdentity();
120 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Implements the accelerometer-gyrometer inertial measuremen.
Implements the accelerometer-gyrometer measurements.
Definition accelerometer-gyrometer.hpp:36
This is the base class of any functor that describes the dynamics of the state and the measurement....
Definition dynamical-system-functor-base.hpp:33
The class is an implementation of the dynamical system defined by an inertial measurement unit (IMU) ...
Definition imu-mltpctive-dynamical-system.hpp:37
virtual Vector stateDynamics(const Vector &x, const Vector &u, TimeIndex k)
Description of the state dynamics.
virtual ~IMUMltpctiveDynamicalSystem()
The virtual destructor.
virtual void resetMeasurementNoise()
Removes the measurement noise.
virtual Index getStateSize() const
Gets the state size.
void stateDifference(const Vector &stateVector1, const Vector &stateVector2, Vector &difference)
virtual void setProcessNoise(NoiseBase *)
Sets a noise which disturbs the state dynamics.
IMUMltpctiveDynamicalSystem()
The constructor.
virtual Index getMeasurementSize() const
Gets the measurement size.
NoiseBase * processNoise_
Definition imu-mltpctive-dynamical-system.hpp:114
kine::indexes< kine::quaternion > indexes
Definition imu-mltpctive-dynamical-system.hpp:87
virtual void resetProcessNoise()
Removes the process noise.
kine::indexes< kine::rotationVector > indexesTangent
Definition imu-mltpctive-dynamical-system.hpp:88
void stateSum(const Vector &stateVector, const Vector &tangentVector, Vector &sum)
AccelerometerGyrometer sensor_
Definition imu-mltpctive-dynamical-system.hpp:112
double dt_
Definition imu-mltpctive-dynamical-system.hpp:116
virtual Vector measureDynamics(const Vector &x, const Vector &u, TimeIndex k)
Description of the sensor's dynamics.
virtual Index getInputSize() const
Gets the input size.
virtual NoiseBase * getMeasurementNoise() const
Gets a pointer on the measurement noise.
virtual NoiseBase * getProcessNoise() const
Gets the process noise.
virtual Matrix getAMatrix(const Vector &xh)
virtual Matrix getCMatrix(const Vector &xp)
virtual void setMeasurementNoise(NoiseBase *)
Sets a noise which disturbs the measurements.
virtual void setSamplingPeriod(double dt)
Set the period of the time discretization.
Definition noise-base.hpp:29
This class is used to customize the way the difference between measurements, the state update functio...
Definition state-vector-arithmetics.hpp:28
Definition bidim-elastic-inv-pendulum-dyn-sys.hpp:21
long int TimeIndex
Definition definitions.hpp:139
Eigen::Vector3d Vector3
3D vector
Definition definitions.hpp:85
Eigen::Matrix3d Matrix3
3x3 Scalar Matrix
Definition definitions.hpp:109
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
Implements integrators for the kinematics, in terms or rotations and translations.
Definition imu-mltpctive-dynamical-system.hpp:91
Matrix3 jRR
containers for Jacobians
Definition imu-mltpctive-dynamical-system.hpp:93
Matrix AJacobian
Definition imu-mltpctive-dynamical-system.hpp:97
Matrix CJacobian
Definition imu-mltpctive-dynamical-system.hpp:98
Matrix3 Rt
Definition imu-mltpctive-dynamical-system.hpp:100
Vector3 deltaR
Definition imu-mltpctive-dynamical-system.hpp:95
opt(int stateSize, int measurementSize)
Definition imu-mltpctive-dynamical-system.hpp:102
Definition rigid-body-kinematics.hpp:320