Struct sym::PreintegratedImuMeasurements#

template<typename Scalar>
struct PreintegratedImuMeasurements

Struct of Preintegrated IMU Measurements (not including the covariance of change in orientation, velocity, and position).

Public Types

using Rot3 = sym::Rot3<Scalar>
using Vector3 = sym::Vector3<Scalar>
using Matrix33 = sym::Matrix33<Scalar>

Public Functions

PreintegratedImuMeasurements(const Vector3 &accel_bias, const Vector3 &gyro_bias)

Initialize instance struct with accel_bias and gyro_bias and all other values zeroed out (scalars, vectors, and matrices) or set to the identity (DR).

Delta GetBiasCorrectedDelta(const Vector3 &new_accel_bias, const Vector3 &new_gyro_bias) const
imu_integrated_measurement_t GetLcmType() const

Public Members

Vector3 accel_bias
Vector3 gyro_bias
Delta delta

See description for Delta. This is the Delta for the biases used during preintegration, i.e. for PreintegratedImuMeasurements::accel_bias and PreintegratedImuMeasurements::gyro_bias. For the (approximate) Delta with other biases, see GetBiasCorrectedDelta

Matrix33 DR_D_gyro_bias
Matrix33 Dv_D_accel_bias
Matrix33 Dv_D_gyro_bias
Matrix33 Dp_D_accel_bias
Matrix33 Dp_D_gyro_bias

Public Static Functions

static PreintegratedImuMeasurements<Scalar> FromLcm(const imu_integrated_measurement_t &msg)
struct Delta

A convenient struct that holds the Preintegrated delta.

Public Functions

imu_integrated_measurement_delta_t GetLcmType() const

Public Members

Scalar Dt = {0}
Rot3 DR = {Rot3::Identity()}
Vector3 Dv = {Vector3::Zero()}
Vector3 Dp = {Vector3::Zero()}

Public Static Functions

static Delta FromLcm(const imu_integrated_measurement_delta_t &msg)