diff --git a/include/IMU/math/IMU_tools_Lie.h b/include/IMU/math/IMU_tools_Lie.h index 7ef24375788156e13611f6ba29ab0e321dae9f06..6ea135922cdb919ef1c0927f162359328dcfc13e 100644 --- a/include/IMU/math/IMU_tools_Lie.h +++ b/include/IMU/math/IMU_tools_Lie.h @@ -190,11 +190,11 @@ inline void adjoint(const MatrixBase<D1>& d, MatrixBase<D2>& adjd) MatrixSizeCheck<10, 10>::check(adjd); // Adjoint matrix associated to the adjoint operator - Matrix<typename D1::Scalar, 3, 1> dp ( & d( 0 ) ); - Quaternion<typename D1::Scalar> dq ( &d(3) ); - Matrix<typename D1::Scalar, 3, 3> dR = q2R(dq); - Matrix<typename D1::Scalar, 3, 1> dv ( & d( 7 ) ); - const typename D1::Scalar& dt = d(10); + Map<const Matrix<typename D1::Scalar, 3, 1> > dp ( & d( 0 ) ); + Map<const Quaternion<typename D1::Scalar> > dq ( &d(3) ); + Matrix<typename D1::Scalar, 3, 3> dR = q2R(dq); + Map<const Matrix<typename D1::Scalar, 3, 1> > dv ( & d( 7 ) ); + const typename D1::Scalar& dt = d(10); // pqvt impl adjd.setIdentity();