Use new Vector4 class

This commit is contained in:
Matthias Grob
2023-03-21 15:01:26 +01:00
parent 08d6465ce5
commit b0189d95af
12 changed files with 32 additions and 56 deletions
@@ -250,9 +250,9 @@ float EkfWrapper::getYawAngle() const
return euler(2);
}
matrix::Vector<float, 4> EkfWrapper::getQuaternionVariance() const
matrix::Vector4f EkfWrapper::getQuaternionVariance() const
{
return matrix::Vector<float, 4>(_ekf->orientation_covariances().diag());
return matrix::Vector4f(_ekf->orientation_covariances().diag());
}
int EkfWrapper::getQuaternionResetCounter() const
@@ -111,7 +111,7 @@ public:
Eulerf getEulerAngles() const;
float getYawAngle() const;
matrix::Vector<float, 4> getQuaternionVariance() const;
matrix::Vector4f getQuaternionVariance() const;
int getQuaternionResetCounter() const;
matrix::Vector3f getDeltaVelBiasVariance() const;
+2 -2
View File
@@ -331,9 +331,9 @@ TEST_F(EkfGpsHeadingTest, stopOnGround)
_ekf_wrapper.setMagFuseTypeNone();
// WHEN: running without yaw aiding
const matrix::Vector<float, 4> quat_variance_before = _ekf_wrapper.getQuaternionVariance();
const matrix::Vector4f quat_variance_before = _ekf_wrapper.getQuaternionVariance();
_sensor_simulator.runSeconds(20.0);
const matrix::Vector<float, 4> quat_variance_after = _ekf_wrapper.getQuaternionVariance();
const matrix::Vector4f quat_variance_after = _ekf_wrapper.getQuaternionVariance();
// THEN: the yaw variance is constrained by fusing constant data
EXPECT_LT(quat_variance_after(3), quat_variance_before(3));
@@ -83,7 +83,7 @@ public:
void quaternionVarianceBigEnoughAfterOrientationInitialization()
{
const matrix::Vector<float, 4> quat_variance = _ekf_wrapper.getQuaternionVariance();
const matrix::Vector4f quat_variance = _ekf_wrapper.getQuaternionVariance();
const float quat_variance_limit = 0.0001f;
EXPECT_TRUE(quat_variance(1) > quat_variance_limit) << "quat_variance(1)" << quat_variance(1);
EXPECT_TRUE(quat_variance(2) > quat_variance_limit) << "quat_variance(2)" << quat_variance(2);