template struct sophus::ScalingNonOrthogonalityAcceleroModelΒΆ

#include <imu_model.h>

template <class TT>
struct ScalingNonOrthogonalityAcceleroModel {
    // fields

    Eigen::Matrix<TT, 3, 1> scale;
    Eigen::Matrix<TT, 3, 1> non_orthogonality;
    Eigen::Matrix<TT, 3, 1> accel_bias;

    // construction

    ScalingNonOrthogonalityAcceleroModel(
        Eigen::Matrix<TT, 3, 1> const& scale = Eigen::Matrix<TT, 3, 1>::Ones(),
        Eigen::Matrix<TT, 3, 1> const& non_orthogonality = Eigen::Matrix<TT, 3, 1>::Zero(),
        Eigen::Matrix<TT, 3, 1> const& accel_bias = Eigen::Matrix<TT, 3, 1>::Zero()
        );

    // methods

    Eigen::Matrix<TT, 3, 1> acceleroMeasurement(Eigen::Matrix<TT, 3, 1> const& imu_acceleration_imu) const;
    Eigen::Matrix<TT, 9, 1> params() const;
    static ScalingNonOrthogonalityAcceleroModel<TT> fromParams(Eigen::Matrix<TT, 9, 1> const& params);
};