ekf2: treat inhibited states as "consider states" and remove conservative covariance matrix fixes (#22597)

When a state stops to be estimated it becomes a "consider state". Its value and variance are frozen but its covariance with other states continue to evolve normally.

 - removes conservative accel bias variance limiting
 - force symmetry is skipped after fusion of NED vel/pos (a direct measurement)

---------

Co-authored-by: bresch <brescianimathieu@gmail.com>
This commit is contained in:
Daniel Agar
2024-01-24 14:14:09 -05:00
committed by GitHub
co-authored by bresch
parent 2c81c9fdea
commit 51155f7a29
13 changed files with 874 additions and 1039 deletions
@@ -182,7 +182,7 @@ TEST_F(EkfHeightFusionTest, gpsRef)
EXPECT_NEAR(baro_status.bias, baro_initial + baro_increment, 1.3f);
const BiasEstimator::status &rng_status = _ekf->getRngHgtBiasEstimatorStatus();
EXPECT_NEAR(rng_status.bias, 0.f, 1.f);
EXPECT_NEAR(rng_status.bias, 0.f, 1.1f); // TODO: why?
// BUT WHEN: the GPS jumps by a lot
const float gps_step = 100.f;