AP_Declination: update magnetic field tables

now using igrf13
This commit is contained in:
Andrew Tridgell 2022-12-29 08:57:12 +11:00
parent 84215ff662
commit d6c258e9d0
4 changed files with 161 additions and 161 deletions

View File

@ -1,8 +1,8 @@
# Declination Table Generator # Declination Table Generator
To run the generator you need the igrf12 module. Install like this: To run the generator you need the igrf module. Install like this:
python3 -m pip install --user igrf12 python3 -m pip install --user igrf
Note that python3 must be used. Note that python3 must be used.

View File

@ -1,9 +1,9 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
''' '''
generate field tables from IGRF12. Note that this requires python3 generate field tables from IGRF13. Note that this requires python3
''' '''
import igrf12 as igrf import igrf
import numpy as np import numpy as np
import datetime import datetime
from pathlib import Path from pathlib import Path

View File

@ -10,68 +10,68 @@ const float AP_Declination::SAMPLING_MIN_LON = -180;
const float AP_Declination::SAMPLING_MAX_LON = 180; const float AP_Declination::SAMPLING_MAX_LON = 180;
const float AP_Declination::declination_table[LAT_TABLE_SIZE][LON_TABLE_SIZE] = { const float AP_Declination::declination_table[LAT_TABLE_SIZE][LON_TABLE_SIZE] = {
{149.10950f,139.10950f,129.10950f,119.10950f,109.10949f,99.10950f,89.10950f,79.10950f,69.10950f,59.10950f,49.10950f,39.10950f,29.10950f,19.10950f,9.10950f,-0.89050f,-10.89050f,-20.89050f,-30.89050f,-40.89050f,-50.89050f,-60.89050f,-70.89050f,-80.89050f,-90.89050f,-100.89050f,-110.89050f,-120.89050f,-130.89050f,-140.89050f,-150.89050f,-160.89050f,-170.89050f,179.10950f,169.10950f,159.10950f,149.10950f}, {148.83402f,138.83401f,128.83401f,118.83402f,108.83402f,98.83402f,88.83402f,78.83402f,68.83402f,58.83402f,48.83402f,38.83402f,28.83402f,18.83402f,8.83402f,-1.16598f,-11.16598f,-21.16598f,-31.16598f,-41.16598f,-51.16598f,-61.16598f,-71.16598f,-81.16598f,-91.16598f,-101.16598f,-111.16598f,-121.16598f,-131.16598f,-141.16598f,-151.16598f,-161.16598f,-171.16598f,178.83402f,168.83402f,158.83402f,148.83402f},
{129.37759f,117.14583f,106.01898f,95.84726f,86.44522f,77.63150f,69.24826f,61.16874f,53.29825f,45.57105f,37.94414f,30.38880f,22.88112f,15.39339f,7.88854f,0.31945f,-7.36677f,-15.22089f,-23.28322f,-31.57827f,-40.11442f,-48.88906f,-57.89765f,-67.14429f,-76.65158f,-86.46832f,-96.67422f,-107.38079f,-118.72599f,-130.85732f,-143.89431f,-157.86353f,-172.61739f,172.21319f,157.16190f,142.76170f,129.37759f}, {129.09306f,116.89412f,105.78898f,95.63017f,86.23504f,77.42476f,69.04348f,60.96591f,53.09841f,45.37592f,37.75568f,30.20867f,22.70998f,15.23027f,7.73037f,0.16098f,-7.53238f,-15.40109f,-23.48496f,-31.80703f,-40.37375f,-49.18062f,-58.22152f,-67.49946f,-77.03640f,-86.88079f,-97.11212f,-107.84156f,-119.20626f,-131.35191f,-144.39481f,-158.35719f,-173.08769f,171.78274f,156.78187f,142.43310f,129.09306f},
{85.60184f,77.69003f,71.32207f,65.86993f,60.92414f,56.17033f,51.35320f,46.28164f,40.84704f,35.03587f,28.92623f,22.66416f,16.41848f,10.31921f,4.39763f,-1.44271f,-7.40082f,-13.70324f,-20.51470f,-27.87783f,-35.70713f,-43.83304f,-52.06997f,-60.27655f,-68.39086f,-76.44339f,-84.56374f,-93.00460f,-102.21930f,-113.07088f,-127.37057f,-149.05145f,176.63172f,138.21637f,112.07842f,96.22737f,85.60184f}, {85.81367f,77.83602f,71.40003f,65.88433f,60.88263f,56.08204f,51.22755f,46.12774f,40.67419f,34.85457f,28.74909f,22.50583f,16.29363f,10.23812f,4.36029f,-1.45095f,-7.40778f,-13.74178f,-20.61213f,-28.04922f,-35.95530f,-44.15322f,-52.45486f,-60.71951f,-68.88732f,-76.99183f,-85.16746f,-93.67473f,-102.97950f,-113.96429f,-128.46293f,-150.36073f,175.55488f,138.00554f,112.28051f,96.48319f,85.81367f},
{47.72047f,46.41844f,44.94283f,43.50977f,42.16271f,40.77290f,39.04552f,36.59993f,33.11430f,28.45556f,22.74662f,16.37046f,9.89648f,3.90131f,-1.27904f,-5.73319f,-9.95573f,-14.61164f,-20.21833f,-26.91079f,-34.40272f,-42.16094f,-49.65783f,-56.52405f,-62.55849f,-67.66009f,-71.72876f,-74.52850f,-75.43728f,-72.72706f,-60.57997f,-20.41341f,26.63644f,42.82781f,47.52694f,48.39676f,47.72047f}, {48.22805f,46.81921f,45.24300f,43.71189f,42.27245f,40.80022f,39.00177f,36.49549f,32.95972f,28.26545f,22.54379f,16.18846f,9.77818f,3.88971f,-1.16066f,-5.50500f,-9.68832f,-14.40052f,-20.13990f,-26.99385f,-34.63319f,-42.50584f,-50.08478f,-57.00760f,-63.07978f,-68.20773f,-72.30336f,-75.14845f,-76.14220f,-73.56875f,-61.46573f,-19.66028f,28.39616f,43.98783f,48.35027f,49.03265f,48.22805f},
{31.02920f,31.23624f,30.96588f,30.54974f,30.22312f,30.09074f,29.97250f,29.32817f,27.43015f,23.68926f,17.94459f,10.65044f,2.87620f,-4.06486f,-9.27368f,-12.71750f,-15.14455f,-17.66990f,-21.38496f,-26.87077f,-33.73354f,-40.89381f,-47.34608f,-52.47467f,-55.91656f,-57.36320f,-56.37027f,-52.13926f,-43.55753f,-30.12705f,-13.67554f,1.91730f,13.93567f,22.07926f,27.11546f,29.86289f,31.02920f}, {31.42931f,31.60530f,31.28145f,30.79047f,30.38024f,30.16777f,29.97487f,29.25597f,27.27948f,23.46202f,17.66378f,10.37176f,2.68673f,-4.06559f,-9.01317f,-12.19989f,-14.47861f,-17.04830f,-21.00672f,-26.83158f,-33.98769f,-41.32654f,-47.85214f,-52.97945f,-56.36644f,-57.72068f,-56.62201f,-52.29959f,-43.64045f,-30.08348f,-13.41611f,2.35315f,14.41455f,22.53506f,27.54777f,30.28028f,31.42931f},
{22.39580f,22.91483f,22.98471f,22.79294f,22.51132f,22.37364f,22.48467f,22.51169f,21.58462f,18.60470f,12.86231f,4.67251f,-4.38742f,-12.20529f,-17.49574f,-20.37578f,-21.69620f,-22.20533f,-22.93466f,-25.58202f,-30.65181f,-36.60256f,-41.68581f,-44.89480f,-45.67065f,-43.68591f,-38.75262f,-30.86937f,-20.99711f,-11.25673f,-2.98341f,3.98182f,9.94668f,14.86513f,18.60975f,21.08265f,22.39580f}, {22.67985f,23.21169f,23.25494f,22.99742f,22.63545f,22.42369f,22.46877f,22.43187f,21.42571f,18.33186f,12.46440f,4.21692f,-4.75068f,-12.30560f,-17.22721f,-19.74039f,-20.77499f,-21.16946f,-22.14607f,-25.39336f,-31.01102f,-37.19196f,-42.26227f,-45.34969f,-45.95366f,-43.77299f,-38.67388f,-30.72261f,-20.87969f,-11.16390f,-2.84711f,4.17466f,10.15622f,15.07307f,18.83144f,21.33469f,22.67985f},
{16.86268f,17.34487f,17.55107f,17.53468f,17.27224f,16.88812f,16.63481f,16.50963f,15.80216f,13.15648f,7.42999f,-1.11751f,-10.42072f,-17.95472f,-22.58300f,-24.81140f,-25.51932f,-24.64114f,-22.09731f,-20.12401f,-21.49578f,-25.56754f,-29.71013f,-31.93909f,-31.38680f,-28.14427f,-22.75379f,-15.84114f,-8.81817f,-3.40017f,0.41409f,3.84742f,7.42617f,10.85398f,13.75385f,15.78065f,16.86268f}, {17.07334f,17.59062f,17.77934f,17.69577f,17.34929f,16.88674f,16.56217f,16.38656f,15.63204f,12.86517f,6.93562f,-1.75751f,-10.98436f,-18.20308f,-22.41588f,-24.27993f,-24.67590f,-23.50719f,-21.00605f,-19.72369f,-21.87960f,-26.21214f,-30.23195f,-32.25069f,-31.49417f,-28.07385f,-22.58093f,-15.67611f,-8.73630f,-3.38117f,0.43868f,3.90117f,7.49078f,10.92679f,13.85484f,15.93237f,17.07334f},
{13.19097f,13.44856f,13.58422f,13.65261f,13.48939f,13.02568f,12.52149f,12.14860f,11.29753f,8.56495f,2.76096f,-5.61344f,-14.17225f,-20.58114f,-24.03412f,-24.98709f,-24.11858f,-21.26636f,-16.32028f,-11.21874f,-9.02165f,-10.74849f,-14.47798f,-17.30779f,-17.65042f,-15.69359f,-12.14311f,-7.48791f,-2.96526f,-0.12587f,1.36049f,3.09789f,5.60507f,8.31685f,10.73216f,12.41267f,13.19097f}, {13.37426f,13.67217f,13.78744f,13.78998f,13.54222f,12.98780f,12.38852f,11.96065f,11.09372f,8.25499f,2.21162f,-6.34723f,-14.82596f,-20.89032f,-23.89434f,-24.45752f,-23.26867f,-20.14461f,-15.21492f,-10.62227f,-9.09952f,-11.18829f,-14.91638f,-17.58833f,-17.75073f,-15.65321f,-12.03643f,-7.38772f,-2.92537f,-0.15156f,1.30857f,3.04660f,5.56513f,8.30463f,10.76538f,12.51642f,13.37426f},
{10.92623f,10.90181f,10.82333f,10.86460f,10.78695f,10.37670f,9.88910f,9.46007f,8.36291f,5.29505f,-0.57591f,-8.37062f,-15.75003f,-20.80957f,-22.79710f,-21.87616f,-18.84351f,-14.45358f,-9.42840f,-4.80202f,-1.83473f,-1.74130f,-4.26028f,-7.17479f,-8.52577f,-8.09283f,-6.32284f,-3.48771f,-0.62426f,0.78982f,1.09893f,2.05326f,4.13896f,6.57935f,8.80977f,10.35435f,10.92623f}, {11.10969f,11.11944f,11.01236f,10.99728f,10.84097f,10.32286f,9.70494f,9.19687f,8.09157f,4.94277f,-1.12864f,-9.05484f,-16.32980f,-21.04376f,-22.55109f,-21.19496f,-17.89373f,-13.44411f,-8.58084f,-4.24867f,-1.62827f,-1.86509f,-4.55045f,-7.42469f,-8.64775f,-8.12536f,-6.32716f,-3.48850f,-0.64489f,0.72027f,0.97976f,1.90952f,4.01623f,6.51266f,8.80749f,10.44185f,11.10969f},
{9.71011f,9.51881f,9.24068f,9.25106f,9.26720f,8.95743f,8.53646f,8.00522f,6.50726f,2.98362f,-2.85308f,-9.84907f,-15.97767f,-19.64088f,-20.07848f,-17.56993f,-13.32746f,-8.73278f,-4.74905f,-1.53742f,0.92858f,1.76616f,0.36916f,-1.99224f,-3.56114f,-3.89436f,-3.25158f,-1.74963f,-0.12369f,0.39195f,0.09209f,0.65986f,2.57335f,5.00216f,7.34943f,9.08114f,9.71011f}, {9.88349f,9.72040f,9.41289f,9.38439f,9.33291f,8.89921f,8.31537f,7.68011f,6.17272f,2.60695f,-3.33977f,-10.37899f,-16.38823f,-19.72660f,-19.70115f,-16.80477f,-12.41185f,-7.91607f,-4.15177f,-1.10381f,1.22204f,1.82879f,0.23517f,-2.13784f,-3.62813f,-3.94630f,-3.34494f,-1.85961f,-0.22644f,0.26762f,-0.08803f,0.44077f,2.38763f,4.89878f,7.32401f,9.15291f,9.88349f},
{9.00312f,9.03132f,8.80862f,8.92740f,9.13380f,8.96714f,8.45876f,7.49648f,5.31405f,1.20550f,-4.60853f,-10.79680f,-15.64160f,-17.86099f,-17.02957f,-13.81388f,-9.48335f,-5.27860f,-2.08821f,0.18491f,2.08754f,3.09405f,2.33958f,0.49969f,-0.94208f,-1.51458f,-1.49063f,-0.97753f,-0.41673f,-0.66423f,-1.43031f,-1.23789f,0.43821f,2.92085f,5.61318f,7.88479f,9.00312f}, {9.12464f,9.18177f,8.94457f,9.04553f,9.19618f,8.89744f,8.21223f,7.14260f,4.96349f,0.86055f,-4.97931f,-11.14357f,-15.85640f,-17.78532f,-16.57645f,-13.08478f,-8.67898f,-4.59243f,-1.60427f,0.55144f,2.39028f,3.23916f,2.31654f,0.46434f,-0.91732f,-1.53003f,-1.62589f,-1.18564f,-0.62403f,-0.86624f,-1.66562f,-1.50145f,0.21812f,2.79294f,5.56329f,7.91823f,9.12464f},
{8.03874f,8.87718f,9.23144f,9.74451f,10.27560f,10.29756f,9.57016f,7.89237f,4.74571f,-0.17093f,-6.17240f,-11.69433f,-15.25467f,-16.11759f,-14.45574f,-11.15430f,-7.17811f,-3.38526f,-0.55632f,1.30997f,2.82221f,3.77763f,3.40183f,2.00714f,0.77788f,0.16424f,-0.15468f,-0.39946f,-0.85273f,-1.96753f,-3.33820f,-3.67623f,-2.39633f,0.05772f,3.10388f,6.04655f,8.03874f}, {8.06290f,8.93172f,9.29767f,9.81684f,10.30693f,10.20311f,9.30721f,7.53634f,4.41412f,-0.45099f,-6.41113f,-11.85029f,-15.25565f,-15.88209f,-13.96742f,-10.49677f,-6.46933f,-2.75504f,-0.08743f,1.66921f,3.12874f,3.96903f,3.45981f,2.05876f,0.88578f,0.20951f,-0.29117f,-0.68669f,-1.18101f,-2.27487f,-3.63054f,-3.95562f,-2.62221f,-0.08793f,3.01927f,6.01454f,8.06290f},
{6.42021f,8.49313f,9.96485f,11.21264f,12.15378f,12.34411f,11.39654f,9.00192f,4.80210f,-1.14083f,-7.63429f,-12.77860f,-15.31639f,-15.15258f,-12.98558f,-9.72317f,-6.02652f,-2.46224f,0.32036f,2.16718f,3.52576f,4.45316f,4.47022f,3.64413f,2.71916f,2.05267f,1.37415f,0.37187f,-1.18524f,-3.37771f,-5.55055f,-6.50029f,-5.64204f,-3.28034f,-0.00971f,3.47278f,6.42021f}, {6.31041f,8.41617f,9.93058f,11.21483f,12.13996f,12.23034f,11.14011f,8.66524f,4.49928f,-1.34733f,-7.71989f,-12.71272f,-15.08305f,-14.75641f,-12.45343f,-9.09705f,-5.35725f,-1.83470f,0.82823f,2.57001f,3.86519f,4.69588f,4.60243f,3.76104f,2.87601f,2.13967f,1.24833f,0.02788f,-1.62859f,-3.80231f,-5.90990f,-6.79346f,-5.87079f,-3.45535f,-0.15720f,3.34006f,6.31041f},
{4.55870f,7.84457f,10.59505f,12.78315f,14.21311f,14.53879f,13.38981f,10.37263f,5.13228f,-2.00167f,-9.27410f,-14.41195f,-16.39580f,-15.63899f,-13.13217f,-9.75841f,-6.05603f,-2.45211f,0.55836f,2.75052f,4.36042f,5.58048f,6.24404f,6.24213f,5.76940f,4.95204f,3.62521f,1.54168f,-1.40447f,-4.90584f,-7.98277f,-9.46456f,-8.87577f,-6.53558f,-3.08458f,0.80580f,4.55870f}, {4.26294f,7.59975f,10.43666f,12.70491f,14.16020f,14.43398f,13.18770f,10.10768f,4.90586f,-2.08386f,-9.15208f,-14.09196f,-15.93051f,-15.08268f,-12.51517f,-9.09089f,-5.35759f,-1.77919f,1.14514f,3.24292f,4.77489f,5.90082f,6.46683f,6.42854f,5.95440f,5.04613f,3.49019f,1.14215f,-1.96091f,-5.46021f,-8.43365f,-9.79880f,-9.13330f,-6.77311f,-3.34752f,0.50970f,4.26294f},
{3.13967f,7.31097f,11.07216f,14.15725f,16.20221f,16.79070f,15.47250f,11.72257f,5.14656f,-3.57391f,-11.94254f,-17.34882f,-19.11810f,-18.05435f,-15.26042f,-11.58179f,-7.54393f,-3.53438f,0.07849f,3.08157f,5.54519f,7.63184f,9.31427f,10.36791f,10.53101f,9.56965f,7.27456f,3.54700f,-1.35789f,-6.53724f,-10.58593f,-12.40763f,-11.80293f,-9.26734f,-5.52522f,-1.23338f,3.13967f}, {2.57464f,6.81988f,10.72127f,13.95370f,16.10049f,16.72460f,15.39548f,11.64478f,5.15172f,-3.36781f,-11.49173f,-16.72206f,-18.40831f,-17.31430f,-14.50140f,-10.79977f,-6.74992f,-2.76545f,0.78143f,3.70100f,6.08013f,8.07892f,9.67963f,10.67456f,10.77058f,9.65347f,7.07600f,3.02043f,-2.09809f,-7.27683f,-11.16806f,-12.81861f,-12.13043f,-9.62141f,-5.97603f,-1.77704f,2.57464f},
{2.40982f,7.18541f,11.61646f,15.39834f,18.09395f,19.11444f,17.67695f,12.80844f,3.91551f,-7.49296f,-17.41503f,-23.01926f,-24.41774f,-22.89374f,-19.60750f,-15.34185f,-10.59502f,-5.72094f,-1.00157f,3.37937f,7.37061f,10.97982f,14.11553f,16.47981f,17.57833f,16.80075f,13.55567f,7.60935f,-0.25054f,-7.92815f,-13.21489f,-15.22877f,-14.33921f,-11.39247f,-7.22465f,-2.48217f,2.40982f}, {1.43503f,6.27921f,10.88019f,14.88261f,17.80063f,19.02158f,17.77297f,13.12636f,4.53718f,-6.54055f,-16.27050f,-21.85552f,-23.31365f,-21.85455f,-18.61101f,-14.36797f,-9.64057f,-4.79964f,-0.13239f,4.18385f,8.10605f,11.64519f,14.70734f,16.97990f,17.92977f,16.88820f,13.23164f,6.81146f,-1.34665f,-8.97876f,-14.01257f,-15.81005f,-14.85926f,-12.00033f,-7.99733f,-3.40265f,1.43502f},
{1.84909f,7.14349f,12.09954f,16.39700f,19.54576f,20.73345f,18.58921f,11.09809f,-2.76476f,-18.58691f,-29.30539f,-33.52891f,-33.25409f,-30.30365f,-25.79412f,-20.37504f,-14.44263f,-8.26365f,-2.03561f,4.09039f,9.99389f,15.55055f,20.57404f,24.74657f,27.54152f,28.12085f,25.24078f,17.56424f,5.48335f,-6.76322f,-14.61951f,-17.38523f,-16.44524f,-13.21307f,-8.68808f,-3.52579f,1.84909f}, {0.13094f,5.45479f,10.54962f,15.08235f,18.55436f,20.17754f,18.67574f,12.20150f,-0.36226f,-15.49225f,-26.46004f,-31.19380f,-31.33251f,-28.66356f,-24.33699f,-19.03627f,-13.18344f,-7.06335f,-0.88475f,5.19490f,11.05071f,16.55252f,21.50321f,25.56424f,28.16988f,28.41286f,24.95220f,16.43585f,3.63861f,-8.67079f,-16.18909f,-18.69045f,-17.68753f,-14.54612f,-10.18137f,-5.16795f,0.13094f},
{-0.07018f,5.11056f,9.81033f,13.43064f,14.95811f,12.44881f,2.42652f,-17.21607f,-37.22275f,-47.59912f,-50.02338f,-48.04885f,-43.68750f,-37.95581f,-31.39385f,-24.31250f,-16.90710f,-9.31264f,-1.63265f,6.04381f,13.62973f,21.02738f,28.11104f,34.69910f,40.50309f,45.02417f,47.32932f,45.58173f,36.48238f,17.86736f,-1.80184f,-12.43534f,-15.24263f,-13.75101f,-10.05982f,-5.28238f,-0.07018f}, {-4.14830f,1.12345f,5.96040f,9.84415f,11.94596f,10.80871f,4.02869f,-10.36405f,-27.94912f,-39.79617f,-44.16477f,-43.57950f,-40.12657f,-34.99189f,-28.83083f,-22.02403f,-14.80922f,-7.34799f,0.23881f,7.85050f,15.39197f,22.75942f,29.82156f,36.38924f,42.15868f,46.59144f,48.63821f,46.09967f,34.72041f,12.13936f,-8.98865f,-18.65098f,-20.47841f,-18.40133f,-14.39834f,-9.45818f,-4.14830f},
{-177.79784f,-167.79784f,-157.79784f,-147.79784f,-137.79784f,-127.79784f,-117.79784f,-107.79784f,-97.79784f,-87.79784f,-77.79784f,-67.79784f,-57.79784f,-47.79784f,-37.79784f,-27.79784f,-17.79784f,-7.79784f,2.20217f,12.20217f,22.20217f,32.20217f,42.20217f,52.20217f,62.20217f,72.20217f,82.20217f,92.20217f,102.20217f,112.20217f,122.20217f,132.20217f,142.20217f,152.20217f,162.20217f,172.20217f,-177.79784f} {-169.79948f,-159.79948f,-149.79948f,-139.79948f,-129.79948f,-119.79948f,-109.79948f,-99.79948f,-89.79948f,-79.79948f,-69.79948f,-59.79948f,-49.79948f,-39.79948f,-29.79948f,-19.79948f,-9.79948f,0.20052f,10.20052f,20.20052f,30.20052f,40.20052f,50.20052f,60.20052f,70.20052f,80.20052f,90.20052f,100.20052f,110.20052f,120.20052f,130.20052f,140.20052f,150.20052f,160.20052f,170.20052f,-179.79948f,-169.79948f}
}; };
const float AP_Declination::inclination_table[LAT_TABLE_SIZE][LON_TABLE_SIZE] = { const float AP_Declination::inclination_table[LAT_TABLE_SIZE][LON_TABLE_SIZE] = {
{-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f,-72.08447f}, {-72.02070f,-72.02071f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02070f,-72.02071f,-72.02070f,-72.02071f},
{-78.33243f,-77.56645f,-76.64486f,-75.60941f,-74.49599f,-73.33711f,-72.16456f,-71.01082f,-69.90877f,-68.88978f,-67.98065f,-67.20063f,-66.55969f,-66.05909f,-65.69426f,-65.45930f,-65.35147f,-65.37404f,-65.53651f,-65.85220f,-66.33408f,-66.99021f,-67.82010f,-68.81276f,-69.94649f,-71.18994f,-72.50361f,-73.84119f,-75.15044f,-76.37388f,-77.45008f,-78.31699f,-78.91913f,-79.21830f,-79.20379f,-78.89480f,-78.33243f}, {-78.23208f,-77.46612f,-76.54604f,-75.51344f,-74.40408f,-73.25043f,-72.08420f,-70.93779f,-69.84384f,-68.83332f,-67.93241f,-67.15960f,-66.52407f,-66.02648f,-65.66205f,-65.42519f,-65.31392f,-65.33255f,-65.49161f,-65.80511f,-66.28626f,-66.94289f,-67.77395f,-68.76776f,-69.90201f,-71.14489f,-72.45664f,-73.79090f,-75.09549f,-76.31306f,-77.38240f,-78.24183f,-78.83644f,-79.12876f,-79.10879f,-78.79618f,-78.23208f},
{-80.91847f,-79.09801f,-77.26826f,-75.41050f,-73.49957f,-71.51974f,-69.48020f,-67.42760f,-65.44927f,-63.66181f,-62.18407f,-61.10090f,-60.43119f,-60.11709f,-60.04466f,-60.08935f,-60.16521f,-60.25535f,-60.41391f,-60.74312f,-61.35672f,-62.34264f,-63.73840f,-65.52698f,-67.65072f,-70.03207f,-72.58967f,-75.24472f,-77.91857f,-80.52353f,-82.93966f,-84.94483f,-86.05606f,-85.75384f,-84.42566f,-82.72116f,-80.91847f}, {-80.80007f,-78.97830f,-77.14756f,-75.29021f,-73.38193f,-71.40769f,-69.37743f,-67.33857f,-65.37896f,-63.61481f,-62.16302f,-61.10460f,-60.45316f,-60.14557f,-60.06470f,-60.08698f,-60.13217f,-60.19219f,-60.32958f,-60.65151f,-61.27183f,-62.27481f,-63.69257f,-65.50302f,-67.64474f,-70.03800f,-72.60073f,-75.25455f,-77.92173f,-80.51496f,-82.91263f,-84.88736f,-85.95658f,-85.63251f,-84.30522f,-82.60297f,-80.80007f},
{-77.51837f,-75.51694f,-73.59315f,-71.68670f,-69.71302f,-67.57376f,-65.19328f,-62.57944f,-59.87571f,-57.36704f,-55.41993f,-54.35624f,-54.29717f,-55.07005f,-56.26617f,-57.42621f,-58.22580f,-58.56311f,-58.55509f,-58.48876f,-58.73003f,-59.58712f,-61.19398f,-63.49338f,-66.31349f,-69.46462f,-72.79529f,-76.19407f,-79.56126f,-82.77630f,-85.61580f,-87.26733f,-86.31815f,-84.15731f,-81.85873f,-79.63120f,-77.51837f}, {-77.45516f,-75.43606f,-73.49604f,-71.57699f,-69.59653f,-67.45749f,-65.08505f,-62.48902f,-59.81600f,-57.35291f,-55.46368f,-54.46054f,-54.44855f,-55.23685f,-56.40404f,-57.49090f,-58.18917f,-58.42457f,-58.34278f,-58.24952f,-58.51231f,-59.42525f,-61.10217f,-63.46936f,-66.34503f,-69.53469f,-72.88656f,-76.29320f,-79.66218f,-82.88130f,-85.73520f,-87.38955f,-86.36194f,-84.15583f,-81.83294f,-79.58616f,-77.45517f},
{-71.58980f,-69.64769f,-67.77321f,-65.94443f,-64.10554f,-62.13602f,-59.85758f,-57.13808f,-54.05141f,-50.99340f,-48.66453f,-47.83440f,-48.89447f,-51.51382f,-54.80435f,-57.85064f,-60.06631f,-61.18986f,-61.20437f,-60.42942f,-59.58264f,-59.49073f,-60.61581f,-62.88772f,-65.91135f,-69.25190f,-72.58760f,-75.67681f,-78.24048f,-79.94645f,-80.57004f,-80.16984f,-79.02581f,-77.42625f,-75.56790f,-73.58591f,-71.58980f}, {-71.58214f,-69.61565f,-67.71488f,-65.86479f,-64.01505f,-62.04510f,-59.77482f,-57.07400f,-54.02405f,-51.03212f,-48.80491f,-48.09823f,-49.26412f,-51.92460f,-55.16562f,-58.07793f,-60.10267f,-61.01513f,-60.84749f,-59.97822f,-59.15799f,-59.18575f,-60.45940f,-62.86069f,-65.97595f,-69.36736f,-72.71868f,-75.80268f,-78.35851f,-80.06262f,-80.67983f,-80.25871f,-79.08901f,-77.46953f,-75.59576f,-73.59787f,-71.58215f},
{-64.35997f,-62.39436f,-60.44044f,-58.48692f,-56.55523f,-54.62878f,-52.55624f,-50.07572f,-47.03679f,-43.74840f,-41.19888f,-40.75016f,-43.15983f,-47.79606f,-53.17503f,-58.10488f,-62.07251f,-64.81023f,-65.90745f,-65.16861f,-63.23594f,-61.51933f,-61.25674f,-62.70064f,-65.25795f,-68.11437f,-70.67345f,-72.55166f,-73.47174f,-73.47848f,-72.95756f,-72.18292f,-71.16028f,-69.83589f,-68.20337f,-66.33091f,-64.35997f}, {-64.39807f,-62.40221f,-60.40960f,-58.42549f,-56.48151f,-54.55795f,-52.49863f,-50.03954f,-47.03044f,-43.80319f,-41.39118f,-41.16169f,-43.78688f,-48.51954f,-53.83971f,-58.60413f,-62.35170f,-64.81766f,-65.60605f,-64.62579f,-62.64650f,-61.08659f,-61.05364f,-62.68316f,-65.34905f,-68.24163f,-70.78236f,-72.62117f,-73.51797f,-73.52965f,-73.02048f,-72.24528f,-71.21594f,-69.88980f,-68.25886f,-66.38361f,-64.39807f},
{-54.94450f,-52.83610f,-50.71907f,-48.52548f,-46.29540f,-44.14811f,-42.08032f,-39.77454f,-36.80280f,-33.30065f,-30.58530f,-30.73124f,-34.77290f,-41.50404f,-48.77340f,-55.23978f,-60.63675f,-64.93033f,-67.56104f,-67.82610f,-65.84530f,-62.87774f,-60.76994f,-60.59320f,-61.93831f,-63.73453f,-65.20081f,-65.88752f,-65.54695f,-64.51690f,-63.50867f,-62.74044f,-61.89461f,-60.69909f,-59.07143f,-57.07765f,-54.94450f}, {-55.02826f,-52.87120f,-50.69073f,-48.44731f,-46.19513f,-44.04849f,-42.00465f,-39.74123f,-36.79801f,-33.33110f,-30.77621f,-31.26765f,-35.68330f,-42.58861f,-49.78570f,-56.05256f,-61.22645f,-65.24992f,-67.52021f,-67.43115f,-65.26549f,-62.35447f,-60.45735f,-60.49007f,-61.96843f,-63.81210f,-65.26064f,-65.90429f,-65.53604f,-64.51130f,-63.52424f,-62.77292f,-61.94296f,-60.76846f,-59.16172f,-57.17787f,-55.02826f},
{-42.10646f,-39.67640f,-37.35701f,-34.97293f,-32.46788f,-30.02667f,-27.76992f,-25.30303f,-22.01486f,-18.09122f,-15.32823f,-16.39044f,-22.30870f,-31.32094f,-40.74071f,-48.83600f,-55.18344f,-59.91449f,-62.78717f,-63.30498f,-61.42903f,-57.98330f,-54.69009f,-53.10628f,-53.23404f,-54.07531f,-54.84677f,-54.97074f,-54.01281f,-52.44135f,-51.30869f,-50.77990f,-50.14138f,-48.93456f,-47.08149f,-44.68014f,-42.10646f}, {-42.23934f,-39.72248f,-37.30606f,-34.84704f,-32.29950f,-29.84715f,-27.62882f,-25.25073f,-22.02346f,-18.13398f,-15.56621f,-17.09131f,-23.52381f,-32.78684f,-42.11183f,-49.91489f,-55.93881f,-60.34177f,-62.85919f,-63.04596f,-60.93631f,-57.41244f,-54.21948f,-52.82417f,-53.10885f,-54.02972f,-54.81946f,-54.92826f,-53.94911f,-52.38029f,-51.27875f,-50.79557f,-50.20937f,-49.05107f,-47.23568f,-44.84941f,-42.23934f},
{-25.12461f,-22.20972f,-19.71770f,-17.30812f,-14.73074f,-12.18096f,-9.79096f,-7.01347f,-3.30221f,0.76014f,3.06841f,1.05911f,-6.08614f,-16.75791f,-28.16035f,-37.77466f,-44.50466f,-48.52854f,-50.32132f,-50.14678f,-47.98684f,-44.21133f,-40.39026f,-38.23866f,-37.87010f,-38.34407f,-38.95664f,-39.04699f,-37.96969f,-36.26974f,-35.35719f,-35.32784f,-34.98679f,-33.69969f,-31.46052f,-28.41042f,-25.12461f}, {-25.31616f,-22.26353f,-19.64432f,-17.13765f,-14.48794f,-11.90452f,-9.56551f,-6.93532f,-3.35246f,0.62534f,2.69744f,0.20162f,-7.49683f,-18.49333f,-29.80260f,-38.99555f,-45.22087f,-48.81124f,-50.28975f,-49.88122f,-47.49942f,-43.57896f,-39.80201f,-37.81589f,-37.58213f,-38.12733f,-38.79073f,-38.91636f,-37.84560f,-36.15384f,-35.28930f,-35.35164f,-35.11620f,-33.90633f,-31.71407f,-28.67497f,-25.31616f},
{-4.97565f,-1.60199f,0.92214f,3.11849f,5.46677f,7.81249f,10.07397f,12.84091f,16.38100f,19.76510f,21.12151f,18.61808f,11.61848f,1.03273f,-10.71878f,-20.60587f,-26.95396f,-29.87498f,-30.40244f,-29.49437f,-27.12952f,-23.19291f,-19.13605f,-16.84996f,-16.43635f,-16.86796f,-17.51065f,-17.78722f,-16.98601f,-15.63402f,-15.29474f,-15.99460f,-16.17398f,-15.02255f,-12.56796f,-8.96345f,-4.97565f}, {-5.22365f,-1.68002f,0.98130f,3.28459f,5.73141f,8.13291f,10.33797f,12.92226f,16.28019f,19.52644f,20.64919f,17.75076f,10.26968f,-0.68527f,-12.39654f,-21.81573f,-27.55757f,-29.98547f,-30.24089f,-29.18412f,-26.62224f,-22.51726f,-18.50023f,-16.36665f,-16.02599f,-16.47452f,-17.18522f,-17.56335f,-16.82114f,-15.49276f,-15.21405f,-16.04947f,-16.38744f,-15.33409f,-12.92178f,-9.31548f,-5.22365f},
{14.91447f,18.35017f,20.72172f,22.57409f,24.52718f,26.56390f,28.61333f,31.02478f,33.78706f,36.01013f,36.36989f,33.79530f,27.90158f,19.21562f,9.54519f,1.38248f,-3.71763f,-5.61325f,-5.28417f,-3.97847f,-1.76155f,1.76478f,5.44818f,7.52401f,7.87847f,7.51982f,7.00436f,6.66556f,7.01607f,7.64759f,7.26628f,5.87086f,4.95018f,5.43404f,7.43409f,10.86385f,14.91447f}, {14.65727f,18.24457f,20.73560f,22.68750f,24.74090f,26.83478f,28.82717f,31.06453f,33.64927f,35.73650f,35.91607f,33.06931f,26.82267f,17.82545f,8.14938f,0.35249f,-4.22224f,-5.65846f,-5.08244f,-3.67265f,-1.30171f,2.36894f,6.00997f,7.96495f,8.31670f,8.01335f,7.45026f,6.96852f,7.19717f,7.76654f,7.31456f,5.77666f,4.68883f,5.07867f,7.05547f,10.50432f,14.65727f},
{31.20265f,34.13364f,36.24286f,37.87203f,39.58418f,41.50443f,43.52947f,45.65845f,47.68007f,48.91359f,48.52705f,46.02412f,41.42395f,35.29504f,28.85019f,23.50541f,20.17823f,19.13590f,19.80674f,21.15030f,22.94717f,25.52415f,28.20453f,29.75720f,30.04189f,29.82318f,29.56477f,29.39315f,29.46905f,29.45564f,28.53745f,26.73967f,25.15400f,24.67305f,25.61444f,27.99981f,31.20265f}, {31.00203f,34.03206f,36.22486f,37.93041f,39.71929f,41.67672f,43.64451f,45.63057f,47.51149f,48.64179f,48.13476f,45.46014f,40.64785f,34.34474f,27.90343f,22.77471f,19.78522f,19.08118f,19.96093f,21.39191f,23.28877f,25.96005f,28.61507f,30.09860f,30.42073f,30.29938f,30.04062f,29.74069f,29.65970f,29.53545f,28.53162f,26.62276f,24.91817f,24.37385f,25.31100f,27.72542f,31.00203f},
{43.45897f,45.53118f,47.31626f,48.90746f,50.63263f,52.61803f,54.74225f,56.79950f,58.45770f,59.16957f,58.40919f,56.07765f,52.56584f,48.52949f,44.70395f,41.69430f,39.88037f,39.44508f,40.12934f,41.29382f,42.64758f,44.29218f,45.93985f,46.96938f,47.25944f,47.23840f,47.23429f,47.28737f,47.30538f,46.94314f,45.73923f,43.78378f,41.82093f,40.58525f,40.46579f,41.54349f,43.45897f}, {43.33608f,45.45851f,47.28808f,48.92364f,50.69187f,52.68920f,54.75852f,56.70372f,58.24993f,58.87748f,58.03709f,55.61656f,52.01961f,47.93440f,44.13769f,41.24459f,39.61639f,39.39065f,40.22833f,41.47069f,42.89022f,44.59331f,46.23881f,47.24171f,47.57154f,47.63935f,47.66249f,47.62919f,47.50096f,47.00810f,45.71114f,43.68014f,41.65440f,40.38784f,40.27252f,41.37670f,43.33608f},
{53.18759f,54.43224f,55.88059f,57.49427f,59.34040f,61.41406f,63.57613f,65.58932f,67.09997f,67.62703f,66.81035f,64.77326f,62.07457f,59.34036f,57.01844f,55.33747f,54.40642f,54.27684f,54.81467f,55.68344f,56.63785f,57.64137f,58.61275f,59.35237f,59.79549f,60.08844f,60.36788f,60.60803f,60.61967f,60.08419f,58.75938f,56.80187f,54.74411f,53.13609f,52.31629f,52.38221f,53.18759f}, {53.10131f,54.36161f,55.82606f,57.45873f,59.32146f,61.39014f,63.50628f,65.43734f,66.85905f,67.31408f,66.44780f,64.38450f,61.68268f,58.96721f,56.68844f,55.08044f,54.25566f,54.24982f,54.89128f,55.82780f,56.83438f,57.87845f,58.85920f,59.59271f,60.06042f,60.40887f,60.71534f,60.90716f,60.81057f,60.15911f,58.74748f,56.73559f,54.64618f,53.02448f,52.20550f,52.28132f,53.10131f},
{62.00682f,62.70613f,63.84875f,65.37429f,67.21435f,69.25270f,71.31641f,73.17326f,74.49560f,74.88083f,74.10396f,72.39157f,70.27835f,68.26326f,66.64304f,65.52888f,64.93677f,64.84030f,65.14402f,65.67923f,66.29619f,66.93920f,67.60553f,68.28409f,68.96109f,69.62909f,70.24417f,70.67488f,70.69663f,70.07359f,68.73701f,66.90517f,64.98300f,63.35731f,62.27637f,61.83476f,62.00682f}, {61.90363f,62.59082f,63.73000f,65.25974f,67.10373f,69.13404f,71.16923f,72.97878f,74.24745f,74.58969f,73.79370f,72.08739f,69.99806f,68.01780f,66.44167f,65.38391f,64.86230f,64.84287f,65.21557f,65.80372f,66.46017f,67.12970f,67.80720f,68.49179f,69.18909f,69.89166f,70.52514f,70.92481f,70.86509f,70.14456f,68.73300f,66.86155f,64.92449f,63.29260f,62.20331f,61.74779f,61.90363f},
{70.71443f,71.15184f,72.02039f,73.27261f,74.82799f,76.56362f,78.31147f,79.84421f,80.85027f,81.00173f,80.21459f,78.77568f,77.10397f,75.52742f,74.23457f,73.30289f,72.74118f,72.51798f,72.57149f,72.82152f,73.19914f,73.67611f,74.26606f,74.99681f,75.87341f,76.84434f,77.77369f,78.43201f,78.54711f,77.95236f,76.72716f,75.15436f,73.56000f,72.20185f,71.23761f,70.73764f,70.71443f}, {70.57319f,70.97549f,71.81891f,73.05700f,74.60513f,76.33503f,78.07584f,79.60158f,80.60606f,80.76720f,79.99878f,78.58008f,76.92858f,75.37566f,74.11340f,73.22087f,72.70518f,72.52979f,72.62677f,72.91213f,73.31657f,73.81370f,74.42101f,75.17239f,76.07666f,77.07532f,78.01176f,78.63384f,78.66938f,77.98598f,76.70086f,75.10445f,73.50638f,72.14451f,71.16426f,70.63412f,70.57319f},
{79.00682f,79.29184f,79.87277f,80.71498f,81.76476f,82.94241f,84.12827f,85.13086f,85.65991f,85.46559f,84.62947f,83.45809f,82.20769f,81.03569f,80.03242f,79.24434f,78.68745f,78.35646f,78.23285f,78.29380f,78.52195f,78.91276f,79.47430f,80.21709f,81.13521f,82.18169f,83.23875f,84.08767f,84.43289f,84.09671f,83.21590f,82.09358f,80.98565f,80.05465f,79.39115f,79.03778f,79.00682f}, {78.82351f,79.06440f,79.60559f,80.41612f,81.44382f,82.60991f,83.79747f,84.82323f,85.41014f,85.29919f,84.52961f,83.39228f,82.15604f,80.99185f,79.99787f,79.22370f,78.68527f,78.37555f,78.27394f,78.35635f,78.60546f,79.01788f,79.60326f,80.37283f,81.31875f,82.38760f,83.44917f,84.26774f,84.54142f,84.12292f,83.18704f,82.03917f,80.91872f,79.97342f,79.28584f,78.89722f,78.82351f},
{86.14235f,86.25121f,86.50061f,86.87153f,87.33295f,87.83175f,88.26493f,88.44295f,88.20870f,87.65877f,86.96733f,86.23857f,85.52963f,84.87675f,84.30531f,83.83351f,83.47382f,83.23411f,83.11886f,83.13031f,83.26944f,83.53626f,83.92911f,84.44289f,85.06632f,85.77827f,86.54222f,87.29519f,87.92224f,88.23116f,88.09287f,87.66150f,87.15950f,86.71170f,86.37734f,86.18408f,86.14235f}, {85.92404f,85.99807f,86.21370f,86.55320f,86.98729f,87.46743f,87.90712f,88.15645f,88.05609f,87.61718f,86.98684f,86.28678f,85.58976f,84.94098f,84.37090f,83.90045f,83.54357f,83.30879f,83.20077f,83.22179f,83.37274f,83.65354f,84.06234f,84.59369f,85.23581f,85.96691f,86.74942f,87.51716f,88.14109f,88.39226f,88.15089f,87.63861f,87.08412f,86.59723f,86.22810f,86.00055f,85.92404f},
{88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f,88.07502f} {88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f,88.21420f}
}; };
const float AP_Declination::intensity_table[LAT_TABLE_SIZE][LON_TABLE_SIZE] = { const float AP_Declination::intensity_table[LAT_TABLE_SIZE][LON_TABLE_SIZE] = {
{0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f,0.54677f}, {0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f,0.54507f},
{0.60733f,0.60103f,0.59321f,0.58408f,0.57385f,0.56274f,0.55099f,0.53886f,0.52664f,0.51464f,0.50318f,0.49258f,0.48311f,0.47506f,0.46864f,0.46409f,0.46158f,0.46131f,0.46341f,0.46797f,0.47499f,0.48434f,0.49579f,0.50895f,0.52332f,0.53833f,0.55334f,0.56771f,0.58086f,0.59227f,0.60156f,0.60848f,0.61292f,0.61488f,0.61448f,0.61189f,0.60733f}, {0.60562f,0.59923f,0.59133f,0.58213f,0.57184f,0.56070f,0.54892f,0.53679f,0.52458f,0.51262f,0.50121f,0.49067f,0.48128f,0.47330f,0.46697f,0.46249f,0.46006f,0.45986f,0.46203f,0.46665f,0.47372f,0.48312f,0.49460f,0.50778f,0.52217f,0.53717f,0.55217f,0.56652f,0.57964f,0.59102f,0.60027f,0.60715f,0.61152f,0.61342f,0.61294f,0.61026f,0.60562f},
{0.63154f,0.61845f,0.60363f,0.58729f,0.56950f,0.55031f,0.52986f,0.50843f,0.48660f,0.46508f,0.44473f,0.42628f,0.41025f,0.39690f,0.38632f,0.37857f,0.37385f,0.37260f,0.37540f,0.38291f,0.39557f,0.41347f,0.43621f,0.46292f,0.49236f,0.52306f,0.55344f,0.58192f,0.60704f,0.62760f,0.64283f,0.65244f,0.65659f,0.65582f,0.65087f,0.64254f,0.63154f}, {0.62993f,0.61663f,0.60163f,0.58513f,0.56721f,0.54792f,0.52741f,0.50597f,0.48417f,0.46274f,0.44252f,0.42424f,0.40840f,0.39524f,0.38483f,0.37722f,0.37262f,0.37149f,0.37444f,0.38211f,0.39496f,0.41303f,0.43591f,0.46271f,0.49220f,0.52288f,0.55321f,0.58160f,0.60660f,0.62705f,0.64217f,0.65166f,0.65569f,0.65477f,0.64966f,0.64113f,0.62993f},
{0.62000f,0.60125f,0.58151f,0.56085f,0.53899f,0.51544f,0.48977f,0.46196f,0.43279f,0.40379f,0.37690f,0.35385f,0.33554f,0.32180f,0.31173f,0.30436f,0.29937f,0.29738f,0.29983f,0.30853f,0.32501f,0.34983f,0.38230f,0.42070f,0.46273f,0.50598f,0.54808f,0.58665f,0.61944f,0.64465f,0.66128f,0.66932f,0.66957f,0.66335f,0.65211f,0.63725f,0.62000f}, {0.61859f,0.59954f,0.57951f,0.55859f,0.53652f,0.51281f,0.48703f,0.45921f,0.43010f,0.40125f,0.37460f,0.35184f,0.33383f,0.32034f,0.31043f,0.30313f,0.29816f,0.29624f,0.29887f,0.30789f,0.32478f,0.35003f,0.38290f,0.42162f,0.46385f,0.50716f,0.54918f,0.58755f,0.62009f,0.64502f,0.66138f,0.66918f,0.66921f,0.66276f,0.65127f,0.63614f,0.61859f},
{0.58540f,0.56274f,0.53995f,0.51720f,0.49410f,0.46971f,0.44278f,0.41255f,0.37961f,0.34621f,0.31570f,0.29135f,0.27491f,0.26562f,0.26073f,0.25737f,0.25418f,0.25173f,0.25221f,0.25901f,0.27564f,0.30394f,0.34296f,0.38959f,0.43988f,0.49027f,0.53788f,0.58008f,0.61437f,0.63888f,0.65302f,0.65739f,0.65335f,0.64259f,0.62670f,0.60715f,0.58540f}, {0.58434f,0.56134f,0.53820f,0.51511f,0.49174f,0.46715f,0.44010f,0.40984f,0.37699f,0.34382f,0.31364f,0.28967f,0.27359f,0.26453f,0.25966f,0.25610f,0.25262f,0.24997f,0.25053f,0.25779f,0.27518f,0.30435f,0.34417f,0.39141f,0.44206f,0.49253f,0.54000f,0.58194f,0.61593f,0.64015f,0.65395f,0.65794f,0.65353f,0.64245f,0.62626f,0.60641f,0.58434f},
{0.53990f,0.51548f,0.49130f,0.46766f,0.44447f,0.42102f,0.39585f,0.36752f,0.33593f,0.30307f,0.27292f,0.25027f,0.23814f,0.23543f,0.23760f,0.24017f,0.24116f,0.24059f,0.23977f,0.24231f,0.25416f,0.28019f,0.32067f,0.37126f,0.42556f,0.47801f,0.52510f,0.56440f,0.59381f,0.61260f,0.62170f,0.62236f,0.61571f,0.60295f,0.58524f,0.56369f,0.53990f}, {0.53921f,0.51448f,0.48995f,0.46595f,0.44250f,0.41888f,0.39359f,0.36521f,0.33366f,0.30097f,0.27115f,0.24895f,0.23726f,0.23477f,0.23677f,0.23885f,0.23920f,0.23803f,0.23691f,0.23986f,0.25296f,0.28060f,0.32245f,0.37391f,0.42855f,0.48085f,0.52753f,0.56643f,0.59562f,0.61429f,0.62316f,0.62341f,0.61626f,0.60311f,0.58508f,0.56327f,0.53921f},
{0.48818f,0.46438f,0.44084f,0.41767f,0.39521f,0.37350f,0.35178f,0.32863f,0.30295f,0.27543f,0.24958f,0.23085f,0.22313f,0.22534f,0.23244f,0.24016f,0.24725f,0.25311f,0.25619f,0.25738f,0.26278f,0.28057f,0.31495f,0.36280f,0.41574f,0.46566f,0.50804f,0.54032f,0.56070f,0.57052f,0.57345f,0.57128f,0.56367f,0.55075f,0.53312f,0.51166f,0.48818f}, {0.48785f,0.46379f,0.43988f,0.41636f,0.39367f,0.37182f,0.34998f,0.32674f,0.30099f,0.27346f,0.24780f,0.22959f,0.22251f,0.22507f,0.23198f,0.23916f,0.24558f,0.25057f,0.25278f,0.25389f,0.26060f,0.28058f,0.31692f,0.36595f,0.41928f,0.46891f,0.51065f,0.54231f,0.56238f,0.57214f,0.57493f,0.57236f,0.56426f,0.55095f,0.53309f,0.51149f,0.48785f},
{0.43218f,0.41124f,0.39069f,0.37048f,0.35104f,0.33291f,0.31620f,0.29993f,0.28232f,0.26276f,0.24367f,0.22976f,0.22479f,0.22857f,0.23760f,0.24889f,0.26192f,0.27556f,0.28577f,0.28998f,0.29174f,0.29954f,0.32156f,0.35867f,0.40314f,0.44569f,0.48090f,0.50518f,0.51615f,0.51692f,0.51415f,0.50994f,0.50209f,0.48968f,0.47316f,0.45335f,0.43218f}, {0.43209f,0.41089f,0.38995f,0.36941f,0.34979f,0.33155f,0.31470f,0.29826f,0.28044f,0.26067f,0.24164f,0.22828f,0.22418f,0.22862f,0.23770f,0.24867f,0.26122f,0.27397f,0.28296f,0.28650f,0.28895f,0.29863f,0.32271f,0.36133f,0.40653f,0.44908f,0.48374f,0.50731f,0.51774f,0.51826f,0.51530f,0.51075f,0.50252f,0.48985f,0.47321f,0.45336f,0.43209f},
{0.37898f,0.36321f,0.34812f,0.33368f,0.32029f,0.30839f,0.29830f,0.28945f,0.28010f,0.26891f,0.25668f,0.24625f,0.24088f,0.24246f,0.25067f,0.26352f,0.27927f,0.29594f,0.30956f,0.31664f,0.31798f,0.31969f,0.33051f,0.35422f,0.38581f,0.41752f,0.44408f,0.46107f,0.46532f,0.46038f,0.45387f,0.44781f,0.43921f,0.42706f,0.41219f,0.39562f,0.37898f}, {0.37890f,0.36283f,0.34739f,0.33271f,0.31922f,0.30724f,0.29696f,0.28780f,0.27809f,0.26658f,0.25432f,0.24439f,0.23994f,0.24247f,0.25117f,0.26398f,0.27930f,0.29517f,0.30771f,0.31403f,0.31546f,0.31823f,0.33068f,0.35590f,0.38846f,0.42051f,0.44683f,0.46322f,0.46680f,0.46142f,0.45465f,0.44832f,0.43950f,0.42721f,0.41228f,0.39568f,0.37890f},
{0.34141f,0.33249f,0.32432f,0.31714f,0.31161f,0.30779f,0.30545f,0.30409f,0.30213f,0.29754f,0.28963f,0.27981f,0.27109f,0.26711f,0.27059f,0.28075f,0.29432f,0.30838f,0.32039f,0.32820f,0.33136f,0.33312f,0.33973f,0.35435f,0.37434f,0.39514f,0.41304f,0.42408f,0.42536f,0.41914f,0.41071f,0.40169f,0.39062f,0.37761f,0.36424f,0.35187f,0.34141f}, {0.34114f,0.33192f,0.32348f,0.31616f,0.31061f,0.30672f,0.30410f,0.30225f,0.29980f,0.29492f,0.28700f,0.27755f,0.26956f,0.26653f,0.27083f,0.28123f,0.29446f,0.30791f,0.31935f,0.32678f,0.32987f,0.33216f,0.33985f,0.35562f,0.37648f,0.39779f,0.41572f,0.42632f,0.42691f,0.42012f,0.41134f,0.40209f,0.39087f,0.37775f,0.36429f,0.35181f,0.34114f},
{0.32867f,0.32594f,0.32420f,0.32395f,0.32630f,0.33102f,0.33698f,0.34292f,0.34678f,0.34593f,0.33903f,0.32732f,0.31415f,0.30395f,0.30057f,0.30442f,0.31263f,0.32253f,0.33245f,0.34086f,0.34708f,0.35294f,0.36127f,0.37252f,0.38535f,0.39852f,0.41027f,0.41774f,0.41871f,0.41327f,0.40286f,0.38883f,0.37279f,0.35689f,0.34336f,0.33390f,0.32867f}, {0.32818f,0.32516f,0.32319f,0.32283f,0.32517f,0.32980f,0.33535f,0.34062f,0.34397f,0.34296f,0.33615f,0.32475f,0.31211f,0.30265f,0.30010f,0.30443f,0.31265f,0.32241f,0.33228f,0.34067f,0.34700f,0.35327f,0.36224f,0.37416f,0.38773f,0.40158f,0.41356f,0.42060f,0.42076f,0.41455f,0.40362f,0.38928f,0.37303f,0.35700f,0.34334f,0.33369f,0.32818f},
{0.34041f,0.34097f,0.34394f,0.34953f,0.35870f,0.37101f,0.38453f,0.39684f,0.40514f,0.40637f,0.39894f,0.38449f,0.36738f,0.35274f,0.34431f,0.34264f,0.34599f,0.35295f,0.36228f,0.37184f,0.38062f,0.38995f,0.40068f,0.41156f,0.42185f,0.43217f,0.44201f,0.44914f,0.45121f,0.44627f,0.43315f,0.41330f,0.39087f,0.37008f,0.35387f,0.34401f,0.34041f}, {0.33981f,0.34000f,0.34266f,0.34809f,0.35721f,0.36937f,0.38240f,0.39400f,0.40180f,0.40293f,0.39568f,0.38157f,0.36502f,0.35110f,0.34343f,0.34233f,0.34605f,0.35337f,0.36304f,0.37282f,0.38187f,0.39163f,0.40273f,0.41394f,0.42487f,0.43601f,0.44625f,0.45294f,0.45399f,0.44803f,0.43420f,0.41393f,0.39124f,0.37028f,0.35389f,0.34377f,0.33981f},
{0.37313f,0.37420f,0.38001f,0.39014f,0.40446f,0.42181f,0.43988f,0.45594f,0.46693f,0.46961f,0.46214f,0.44621f,0.42680f,0.40959f,0.39817f,0.39301f,0.39304f,0.39763f,0.40583f,0.41537f,0.42477f,0.43480f,0.44612f,0.45788f,0.46954f,0.48141f,0.49294f,0.50198f,0.50563f,0.50085f,0.48580f,0.46223f,0.43524f,0.41014f,0.39049f,0.37812f,0.37313f}, {0.37236f,0.37289f,0.37826f,0.38816f,0.40237f,0.41956f,0.43724f,0.45274f,0.46333f,0.46592f,0.45864f,0.44316f,0.42447f,0.40808f,0.39741f,0.39283f,0.39339f,0.39860f,0.40735f,0.41725f,0.42701f,0.43745f,0.44902f,0.46095f,0.47308f,0.48570f,0.49764f,0.50631f,0.50895f,0.50305f,0.48719f,0.46316f,0.43591f,0.41060f,0.39068f,0.37789f,0.37236f},
{0.42356f,0.42408f,0.43096f,0.44342f,0.46009f,0.47887f,0.49731f,0.51304f,0.52358f,0.52620f,0.51923f,0.50394f,0.48467f,0.46656f,0.45306f,0.44501f,0.44198f,0.44352f,0.44889f,0.45639f,0.46470f,0.47409f,0.48543f,0.49886f,0.51385f,0.52947f,0.54409f,0.55526f,0.56003f,0.55559f,0.54075f,0.51743f,0.49032f,0.46455f,0.44383f,0.43002f,0.42356f}, {0.42245f,0.42215f,0.42846f,0.44064f,0.45724f,0.47601f,0.49435f,0.50993f,0.52038f,0.52304f,0.51631f,0.50148f,0.48288f,0.46550f,0.45264f,0.44515f,0.44269f,0.44488f,0.45083f,0.45875f,0.46742f,0.47714f,0.48867f,0.50225f,0.51759f,0.53373f,0.54863f,0.55948f,0.56339f,0.55795f,0.54232f,0.51859f,0.49131f,0.46537f,0.44426f,0.42977f,0.42245f},
{0.48455f,0.48475f,0.49083f,0.50202f,0.51666f,0.53249f,0.54719f,0.55888f,0.56585f,0.56650f,0.55991f,0.54692f,0.53031f,0.51359f,0.49951f,0.48937f,0.48348f,0.48174f,0.48371f,0.48850f,0.49531f,0.50420f,0.51581f,0.53051f,0.54771f,0.56575f,0.58223f,0.59442f,0.59970f,0.59626f,0.58388f,0.56455f,0.54198f,0.52029f,0.50258f,0.49049f,0.48455f}, {0.48319f,0.48226f,0.48758f,0.49842f,0.51308f,0.52913f,0.54416f,0.55622f,0.56358f,0.56459f,0.55836f,0.54575f,0.52954f,0.51323f,0.49956f,0.48985f,0.48445f,0.48324f,0.48569f,0.49085f,0.49796f,0.50710f,0.51894f,0.53390f,0.55144f,0.56981f,0.58634f,0.59810f,0.60259f,0.59827f,0.58527f,0.56571f,0.54318f,0.52144f,0.50331f,0.49032f,0.48319f},
{0.54041f,0.54034f,0.54396f,0.55064f,0.55927f,0.56837f,0.57642f,0.58216f,0.58460f,0.58302f,0.57718f,0.56756f,0.55545f,0.54258f,0.53062f,0.52078f,0.51381f,0.51011f,0.50972f,0.51240f,0.51793f,0.52626f,0.53755f,0.55170f,0.56796f,0.58472f,0.59979f,0.61087f,0.61607f,0.61448f,0.60648f,0.59374f,0.57883f,0.56443f,0.55261f,0.54449f,0.54041f}, {0.53929f,0.53799f,0.54070f,0.54691f,0.55552f,0.56497f,0.57363f,0.58010f,0.58328f,0.58236f,0.57702f,0.56775f,0.55586f,0.54317f,0.53137f,0.52173f,0.51505f,0.51167f,0.51159f,0.51458f,0.52039f,0.52900f,0.54059f,0.55506f,0.57159f,0.58845f,0.60334f,0.61392f,0.61846f,0.61626f,0.60790f,0.59512f,0.58032f,0.56589f,0.55363f,0.54459f,0.53929f},
{0.57307f,0.57207f,0.57258f,0.57422f,0.57649f,0.57880f,0.58055f,0.58121f,0.58037f,0.57778f,0.57340f,0.56742f,0.56031f,0.55268f,0.54526f,0.53876f,0.53378f,0.53081f,0.53014f,0.53192f,0.53617f,0.54284f,0.55170f,0.56233f,0.57398f,0.58557f,0.59583f,0.60355f,0.60784f,0.60838f,0.60548f,0.60000f,0.59319f,0.58628f,0.58027f,0.57579f,0.57307f}, {0.57278f,0.57090f,0.57068f,0.57187f,0.57403f,0.57656f,0.57878f,0.58007f,0.57991f,0.57795f,0.57409f,0.56849f,0.56162f,0.55414f,0.54681f,0.54040f,0.53554f,0.53271f,0.53223f,0.53423f,0.53873f,0.54564f,0.55475f,0.56559f,0.57735f,0.58891f,0.59900f,0.60643f,0.61040f,0.61066f,0.60758f,0.60203f,0.59514f,0.58801f,0.58156f,0.57637f,0.57278f},
{0.57801f,0.57662f,0.57545f,0.57444f,0.57349f,0.57249f,0.57133f,0.56991f,0.56816f,0.56605f,0.56360f,0.56089f,0.55803f,0.55520f,0.55261f,0.55047f,0.54900f,0.54836f,0.54871f,0.55012f,0.55257f,0.55599f,0.56021f,0.56498f,0.56997f,0.57483f,0.57918f,0.58272f,0.58521f,0.58659f,0.58688f,0.58625f,0.58495f,0.58326f,0.58141f,0.57962f,0.57801f}, {0.57900f,0.57728f,0.57584f,0.57463f,0.57360f,0.57263f,0.57160f,0.57039f,0.56890f,0.56707f,0.56489f,0.56241f,0.55976f,0.55710f,0.55465f,0.55263f,0.55127f,0.55074f,0.55121f,0.55273f,0.55530f,0.55883f,0.56314f,0.56798f,0.57300f,0.57785f,0.58216f,0.58562f,0.58802f,0.58928f,0.58943f,0.58865f,0.58716f,0.58523f,0.58309f,0.58097f,0.57900f},
{0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f,0.56612f} {0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f,0.56830f}
}; };

