Browse Source

tests: Test all data points for declination model

sbg
Paul Riseborough 7 years ago committed by Daniel Agar
parent
commit
2b87e5a790
  1. 490
      src/systemcmds/tests/test_autodeclination.cpp

490
src/systemcmds/tests/test_autodeclination.cpp

@ -24,13 +24,489 @@ private: @@ -24,13 +24,489 @@ private:
bool AutoDeclinationTest::autodeclination_check()
{
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(47.0, 8.0) - 2.6f < 0.1f);
// Test world endpoints
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-90.0, 180.0) - 47.0f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-90.0, -180.0) - 47.0f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(90.0, -180.0) - 3.0f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(90.0, 180.0) - 3.0f < 0.1f);
// Test world data using data from Magnetic Model: IGRF12 (calculator version 0.5.0.7)
// Decimal Year 2018.05753
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -180) - 2.76391f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -170) - 7.65238f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -160) - 12.17294f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -150) - 16.01107f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -140) - 18.72801f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -130) - 19.73724f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -120) - 18.25112f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -110) - 13.26654f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -100) - 4.13317f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -90) - -7.62673f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -80) - -17.84456f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -70) - -23.58845f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -60) - -25.01681f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -50) - -23.47267f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -40) - -20.14728f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -30) - -15.8376f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -20) - -11.04886f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, -10) - -6.13803f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 0) - -1.38702f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 10) - 3.0231f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 20) - 7.04485f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 30) - 10.68855f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 40) - 13.86345f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 50) - 16.27102f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 60) - 17.41732f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 70) - 16.69502f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 80) - 13.51634f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 90) - 7.64291f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 100) - -0.16206f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 110) - -7.83102f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 120) - -13.14815f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 130) - -15.19585f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 140) - -14.314f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 150) - -11.33504f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 160) - -7.09405f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 170) - -2.24693f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(60, 180) - 2.76391f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -180) - 3.39297f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -170) - 7.64688f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -160) - 11.46075f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -150) - 14.55849f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -140) - 16.58104f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -130) - 17.12886f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -120) - 15.76953f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -110) - 11.9804f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -100) - 5.33907f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -90) - -3.51221f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -80) - -12.05701f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -70) - -17.6109f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -60) - -19.46549f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -50) - -18.43554f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -40) - -15.64288f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -30) - -11.94753f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -20) - -7.88526f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, -10) - -3.85052f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 0) - -0.21495f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 10) - 2.80897f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 20) - 5.29489f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 30) - 7.40813f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 40) - 9.12158f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 50) - 10.20849f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 60) - 10.40516f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 70) - 9.47967f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 80) - 7.22842f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 90) - 3.55584f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 100) - -1.29281f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 110) - -6.43861f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 120) - -10.49228f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 130) - -12.34449f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 140) - -11.76562f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 150) - -9.22608f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 160) - -5.4404f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 170) - -1.07169f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(50, 180) - 3.39297f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -180) - 4.73304f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -170) - 8.06967f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -160) - 10.84965f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -150) - 13.03592f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -140) - 14.4382f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -130) - 14.73187f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -120) - 13.57059f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -110) - 10.56659f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -100) - 5.33695f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -90) - -1.83952f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -80) - -9.22582f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -70) - -14.50199f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -60) - -16.59645f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -50) - -15.90646f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -40) - -13.42777f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -30) - -10.05355f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -20) - -6.33304f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, -10) - -2.70446f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 0) - 0.32852f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 10) - 2.53857f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 20) - 4.16517f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 30) - 5.40477f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 40) - 6.09072f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 50) - 6.10984f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 60) - 5.65289f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 70) - 4.84976f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 80) - 3.54739f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 90) - 1.50963f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 100) - -1.37218f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 110) - -4.8133f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 120) - -7.86308f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 130) - -9.35691f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 140) - -8.79624f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 150) - -6.4712f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 160) - -3.00633f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 170) - 0.92526f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(40, 180) - 4.73304f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -180) - 6.51208f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -170) - 8.60794f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -160) - 10.10201f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -150) - 11.35813f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -140) - 12.28963f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -130) - 12.46921f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -120) - 11.53386f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -110) - 9.18036f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -100) - 5.02502f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -90) - -0.91666f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -80) - -7.48211f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -70) - -12.75024f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -60) - -15.41473f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -50) - -15.34632f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -40) - -13.23131f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -30) - -9.97999f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -20) - -6.26609f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, -10) - -2.67489f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 0) - 0.12859f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 10) - 1.98719f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 20) - 3.35693f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 30) - 4.30231f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 40) - 4.34228f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 50) - 3.53408f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 60) - 2.61371f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 70) - 1.94408f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 80) - 1.27365f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 90) - 0.30968f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 100) - -1.17718f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 110) - -3.29027f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 120) - -5.41121f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 130) - -6.35606f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 140) - -5.52501f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 150) - -3.19361f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 160) - 0.06272f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 170) - 3.54892f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(30, 180) - 6.51208f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -180) - 8.05455f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -170) - 8.9018f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -160) - 9.28221f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -150) - 9.82187f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -140) - 10.36589f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -130) - 10.39581f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -120) - 9.69265f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -110) - 8.06385f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -100) - 4.97456f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -90) - 0.08873f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -80) - -5.94379f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -70) - -11.56551f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -60) - -15.26153f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -50) - -16.24801f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -40) - -14.66383f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -30) - -11.38606f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -20) - -7.39534f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, -10) - -3.57892f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 0) - -0.73934f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 10) - 1.12744f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 20) - 2.64851f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 30) - 3.6306f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 40) - 3.29003f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 50) - 1.9185f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 60) - 0.68749f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 70) - 0.05693f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 80) - -0.26716f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 90) - -0.47945f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 100) - -0.85743f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 110) - -1.87811f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 120) - -3.17942f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 130) - -3.50309f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 140) - -2.25553f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 150) - 0.14973f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 160) - 3.15526f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 170) - 6.0726f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(20, 180) - 8.05455f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -180) - 8.96811f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -170) - 9.00326f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -160) - 8.80988f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -150) - 8.96581f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -140) - 9.20037f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -130) - 9.0534f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -120) - 8.5718f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -110) - 7.65493f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -100) - 5.53227f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -90) - 1.47753f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -80) - -4.32444f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -70) - -10.57652f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -60) - -15.55305f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -50) - -17.91817f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -40) - -17.19243f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -30) - -14.02084f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -20) - -9.68895f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, -10) - -5.47648f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 0) - -2.29568f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 10) - -0.0338f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 20) - 1.88618f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 30) - 2.9443f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 40) - 2.24776f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 50) - 0.43529f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 60) - -1.02026f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 70) - -1.62575f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 80) - -1.61789f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 90) - -1.07428f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 100) - -0.43078f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 110) - -0.57046f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 120) - -1.25424f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 130) - -1.04428f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 140) - 0.58806f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 150) - 3.00104f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 160) - 5.63284f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 170) - 7.86621f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(10, 180) - 8.96811f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -180) - 9.65068f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -170) - 9.46759f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -160) - 9.21732f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -150) - 9.26704f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -140) - 9.31917f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -130) - 9.03556f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -120) - 8.63887f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -110) - 8.14347f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -100) - 6.70051f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -90) - 3.24587f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -80) - -2.53824f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -70) - -9.5519f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -60) - -15.78848f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -50) - -19.60215f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -40) - -20.16832f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -30) - -17.73341f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -20) - -13.52156f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, -10) - -8.9561f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 0) - -5.01498f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 10) - -1.82178f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 20) - 0.69154f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 30) - 1.62948f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 40) - 0.31861f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 50) - -2.02581f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 60) - -3.63856f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 70) - -4.02958f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 80) - -3.41245f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 90) - -1.87563f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 100) - -0.15464f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 110) - 0.48183f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 120) - 0.27308f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 130) - 0.85887f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 140) - 2.71814f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 150) - 5.06264f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 160) - 7.34057f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 170) - 9.03413f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(0, 180) - 9.65068f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -180) - 10.85622f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -170) - 10.83952f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -160) - 10.78586f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -150) - 10.86624f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -140) - 10.82903f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -130) - 10.44786f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -120) - 9.97844f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -110) - 9.5716f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -100) - 8.51933f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -90) - 5.5268f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -80) - -0.25975f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -70) - -8.02128f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -60) - -15.46443f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -50) - -20.65426f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -40) - -22.77406f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -30) - -21.95047f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -20) - -18.99256f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, -10) - -14.69503f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 0) - -9.76978f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 10) - -5.16636f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 20) - -2.08706f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 30) - -1.81675f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 40) - -4.23367f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 50) - -7.17513f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 60) - -8.6249f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 70) - -8.28432f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 80) - -6.54836f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 90) - -3.6667f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 100) - -0.68901f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 110) - 0.85877f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 120) - 1.26385f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 130) - 2.23753f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 140) - 4.26718f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 150) - 6.62102f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 160) - 8.78297f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 170) - 10.29336f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-10, 180) - 10.85622f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -180) - 13.11268f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -170) - 13.37579f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -160) - 13.53407f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -150) - 13.64149f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -140) - 13.52041f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -130) - 13.0848f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -120) - 12.59068f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -110) - 12.22644f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -100) - 11.40926f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -90) - 8.75137f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -80) - 3.04903f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -70) - -5.25076f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -60) - -13.82106f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -50) - -20.32136f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -40) - -23.88942f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -30) - -24.94171f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -20) - -24.16991f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, -10) - -21.45897f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 0) - -16.6749f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 10) - -11.59204f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 20) - -9.18683f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 30) - -10.67507f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 40) - -14.34292f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 50) - -17.27975f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 60) - -17.78731f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 70) - -15.96469f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 80) - -12.46302f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 90) - -7.75001f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 100) - -3.08968f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 110) - -0.10163f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 120) - 1.485f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 130) - 3.24596f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 140) - 5.70537f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 150) - 8.34017f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 160) - 10.69411f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 170) - 12.34361f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-20, 180) - 13.11268f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -180) - 16.76996f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -170) - 17.25561f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -160) - 17.48308f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -150) - 17.5041f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -140) - 17.28097f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -130) - 16.92057f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -120) - 16.6716f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -110) - 16.5491f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -100) - 15.87065f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -90) - 13.296f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -80) - 7.67066f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -70) - -0.78849f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -60) - -10.06988f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -50) - -17.66004f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -40) - -22.38439f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -30) - -24.71024f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -20) - -25.51542f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, -10) - -24.76053f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 0) - -22.32543f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 10) - -20.28166f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 20) - -21.40386f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 30) - -25.30151f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 40) - -29.46545f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 50) - -31.84686f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 60) - -31.4949f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 70) - -28.43575f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 80) - -23.14502f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 90) - -16.2011f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 100) - -9.03586f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 110) - -3.45507f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 120) - 0.46804f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 130) - 3.93373f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 140) - 7.48026f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 150) - 10.84895f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 160) - 13.6994f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 170) - 15.69862f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-30, 180) - 16.76996f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -180) - 22.27152f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -170) - 22.79516f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -160) - 22.88573f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -150) - 22.72737f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -140) - 22.47926f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -130) - 22.36228f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -120) - 22.48086f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -110) - 22.51851f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -100) - 21.626f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -90) - 18.71198f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -80) - 13.05342f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -70) - 4.93397f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -60) - -4.10539f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -50) - -11.9663f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -40) - -17.34478f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -30) - -20.32802f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -20) - -21.74287f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, -10) - -22.31022f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 0) - -23.00178f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 10) - -25.48173f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 20) - -30.36043f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 30) - -36.2258f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 40) - -41.34601f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 50) - -44.67424f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 60) - -45.61906f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 70) - -43.82595f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 80) - -39.06141f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 90) - -31.25601f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 100) - -21.32532f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 110) - -11.44307f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 120) - -3.04971f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 130) - 3.96484f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 140) - 9.91892f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 150) - 14.80155f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 160) - 18.51373f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 170) - 20.96666f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-40, 180) - 22.27152f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -180) - 30.84148f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -170) - 31.06389f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -160) - 30.81915f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -150) - 30.43597f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -140) - 30.14219f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -130) - 30.03663f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -120) - 29.94126f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -110) - 29.32525f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -100) - 27.46901f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -90) - 23.78201f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -80) - 18.09163f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -70) - 10.83361f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -60) - 3.05909f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -50) - -3.92584f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -40) - -9.21168f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -30) - -12.73883f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -20) - -15.21664f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, -10) - -17.72082f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 0) - -21.32895f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 10) - -26.66104f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 20) - -33.39547f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 30) - -40.49868f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 40) - -46.96513f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 50) - -52.16043f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 60) - -55.7058f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 70) - -57.28183f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 80) - -56.43297f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 90) - -52.34375f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 100) - -43.87223f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 110) - -30.47619f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 120) - -13.97494f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 130) - 1.68192f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 140) - 13.72947f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 150) - 21.87931f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 160) - 26.91704f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 170) - 29.66768f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-50, 180) - 30.84148f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -180) - 47.4512f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -170) - 46.19458f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -160) - 44.76274f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -150) - 43.37347f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -140) - 42.06866f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -130) - 40.71814f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -120) - 39.02767f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -110) - 36.61839f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -100) - 33.16884f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -90) - 28.54321f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -80) - 22.85854f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -70) - 16.49065f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -60) - 10.00377f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -50) - 3.97552f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -40) - -1.24758f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -30) - -5.73404f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -20) - -9.95543f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, -10) - -14.56373f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 0) - -20.08398f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 10) - -26.67759f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 20) - -34.08849f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 30) - -41.80175f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 40) - -49.29185f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 50) - -56.18184f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 60) - -62.26058f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 70) - -67.41773f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 80) - -71.54529f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 90) - -74.4018f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 100) - -75.36581f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 110) - -72.73199f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 120) - -60.82632f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 130) - -21.58385f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 140) - 25.6129f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 150) - 42.23883f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 160) - 47.11516f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 170) - 48.07206f < 0.1f);
ut_assert("declination differs more than 0.1 degrees", get_mag_declination(-60, 180) - 47.4512f < 0.1f);
return true;
}

Loading…
Cancel
Save