Unit tests in testMagneticField fail
The unit tests in testMedia (testMagneticField) and more specifically section "GeomagneticModel" fail. These are the checks that fail:
CHECK(WMM_B_1.getX(gCS) / 1_nT == Approx(5815).margin(0.05));
CHECK(WMM_B_1.getY(gCS) / 1_nT == Approx(-14803).margin(0.05));
CHECK(WMM_B_1.getZ(gCS) / 1_nT == Approx(49755.3).margin(0.05));
CHECK(WMM_B_2.getX(gCS) / 1_nT == Approx(39684.7).margin(0.05));
CHECK(WMM_B_2.getY(gCS) / 1_nT == Approx(42.2).margin(0.05));
CHECK(WMM_B_2.getZ(gCS) / 1_nT == Approx(10809.5).margin(0.05));
CHECK(WMM_B_3.getX(gCS) / 1_nT == Approx(6261.8).margin(0.05));
CHECK(WMM_B_3.getY(gCS) / 1_nT == Approx(185.5).margin(0.05));
CHECK(WMM_B_3.getZ(gCS) / 1_nT == Approx(-52429.1).margin(0.05));
CHECK(WMM_B_4.getX(gCS) / 1_nT == Approx(6262).margin(0.5));
CHECK(WMM_B_4.getY(gCS) / 1_nT == Approx(186).margin(0.5));
CHECK(WMM_B_4.getZ(gCS) / 1_nT == Approx(-52429).margin(0.5));
and:
CHECK(IGRF_B_1.getX(gCS) / 1_nT == Approx(5821).margin(0.5));
CHECK(IGRF_B_1.getY(gCS) / 1_nT == Approx(-14796).margin(0.5));
CHECK(IGRF_B_1.getZ(gCS) / 1_nT == Approx(49776).margin(0.5));
CHECK(IGRF_B_2.getX(gCS) / 1_nT == Approx(2957).margin(0.5));
CHECK(IGRF_B_2.getY(gCS) / 1_nT == Approx(-1014).margin(0.5));
CHECK(IGRF_B_2.getZ(gCS) / 1_nT == Approx(-57610).margin(0.5));
CHECK(IGRF_B_3.getX(gCS) / 1_nT == Approx(6545).margin(0.5));
CHECK(IGRF_B_3.getY(gCS) / 1_nT == Approx(1473).margin(0.5));
CHECK(IGRF_B_3.getZ(gCS) / 1_nT == Approx(-52884).margin(0.5));
CHECK(IGRF_B_4.getX(gCS) / 1_nT == Approx(30052).margin(0.5));
CHECK(IGRF_B_4.getY(gCS) / 1_nT == Approx(-4738).margin(0.5));
CHECK(IGRF_B_4.getZ(gCS) / 1_nT == Approx(-5190).margin(0.5));
I am surprised our pipelines did not complain about these test failures when merging. However, we can see that in newer MRs like !428 (merged) they do fail.