View File

@ -10,106 +10,106 @@ static struct {
float lat, lon; float lat, lon;
Vector3f field; Vector3f field;
} test_data[] = { } test_data[] = {
{65.815374, -143.062333, {107.860, 35.113, 556.328}}, {-5.347785, -55.396586, {240.284, -79.152, -18.954}},
{4.841310, -64.150382, {266.887, -64.218, 111.937}}, {-49.307646, 128.384946, {116.253, 0.061, -644.547}},
{45.369500, 48.968768, {222.477, 32.849, 462.635}}, {-54.681456, -36.248963, {154.192, -18.211, -234.732}},
{56.434560, -25.336510, {167.362, -35.285, 476.757}}, {-62.435767, -62.106564, {194.290, 43.804, -294.683}},
{66.808874, 79.148521, {82.702, 33.023, 589.400}}, {8.779390, 37.908713, {357.108, 14.172, 14.024}},
{-7.916276, -44.424167, {220.765, -86.936, -83.784}}, {41.538128, -148.450769, {227.080, 53.006, 387.268}},
{64.118293, -0.153519, {134.901, -3.555, 500.255}}, {36.054359, -80.267792, {220.590, -32.594, 440.521}},
{-35.352160, 99.449185, {191.986, -54.353, -541.436}}, {34.199500, 43.418665, {289.166, 26.382, 369.560}},
{-42.283291, -97.597266, {210.008, 85.539, -250.617}}, {-59.875966, -81.614124, {195.629, 84.684, -312.342}},
{83.930834, 5.940172, {47.596, 4.145, 554.006}}, {17.601001, -93.758586, {274.301, 7.775, 274.744}},
{47.012991, 36.119569, {213.213, 29.443, 453.806}}, {-86.268095, 101.445984, {-99.788, -126.515, -534.840}},
{-21.339327, 36.712924, {166.444, -45.453, -261.021}}, {68.089832, 99.531480, {70.104, 3.974, 607.705}},
{-26.958910, 135.309269, {283.842, 26.564, -468.649}}, {-30.787050, 104.800267, {232.740, -28.398, -519.563}},
{76.337075, -77.042161, {30.209, -27.702, 564.548}}, {-45.686919, 23.376860, {111.202, -77.903, -239.402}},
{-68.792368, -26.587185, {184.541, -12.654, -318.117}}, {42.344796, 170.972092, {256.985, 1.579, 361.160}},
{42.204177, -164.412272, {236.899, 39.169, 370.136}}, {11.180749, 126.619946, {392.427, -12.519, 60.590}},
{73.424992, -118.704385, {43.023, 8.787, 575.713}}, {16.085182, 45.400453, {367.527, 13.863, 138.729}},
{65.283281, 2.411133, {129.587, -0.609, 504.668}}, {85.912578, -111.799061, {8.172, -16.213, 568.954}},
{34.510044, 135.655983, {309.899, -40.362, 353.492}}, {61.702909, 71.317152, {115.475, 38.354, 577.707}},
{68.831024, -173.333644, {115.391, 10.915, 556.720}}, {-18.117488, -107.440690, {267.590, 53.018, -104.495}},
{-65.176537, 164.992638, {19.605, 85.294, -639.778}}, {-62.458351, 93.834118, {20.921, -130.137, -583.142}},
{-57.434603, 152.791413, {72.536, 58.406, -647.895}}, {-4.456960, 24.690442, {268.996, 0.281, -181.715}},
{15.880162, 66.262931, {387.182, -2.057, 146.598}}, {-11.938973, 57.584278, {286.506, -51.380, -249.702}},
{67.203361, -177.608822, {128.854, 7.288, 548.788}}, {-17.077653, 68.903062, {276.594, -67.083, -330.818}},
{-30.523857, 29.118199, {113.791, -54.955, -248.678}}, {-0.641855, -85.362927, {273.764, -0.021, 93.528}},
{31.809160, -119.132163, {244.130, 49.844, 376.711}}, {70.208175, -70.794011, {54.788, -33.030, 565.194}},
{-15.663087, -80.002773, {247.203, 5.676, -31.897}}, {65.974445, -37.033989, {110.056, -41.337, 525.313}},
{-58.047622, 52.078363, {101.589, -155.733, -380.717}}, {-12.136829, 86.003211, {342.692, -33.667, -313.206}},
{88.215263, -126.430760, {-3.492, -18.889, 566.858}}, {-85.859369, -148.301355, {-48.300, 152.537, -536.334}},
{-14.693858, 100.649221, {343.282, -9.516, -348.166}}, {-19.307265, 115.056146, {324.659, 3.429, -396.785}},
{37.646886, -40.902135, {250.225, -59.227, 358.666}}, {63.409946, -125.963384, {102.250, 34.962, 561.223}},
{-73.309744, 171.966445, {-32.052, 91.220, -623.196}}, {10.445067, 60.380511, {384.749, -5.779, 62.938}},
{66.381521, 93.066045, {81.832, 15.501, 601.880}}, {-54.102628, 134.827917, {84.120, 9.249, -655.864}},
{-51.800132, -48.161067, {166.155, -10.418, -218.457}}, {-37.512392, -13.418317, {98.314, -39.221, -216.540}},
{-1.470683, -101.101444, {289.312, 35.209, 67.787}}, {72.345349, 113.696131, {53.912, -7.336, 602.335}},
{30.018412, -128.584173, {250.048, 54.126, 338.710}}, {55.212086, -11.672616, {179.144, -14.309, 464.924}},
{60.430386, -85.104119, {90.333, -20.598, 572.518}}, {-69.962700, -143.828634, {72.069, 139.770, -551.999}},
{65.859137, -119.499590, {78.769, 25.428, 573.031}}, {87.579976, -163.341588, {-9.629, -20.622, 569.787}},
{49.072308, -47.606189, {188.603, -58.266, 465.766}}, {73.111174, 143.018689, {72.564, -23.169, 586.064}},
{77.503573, -60.423956, {38.556, -33.783, 556.409}}, {23.697573, -29.994152, {309.137, -54.381, 178.330}},
{82.714485, 128.717387, {19.657, 10.220, 580.422}}, {8.771240, -117.029349, {293.100, 40.791, 152.298}},
{38.801986, 91.587255, {282.915, 4.742, 471.180}}, {-17.705434, 2.904797, {141.603, -31.071, -250.994}},
{-31.287123, -94.113422, {226.905, 60.645, -171.111}}, {36.273922, 68.280726, {289.178, 20.771, 423.563}},
{25.047470, 65.541191, {352.871, 8.642, 282.449}}, {-23.761563, 163.511301, {300.464, 67.082, -379.323}},
{14.206388, 26.081254, {358.987, 18.786, 66.843}}, {79.029797, 176.355901, {47.596, -4.724, 577.193}},
{-29.299607, -166.418773, {271.109, 83.632, -352.255}}, {-52.405560, 22.440300, {122.338, -88.770, -252.169}},
{26.591442, -73.547420, {251.844, -46.851, 346.171}}, {72.485297, -46.002536, {70.887, -38.208, 546.530}},
{88.640245, 169.476288, {-18.244, 11.586, 567.557}}, {-22.183293, -159.478002, {295.811, 77.374, -257.498}},
{33.894442, 72.675222, {307.721, 15.765, 398.253}}, {-24.950420, 35.883896, {150.668, -57.547, -261.731}},
{-88.031320, 74.684074, {-37.224, -164.448, -519.832}}, {34.311721, -178.681293, {263.416, 26.642, 291.758}},
{79.537032, 32.735513, {58.741, 24.554, 552.941}}, {-61.490634, 130.934200, {30.474, -18.155, -665.682}},
{45.437015, 80.470038, {231.120, 22.130, 515.505}}, {2.793989, -178.226296, {331.384, 56.367, 5.643}},
{49.325371, -172.704252, {224.668, 24.546, 424.141}}, {51.905236, 130.494014, {204.801, -48.610, 530.005}},
{14.903743, -64.771466, {269.743, -64.464, 209.310}}, {-25.962740, -60.589052, {188.450, -40.089, -113.336}},
{17.835966, 174.249220, {303.993, 38.460, 147.669}}, {64.153460, 76.711770, {98.437, 34.425, 588.123}},
{7.298126, 118.399877, {406.420, -6.502, 8.517}}, {85.273389, 80.411045, {8.157, 23.324, 574.387}},
{-63.751920, 68.614309, {61.074, -168.670, -474.255}}, {72.227644, -175.679117, {94.668, 2.434, 565.494}},
{-38.960700, 10.784171, {92.427, -43.852, -222.347}}, {-15.800057, -88.398789, {255.341, 26.361, -44.696}},
{53.775617, 81.590013, {168.976, 26.522, 565.427}}, {-32.252553, 140.907109, {249.932, 37.054, -516.256}},
{43.838294, -155.062495, {226.785, 48.323, 397.111}}, {0.990803, 19.645312, {302.237, 6.632, -135.887}},
{44.222391, 169.462356, {252.609, -1.206, 379.944}}, {13.221787, -167.051664, {297.419, 47.578, 134.337}},
{17.959121, 54.928441, {369.427, 6.915, 175.187}}, {-55.704793, -147.770348, {153.269, 119.486, -498.314}},
{76.044596, -122.732672, {35.189, 6.653, 573.863}}, {-21.527164, 98.030817, {291.813, -24.330, -432.389}},
{52.971416, -26.099079, {185.527, -36.203, 458.872}}, {-29.459735, -169.175151, {269.771, 84.511, -361.577}},
{-74.070371, -138.645368, {53.523, 150.678, -546.192}}, {-77.026676, -128.521814, {57.096, 156.826, -529.076}},
{-81.736068, -31.431979, {189.895, 4.156, -439.712}}, {59.744040, 154.466555, {174.852, -31.321, 530.246}},
{10.192549, -127.948140, {292.468, 45.734, 152.605}}, {-8.667233, -84.596843, {263.264, 6.250, 19.318}},
{-47.221957, 78.382924, {103.034, -130.997, -499.588}}, {-44.970992, -90.210588, {203.908, 78.088, -237.970}},
{51.576442, -154.944501, {201.013, 45.570, 460.479}}, {-81.281504, 53.655592, {53.564, -172.598, -484.541}},
{-63.852951, 35.163443, {127.325, -135.698, -341.812}}, {-28.899249, -168.937713, {272.725, 84.310, -354.906}},
{28.300507, -163.781419, {260.632, 42.939, 261.746}}, {-5.495801, -115.945089, {294.242, 45.813, 2.378}},
{0.595936, 141.700759, {374.127, 18.689, -98.455}}, {-56.855722, -27.312216, {150.561, -22.699, -243.436}},
{-64.367741, 95.249244, {11.465, -130.514, -585.559}}, {-5.160334, -104.515570, {287.811, 39.169, 23.270}},
{-69.280536, -143.001117, {77.504, 139.710, -549.996}}, {-4.765155, 27.513017, {270.761, 0.084, -179.570}},
{48.335410, 70.288703, {206.898, 31.805, 519.597}}, {38.850519, -83.245266, {208.706, -24.590, 466.759}},
{18.370932, -0.992613, {343.193, -6.545, 96.215}}, {82.903976, -111.774971, {15.131, -10.610, 569.636}},
{-33.668004, 31.933840, {115.929, -68.241, -254.100}}, {65.049275, 72.501496, {95.332, 38.164, 582.824}},
{-66.283464, 136.355865, {35.080, 29.372, -658.843}}, {62.904242, 91.633672, {102.309, 14.476, 603.680}},
{87.188467, 80.272993, {6.995, 22.295, 569.340}}, {-26.703878, 172.749541, {285.797, 77.084, -385.509}},
{-37.843441, -37.567972, {133.282, -46.568, -190.835}}, {-33.226726, 75.903795, {173.490, -100.050, -456.333}},
{69.911723, 4.695994, {108.423, 1.595, 519.605}}, {24.643218, -30.321324, {307.312, -53.948, 191.067}},
{8.137470, 11.523994, {335.731, 0.997, -49.510}}, {16.206490, 22.434794, {358.048, 19.103, 94.086}},
{49.732747, 90.330000, {198.706, 11.573, 559.178}}, {46.445304, -34.626939, {217.483, -45.670, 423.301}},
{-29.391961, -88.979254, {225.191, 49.068, -144.567}}, {19.266180, 125.974692, {377.297, -24.128, 183.176}},
{35.156541, 43.801954, {283.633, 25.974, 375.362}}, {-24.732609, -162.086198, {289.118, 80.970, -291.171}},
{49.352233, -56.328211, {177.143, -59.472, 486.532}}, {10.102379, -89.724793, {278.231, 3.333, 201.223}},
{68.219860, 29.192947, {109.116, 27.847, 527.438}}, {44.251765, 81.116331, {239.108, 19.539, 512.551}},
{-16.720512, 171.687827, {328.473, 68.966, -270.540}}, {-72.418531, -130.000797, {82.558, 150.448, -523.607}},
{-65.879394, 156.212441, {-0.674, 68.128, -650.680}}, {12.703973, 18.436378, {353.684, 14.320, 30.949}},
{59.992056, 167.198631, {178.767, -11.904, 516.533}}, {29.149731, -105.686368, {248.213, 29.644, 376.837}},
{15.571870, -163.519672, {290.435, 46.049, 160.239}}, {-17.956078, -35.751483, {164.178, -72.043, -167.376}},
{-4.927750, 48.044786, {309.256, -21.794, -163.621}}, {-38.321171, -141.763622, {232.842, 93.184, -359.596}},
{8.440285, -48.490401, {273.723, -89.165, 76.441}}, {21.175405, 50.561510, {355.480, 13.624, 223.431}},
{31.432914, 128.102195, {327.297, -38.624, 341.520}}, {54.947454, -169.310847, {199.460, 23.943, 468.886}},
{-76.539795, 114.525530, {-79.373, -91.953, -597.405}}, {-23.361657, 44.446547, {177.462, -68.674, -281.151}},
{37.595668, 10.343255, {273.196, 12.709, 353.344}}, {-24.280380, 19.644762, {122.126, -31.739, -246.213}},
{7.995321, 66.515830, {392.070, -12.382, 18.917}}, {-63.110180, -122.152350, {143.859, 136.021, -464.339}},
{14.426346, -7.141914, {336.552, -21.023, 32.344}}, {4.519890, 40.756994, {348.158, 6.163, -44.400}},
{-25.434922, -161.299687, {286.912, 80.742, -297.084}}, {-61.062289, 59.265124, {84.041, -166.618, -424.664}},
{67.878431, 32.272372, {109.027, 30.505, 529.484}}}; {-42.770992, -60.512815, {174.635, -6.856, -175.937}}};
TEST(MagField, test_field_error) TEST(MagField, test_field_error)