20#include <ns3/geographic-positions.h> 
   33    6371000,           1968747.27116279,  -5154247.27116279, -5154247.27116279, 1968747.27116279,
 
   34    6371000,           1968747.27116279,  608376.364418605,  -1592750,          -1592750.00000000,
 
   35    608376.364418605,  1968747.27116279,  -5154247.27116279, -1592750,          4169873.63558139,
 
   36    4169873.63558139,  -1592750.00000000, -5154247.27116279, -5154247.27116279, -1592750.00000000,
 
   37    4169873.63558139,  4169873.63558140,  -1592750.00000000, -5154247.27116279, 1968747.27116279,
 
   38    608376.364418605,  -1592750.00000000, -1592750.00000000, 608376.364418604,  1968747.27116279,
 
   39    6371000,           1968747.27116279,  -5154247.27116279, -5154247.27116279, 1968747.27116279,
 
   40    6371000,           6371200,           1968809.07456167,  -5154409.07456167, -5154409.07456167,
 
   41    1968809.07456166,  6371200,           1968809.07456167,  608395.462719168,  -1592800,
 
   42    -1592800.00000000, 608395.462719167,  1968809.07456167,  -5154409.07456167, -1592800,
 
   43    4170004.53728083,  4170004.53728083,  -1592800.00000000, -5154409.07456167, -5154409.07456167,
 
   44    -1592800,          4170004.53728083,  4170004.53728083,  -1592800.00000000, -5154409.07456167,
 
   45    1968809.07456166,  608395.462719167,  -1592800.00000000, -1592800.00000000, 608395.462719167,
 
   46    1968809.07456166,  6371200,           1968809.07456167,  -5154409.07456167, -5154409.07456167,
 
   47    1968809.07456166,  6371200,           6371400,           1968870.87796054,  -5154570.87796054,
 
   48    -5154570.87796054, 1968870.87796054,  6371400,           1968870.87796054,  608414.561019730,
 
   49    -1592850,          -1592850.00000000, 608414.561019730,  1968870.87796054,  -5154570.87796054,
 
   50    -1592850,          4170135.43898027,  4170135.43898027,  -1592850.00000000, -5154570.87796054,
 
   51    -5154570.87796054, -1592850.00000000, 4170135.43898027,  4170135.43898027,  -1592850.00000000,
 
   52    -5154570.87796054, 1968870.87796054,  608414.561019730,  -1592850.00000000, -1592850.00000000,
 
   53    608414.561019729,  1968870.87796054,  6371400,           1968870.87796054,  -5154570.87796054,
 
   54    -5154570.87796054, 1968870.87796054,  6371400,           6371600,           1968932.68135942,
 
   55    -5154732.68135941, -5154732.68135942, 1968932.68135941,  6371600,           1968932.68135942,
 
   56    608433.659320293,  -1592900,          -1592900.00000000, 608433.659320292,  1968932.68135942,
 
   57    -5154732.68135941, -1592900.00000000, 4170266.34067971,  4170266.34067971,  -1592900.00000000,
 
   58    -5154732.68135941, -5154732.68135942, -1592900.00000000, 4170266.34067971,  4170266.34067971,
 
   59    -1592900.00000000, -5154732.68135942, 1968932.68135941,  608433.659320292,  -1592900.00000000,
 
   60    -1592900.00000000, 608433.659320292,  1968932.68135941,  6371600,           1968932.68135942,
 
   61    -5154732.68135941, -5154732.68135942, 1968932.68135941,  6371600,           6371800,
 
   62    1968994.48475829,  -5154894.48475829, -5154894.48475829, 1968994.48475829,  6371800,
 
   63    1968994.48475829,  608452.757620855,  -1592950,          -1592950.00000000, 608452.757620855,
 
   64    1968994.48475829,  -5154894.48475829, -1592950,          4170397.24237914,  4170397.24237914,
 
   65    -1592950.00000000, -5154894.48475829, -5154894.48475829, -1592950.00000000, 4170397.24237914,
 
   66    4170397.24237915,  -1592950.00000000, -5154894.48475829, 1968994.48475829,  608452.757620855,
 
   67    -1592950.00000000, -1592950.00000000, 608452.757620854,  1968994.48475829,  6371800,
 
   68    1968994.48475829,  -5154894.48475829, -5154894.48475829, 1968994.48475829,  6371800,
 
   69    6372000,           1969056.28815717,  -5155056.28815716, -5155056.28815717, 1969056.28815716,
 
   70    6372000,           1969056.28815717,  608471.855921418,  -1593000,          -1593000,
 
   71    608471.855921417,  1969056.28815717,  -5155056.28815716, -1593000.00000000, 4170528.14407858,
 
   72    4170528.14407858,  -1593000.00000000, -5155056.28815716, -5155056.28815717, -1593000.00000000,
 
   73    4170528.14407858,  4170528.14407858,  -1593000.00000000, -5155056.28815717, 1969056.28815716,
 
   74    608471.855921417,  -1593000.00000000, -1593000.00000000, 608471.855921417,  1969056.28815716,
 
   75    6372000,           1969056.28815717,  -5155056.28815716, -5155056.28815717, 1969056.28815716,
 
   85    -1.56044495147356e-09,
 
   91    -4.82204008791920e-10,
 
  103    1.26242648452870e-09,
 
  109    -4.82204008791919e-10,
 
  115    -1.56044495147356e-09,
 
  121    -1.56049393734552e-09,
 
  127    -4.82219146258841e-10,
 
  133    1.26246611493160e-09,
 
  139    1.26246611493160e-09,
 
  145    -4.82219146258841e-10,
 
  151    -1.56049393734552e-09,
 
  157    -1.56054292321749e-09,
 
  163    -4.82234283725763e-10,
 
  169    1.26250574533451e-09,
 
  175    1.26250574533451e-09,
 
  181    -4.82234283725763e-10,
 
  187    -1.56054292321749e-09,
 
  193    -1.56059190908946e-09,
 
  199    -4.82249421192685e-10,
 
  205    1.26254537573741e-09,
 
  211    1.26254537573741e-09,
 
  217    -4.82249421192684e-10,
 
  223    -1.56059190908946e-09,
 
  229    -1.56064089496142e-09,
 
  235    -4.82264558659606e-10,
 
  241    1.26258500614032e-09,
 
  247    1.26258500614032e-09,
 
  253    -4.82264558659606e-10,
 
  259    -1.56064089496142e-09,
 
  265    -1.56068988083339e-09,
 
  271    -4.82279696126528e-10,
 
  277    1.26262463654322e-09,
 
  283    1.26262463654322e-09,
 
  289    -4.82279696126528e-10,
 
  295    -1.56068988083339e-09,
 
  329    -1.56044495147356e-09,
 
  330    -1.56044495147356e-09,
 
  331    -1.56044495147356e-09,
 
  332    -1.56044495147356e-09,
 
  333    -1.56044495147356e-09,
 
  334    -1.56044495147356e-09,
 
  365    -1.56049393734552e-09,
 
  366    -1.56049393734552e-09,
 
  367    -1.56049393734552e-09,
 
  368    -1.56049393734552e-09,
 
  369    -1.56049393734552e-09,
 
  370    -1.56049393734552e-09,
 
  401    -1.56054292321749e-09,
 
  402    -1.56054292321749e-09,
 
  403    -1.56054292321749e-09,
 
  404    -1.56054292321749e-09,
 
  405    -1.56054292321749e-09,
 
  406    -1.56054292321749e-09,
 
  437    -1.56059190908946e-09,
 
  438    -1.56059190908946e-09,
 
  439    -1.56059190908946e-09,
 
  440    -1.56059190908946e-09,
 
  441    -1.56059190908946e-09,
 
  442    -1.56059190908946e-09,
 
  473    -1.56064089496142e-09,
 
  474    -1.56064089496142e-09,
 
  475    -1.56064089496142e-09,
 
  476    -1.56064089496142e-09,
 
  477    -1.56064089496142e-09,
 
  478    -1.56064089496142e-09,
 
  509    -1.56068988083339e-09,
 
  510    -1.56068988083339e-09,
 
  511    -1.56068988083339e-09,
 
  512    -1.56068988083339e-09,
 
  513    -1.56068988083339e-09,
 
  514    -1.56068988083339e-09,
 
  518    6378137,           1970952.72545164,  -5160021.22545164, -5160021.22545164, 1970952.72545164,
 
  519    6378137,           1976947.14312992,  610910.264208145,  -1599383.83577310, -1599383.83577310,
 
  520    610910.264208145,  1976947.14312992,  -5165998.77753988, -1596381.41518003, 4179380.80394997,
 
  521    4179380.80394997,  -1596381.41518003, -5165998.77753988, -5165998.77753988, -1596381.41518003,
 
  522    4179380.80394997,  4179380.80394997,  -1596381.41518003, -5165998.77753988, 1976947.14312991,
 
  523    610910.264208145,  -1599383.83577310, -1599383.83577310, 610910.264208145,  1976947.14312991,
 
  524    6378137,           1970952.72545164,  -5160021.22545164, -5160021.22545164, 1970952.72545164,
 
  525    6378137,           6378337,           1971014.52885052,  -5160183.02885052, -5160183.02885052,
 
  526    1971014.52885052,  6378337,           1977008.94652879,  610929.362508708,  -1599433.83577310,
 
  527    -1599433.83577310, 610929.362508708,  1977008.94652879,  -5166160.58093876, -1596431.41518003,
 
  528    4179511.70564940,  4179511.70564940,  -1596431.41518003, -5166160.58093876, -5166160.58093876,
 
  529    -1596431.41518003, 4179511.70564940,  4179511.70564940,  -1596431.41518003, -5166160.58093876,
 
  530    1977008.94652879,  610929.362508708,  -1599433.83577310, -1599433.83577310, 610929.362508707,
 
  531    1977008.94652879,  6378337,           1971014.52885052,  -5160183.02885052, -5160183.02885052,
 
  532    1971014.52885052,  6378337,           6378537,           1971076.33224939,  -5160344.83224939,
 
  533    -5160344.83224940, 1971076.33224939,  6378537,           1977070.74992767,  610948.460809271,
 
  534    -1599483.83577310, -1599483.83577310, 610948.460809270,  1977070.74992767,  -5166322.38433763,
 
  535    -1596481.41518003, 4179642.60734884,  4179642.60734884,  -1596481.41518003, -5166322.38433763,
 
  536    -5166322.38433763, -1596481.41518003, 4179642.60734884,  4179642.60734884,  -1596481.41518003,
 
  537    -5166322.38433763, 1977070.74992766,  610948.460809270,  -1599483.83577310, -1599483.83577310,
 
  538    610948.460809270,  1977070.74992766,  6378537,           1971076.33224939,  -5160344.83224939,
 
  539    -5160344.83224940, 1971076.33224939,  6378537,           6378737,           1971138.13564827,
 
  540    -5160506.63564827, -5160506.63564827, 1971138.13564827,  6378737,           1977132.55332654,
 
  541    610967.559109833,  -1599533.83577310, -1599533.83577310, 610967.559109833,  1977132.55332654,
 
  542    -5166484.18773651, -1596531.41518003, 4179773.50904828,  4179773.50904828,  -1596531.41518003,
 
  543    -5166484.18773651, -5166484.18773651, -1596531.41518003, 4179773.50904828,  4179773.50904828,
 
  544    -1596531.41518003, -5166484.18773651, 1977132.55332654,  610967.559109833,  -1599533.83577310,
 
  545    -1599533.83577310, 610967.559109832,  1977132.55332654,  6378737,           1971138.13564827,
 
  546    -5160506.63564827, -5160506.63564827, 1971138.13564827,  6378737,           6378937,
 
  547    1971199.93904714,  -5160668.43904714, -5160668.43904714, 1971199.93904714,  6378937,
 
  548    1977194.35672542,  610986.657410395,  -1599583.83577310, -1599583.83577310, 610986.657410395,
 
  549    1977194.35672542,  -5166645.99113538, -1596581.41518003, 4179904.41074772,  4179904.41074772,
 
  550    -1596581.41518003, -5166645.99113538, -5166645.99113538, -1596581.41518003, 4179904.41074772,
 
  551    4179904.41074772,  -1596581.41518003, -5166645.99113538, 1977194.35672541,  610986.657410395,
 
  552    -1599583.83577310, -1599583.83577310, 610986.657410395,  1977194.35672541,  6378937,
 
  553    1971199.93904714,  -5160668.43904714, -5160668.43904714, 1971199.93904714,  6378937,
 
  554    6379137,           1971261.74244602,  -5160830.24244602, -5160830.24244602, 1971261.74244602,
 
  555    6379137,           1977256.16012429,  611005.755710958,  -1599633.83577310, -1599633.83577310,
 
  556    611005.755710958,  1977256.16012429,  -5166807.79453425, -1596631.41518003, 4180035.31244715,
 
  557    4180035.31244715,  -1596631.41518003, -5166807.79453425, -5166807.79453426, -1596631.41518003,
 
  558    4180035.31244715,  4180035.31244715,  -1596631.41518003, -5166807.79453426, 1977256.16012429,
 
  559    611005.755710958,  -1599633.83577310, -1599633.83577310, 611005.755710957,  1977256.16012429,
 
  560    6379137,           1971261.74244602,  -5160830.24244602, -5160830.24244602, 1971261.74244602,
 
  570    -1.56219301231466e-09,
 
  576    -4.84212398183511e-10,
 
  582    1.26530477346267e-09,
 
  588    1.26530477346267e-09,
 
  594    -4.84212398183511e-10,
 
  600    -1.56219301231466e-09,
 
  606    -1.56224199818663e-09,
 
  612    -4.84227535650433e-10,
 
  618    1.26534440386558e-09,
 
  624    1.26534440386558e-09,
 
  630    -4.84227535650433e-10,
 
  636    -1.56224199818663e-09,
 
  642    -1.56229098405859e-09,
 
  648    -4.84242673117355e-10,
 
  654    1.26538403426848e-09,
 
  660    1.26538403426848e-09,
 
  666    -4.84242673117354e-10,
 
  672    -1.56229098405859e-09,
 
  678    -1.56233996993056e-09,
 
  684    -4.84257810584276e-10,
 
  690    1.26542366467138e-09,
 
  696    1.26542366467138e-09,
 
  702    -4.84257810584276e-10,
 
  708    -1.56233996993056e-09,
 
  714    -1.56238895580252e-09,
 
  720    -4.84272948051198e-10,
 
  726    1.26546329507429e-09,
 
  732    1.26546329507429e-09,
 
  738    -4.84272948051198e-10,
 
  744    -1.56238895580252e-09,
 
  750    -1.56243794167449e-09,
 
  756    -4.84288085518120e-10,
 
  762    1.26550292547719e-09,
 
  768    1.26550292547719e-09,
 
  774    -4.84288085518119e-10,
 
  780    -1.56243794167449e-09,
 
  814    -1.55173509862111e-09,
 
  815    -1.55173509862111e-09,
 
  816    -1.55173509862111e-09,
 
  817    -1.55173509862111e-09,
 
  818    -1.55173509862111e-09,
 
  819    -1.55173509862111e-09,
 
  850    -1.55178408449307e-09,
 
  851    -1.55178408449307e-09,
 
  852    -1.55178408449307e-09,
 
  853    -1.55178408449307e-09,
 
  854    -1.55178408449307e-09,
 
  855    -1.55178408449307e-09,
 
  886    -1.55183307036504e-09,
 
  887    -1.55183307036504e-09,
 
  888    -1.55183307036504e-09,
 
  889    -1.55183307036504e-09,
 
  890    -1.55183307036504e-09,
 
  891    -1.55183307036504e-09,
 
  922    -1.55188205623700e-09,
 
  923    -1.55188205623700e-09,
 
  924    -1.55188205623700e-09,
 
  925    -1.55188205623700e-09,
 
  926    -1.55188205623700e-09,
 
  927    -1.55188205623700e-09,
 
  958    -1.55193104210897e-09,
 
  959    -1.55193104210897e-09,
 
  960    -1.55193104210897e-09,
 
  961    -1.55193104210897e-09,
 
  962    -1.55193104210897e-09,
 
  963    -1.55193104210897e-09,
 
  994    -1.55198002798094e-09,
 
  995    -1.55198002798094e-09,
 
  996    -1.55198002798094e-09,
 
  997    -1.55198002798094e-09,
 
  998    -1.55198002798094e-09,
 
  999    -1.55198002798094e-09,
 
 1003    6378137,           1970952.72545164,  -5160021.22545164, -5160021.22545164, 1970952.72545164,
 
 1004    6378137,           1976947.14310045,  610910.264199039,  -1599383.83574926, -1599383.83574926,
 
 1005    610910.264199039,  1976947.14310045,  -5165998.77751058, -1596381.41517097, 4179380.80392626,
 
 1006    4179380.80392626,  -1596381.41517097, -5165998.77751058, -5165998.77751058, -1596381.41517097,
 
 1007    4179380.80392626,  4179380.80392626,  -1596381.41517097, -5165998.77751058, 1976947.14310045,
 
 1008    610910.264199039,  -1599383.83574926, -1599383.83574926, 610910.264199039,  1976947.14310045,
 
 1009    6378137,           1970952.72545164,  -5160021.22545164, -5160021.22545164, 1970952.72545164,
 
 1010    6378137,           6378337,           1971014.52885052,  -5160183.02885052, -5160183.02885052,
 
 1011    1971014.52885052,  6378337,           1977008.94649932,  610929.362499602,  -1599433.83574926,
 
 1012    -1599433.83574926, 610929.362499601,  1977008.94649932,  -5166160.58090945, -1596431.41517097,
 
 1013    4179511.70562570,  4179511.70562570,  -1596431.41517097, -5166160.58090945, -5166160.58090945,
 
 1014    -1596431.41517097, 4179511.70562570,  4179511.70562570,  -1596431.41517097, -5166160.58090945,
 
 1015    1977008.94649932,  610929.362499601,  -1599433.83574926, -1599433.83574926, 610929.362499601,
 
 1016    1977008.94649932,  6378337,           1971014.52885052,  -5160183.02885052, -5160183.02885052,
 
 1017    1971014.52885052,  6378337,           6378537,           1971076.33224939,  -5160344.83224939,
 
 1018    -5160344.83224940, 1971076.33224939,  6378537,           1977070.74989820,  610948.460800164,
 
 1019    -1599483.83574926, -1599483.83574926, 610948.460800164,  1977070.74989820,  -5166322.38430833,
 
 1020    -1596481.41517097, 4179642.60732513,  4179642.60732514,  -1596481.41517097, -5166322.38430833,
 
 1021    -5166322.38430833, -1596481.41517097, 4179642.60732514,  4179642.60732514,  -1596481.41517097,
 
 1022    -5166322.38430833, 1977070.74989820,  610948.460800164,  -1599483.83574926, -1599483.83574926,
 
 1023    610948.460800163,  1977070.74989820,  6378537,           1971076.33224939,  -5160344.83224939,
 
 1024    -5160344.83224940, 1971076.33224939,  6378537,           6378737,           1971138.13564827,
 
 1025    -5160506.63564827, -5160506.63564827, 1971138.13564827,  6378737,           1977132.55329707,
 
 1026    610967.559100727,  -1599533.83574926, -1599533.83574926, 610967.559100726,  1977132.55329707,
 
 1027    -5166484.18770720, -1596531.41517097, 4179773.50902457,  4179773.50902457,  -1596531.41517097,
 
 1028    -5166484.18770720, -5166484.18770720, -1596531.41517097, 4179773.50902457,  4179773.50902457,
 
 1029    -1596531.41517097, -5166484.18770720, 1977132.55329707,  610967.559100726,  -1599533.83574926,
 
 1030    -1599533.83574926, 610967.559100726,  1977132.55329707,  6378737,           1971138.13564827,
 
 1031    -5160506.63564827, -5160506.63564827, 1971138.13564827,  6378737,           6378937,
 
 1032    1971199.93904714,  -5160668.43904714, -5160668.43904714, 1971199.93904714,  6378937,
 
 1033    1977194.35669595,  610986.657401289,  -1599583.83574926, -1599583.83574926, 610986.657401289,
 
 1034    1977194.35669595,  -5166645.99110608, -1596581.41517097, 4179904.41072401,  4179904.41072401,
 
 1035    -1596581.41517097, -5166645.99110608, -5166645.99110608, -1596581.41517097, 4179904.41072401,
 
 1036    4179904.41072401,  -1596581.41517097, -5166645.99110608, 1977194.35669595,  610986.657401289,
 
 1037    -1599583.83574926, -1599583.83574926, 610986.657401288,  1977194.35669595,  6378937,
 
 1038    1971199.93904714,  -5160668.43904714, -5160668.43904714, 1971199.93904714,  6378937,
 
 1039    6379137,           1971261.74244602,  -5160830.24244602, -5160830.24244602, 1971261.74244602,
 
 1040    6379137,           1977256.16009482,  611005.755701852,  -1599633.83574926, -1599633.83574926,
 
 1041    611005.755701851,  1977256.16009482,  -5166807.79450495, -1596631.41517097, 4180035.31242345,
 
 1042    4180035.31242345,  -1596631.41517097, -5166807.79450495, -5166807.79450495, -1596631.41517097,
 
 1043    4180035.31242345,  4180035.31242345,  -1596631.41517097, -5166807.79450495, 1977256.16009482,
 
 1044    611005.755701851,  -1599633.83574926, -1599633.83574926, 611005.755701851,  1977256.16009482,
 
 1045    6379137,           1971261.74244602,  -5160830.24244602, -5160830.24244602, 1971261.74244602,
 
 1055    -1.56219301231466e-09,
 
 1061    -4.84212398176294e-10,
 
 1067    1.26530477345549e-09,
 
 1073    1.26530477345549e-09,
 
 1079    -4.84212398176293e-10,
 
 1085    -1.56219301231466e-09,
 
 1091    -1.56224199818663e-09,
 
 1097    -4.84227535643215e-10,
 
 1103    1.26534440385840e-09,
 
 1109    1.26534440385840e-09,
 
 1115    -4.84227535643215e-10,
 
 1121    -1.56224199818663e-09,
 
 1127    -1.56229098405859e-09,
 
 1133    -4.84242673110137e-10,
 
 1139    1.26538403426130e-09,
 
 1145    1.26538403426130e-09,
 
 1151    -4.84242673110137e-10,
 
 1157    -1.56229098405859e-09,
 
 1163    -1.56233996993056e-09,
 
 1169    -4.84257810577059e-10,
 
 1175    1.26542366466421e-09,
 
 1181    1.26542366466421e-09,
 
 1187    -4.84257810577058e-10,
 
 1193    -1.56233996993056e-09,
 
 1199    -1.56238895580252e-09,
 
 1205    -4.84272948043980e-10,
 
 1211    1.26546329506711e-09,
 
 1217    1.26546329506711e-09,
 
 1223    -4.84272948043980e-10,
 
 1229    -1.56238895580252e-09,
 
 1235    -1.56243794167449e-09,
 
 1241    -4.84288085510902e-10,
 
 1247    1.26550292547002e-09,
 
 1253    1.26550292547002e-09,
 
 1259    -4.84288085510902e-10,
 
 1265    -1.56243794167449e-09,
 
 1299    -1.55173509867228e-09,
 
 1300    -1.55173509867228e-09,
 
 1301    -1.55173509867228e-09,
 
 1302    -1.55173509867228e-09,
 
 1303    -1.55173509867228e-09,
 
 1304    -1.55173509867228e-09,
 
 1335    -1.55178408454425e-09,
 
 1336    -1.55178408454425e-09,
 
 1337    -1.55178408454425e-09,
 
 1338    -1.55178408454425e-09,
 
 1339    -1.55178408454425e-09,
 
 1340    -1.55178408454425e-09,
 
 1371    -1.55183307041621e-09,
 
 1372    -1.55183307041621e-09,
 
 1373    -1.55183307041621e-09,
 
 1374    -1.55183307041621e-09,
 
 1375    -1.55183307041621e-09,
 
 1376    -1.55183307041621e-09,
 
 1407    -1.55188205628818e-09,
 
 1408    -1.55188205628818e-09,
 
 1409    -1.55188205628818e-09,
 
 1410    -1.55188205628818e-09,
 
 1411    -1.55188205628818e-09,
 
 1412    -1.55188205628818e-09,
 
 1443    -1.55193104216015e-09,
 
 1444    -1.55193104216015e-09,
 
 1445    -1.55193104216015e-09,
 
 1446    -1.55193104216015e-09,
 
 1447    -1.55193104216015e-09,
 
 1448    -1.55193104216015e-09,
 
 1479    -1.55198002803211e-09,
 
 1480    -1.55198002803211e-09,
 
 1481    -1.55198002803211e-09,
 
 1482    -1.55198002803211e-09,
 
 1483    -1.55198002803211e-09,
 
 1484    -1.55198002803211e-09,
 
 1529    void DoRun() 
override;
 
 1539    static std::string 
Name(
double latitude,
 
 1556    std::ostringstream oss;
 
 1557    oss << 
"Geo->Cart: " 
 1558        << 
"LAT-LON-ALT-SPHEROID = " << latitude << 
" deg - " << longitude << 
" deg - " << altitude
 
 1562    case GeographicPositions::SPHERE:
 
 1565    case GeographicPositions::GRS80:
 
 1568    case GeographicPositions::WGS84:
 
 1581    : 
TestCase(
Name(latitude, longitude, altitude, sphType)),
 
 1582      m_latitude(latitude),
 
 1583      m_longitude(longitude),
 
 1584      m_altitude(altitude),
 
 1597    Vector cart = GeographicPositions::GeographicToCartesianCoordinates(
m_latitude,
 
 1601    if (
m_sphType == GeographicPositions::SPHERE)
 
 1606                                  "x coordinate (" << cart.x
 
 1607                                                   << 
") is incorrect " 
 1608                                                      "for perfect sphere model in iteration " 
 1613                                  "y coordinate (" << cart.y
 
 1614                                                   << 
") is incorrect " 
 1615                                                      "for perfect sphere model in iteration " 
 1620                                  "z coordinate (" << cart.z
 
 1621                                                   << 
") is incorrect " 
 1622                                                      "for perfect sphere model in iteration " 
 1625    else if (
m_sphType == GeographicPositions::GRS80)
 
 1630                                  "x coordinate (" << cart.x
 
 1631                                                   << 
") is incorrect " 
 1632                                                      "for GRS80 model in iteration " 
 1637                                  "y coordinate (" << cart.y
 
 1638                                                   << 
") is incorrect " 
 1639                                                      "for GRS80 model in iteration " 
 1644                                  "z coordinate (" << cart.z
 
 1645                                                   << 
") is incorrect " 
 1646                                                      "for GRS80 model in iteration " 
 1654                                  "x coordinate (" << cart.x
 
 1655                                                   << 
") is incorrect " 
 1656                                                      "for WGS84 model in iteration " 
 1661                                  "y coordinate (" << cart.y
 
 1662                                                   << 
") is incorrect " 
 1663                                                      "for WGS84 model in iteration " 
 1668                                  "z coordinate (" << cart.z
 
 1669                                                   << 
") is incorrect " 
 1670                                                      "for WGS84 model in iteration " 
 1707    void DoRun() 
override;
 
 1717    static std::string 
Name(
double latitude,
 
 1733    std::ostringstream oss;
 
 1734    oss << 
"Cart->Geo: " 
 1735        << 
"LAT-LON-ALT-SPHEROID = " << latitude << 
" deg - " << longitude << 
" deg - " << altitude
 
 1739    case GeographicPositions::SPHERE:
 
 1742    case GeographicPositions::GRS80:
 
 1745    case GeographicPositions::WGS84:
 
 1758    : 
TestCase(
Name(latitude, longitude, altitude, sphType)),
 
 1759      m_latitude(latitude),
 
 1760      m_longitude(longitude),
 
 1761      m_altitude(altitude),
 
 1773    Vector cart = GeographicPositions::GeographicToCartesianCoordinates(
m_latitude,
 
 1777    Vector geo = GeographicPositions::CartesianToGeographicCoordinates(cart, 
m_sphType);
 
 1782        GeographicPositions::GeographicToCartesianCoordinates(geo.x, geo.y, geo.z, 
m_sphType);
 
 1786                                "Double conversion out-of-tolerance: " 
 1807    for (
double altitude = 0; altitude <= 1000; altitude += 200)
 
 1809        for (
double latitude = 0; latitude <= 360; latitude += 72)
 
 1811            for (
double longitude = 0; longitude <= 360; longitude += 72)
 
 1816                                                       GeographicPositions::SPHERE,
 
 1822                                                       GeographicPositions::SPHERE,
 
 1830    for (
double altitude = 0; altitude <= 1000; altitude += 200)
 
 1832        for (
double latitude = 0; latitude <= 360; latitude += 72)
 
 1834            for (
double longitude = 0; longitude <= 360; longitude += 72)
 
 1839                                                       GeographicPositions::GRS80,
 
 1845                                                       GeographicPositions::GRS80,
 
 1853    for (
double altitude = 0; altitude <= 1000; altitude += 200)
 
 1855        for (
double latitude = 0; latitude <= 360; latitude += 72)
 
 1857            for (
double longitude = 0; longitude <= 360; longitude += 72)
 
 1862                                                       GeographicPositions::WGS84,
 
 1868                                                       GeographicPositions::WGS84,
 
Cartesian to Geo Test Case.
 
~CartesianToGeoTestCase() override
 
CartesianToGeoTestCase(double latitude, double longitude, double altitude, GeographicPositions::EarthSpheroidType sphType, int i)
Constructor.
 
double m_longitude
longitude (deg)
 
void DoRun() override
Implementation to actually run this TestCase.
 
double m_altitude
altitude (m)
 
static std::string Name(double latitude, double longitude, double altitude, GeographicPositions::EarthSpheroidType sphType)
Name function.
 
GeographicPositions::EarthSpheroidType m_sphType
spheroid type
 
double m_latitude
latitude (deg)
 
Geo To Cartesian Test Case.
 
double m_longitude
longitude (deg)
 
double m_altitude
altitude (m)
 
void DoRun() override
Implementation to actually run this TestCase.
 
GeoToCartesianTestCase(double latitude, double longitude, double altitude, GeographicPositions::EarthSpheroidType sphType, int i)
Constructor.
 
double m_latitude
latitude (deg)
 
GeographicPositions::EarthSpheroidType m_sphType
spheroid type
 
static std::string Name(double latitude, double longitude, double altitude, GeographicPositions::EarthSpheroidType sphType)
Name function.
 
~GeoToCartesianTestCase() override
 
Geo To Cartesian Test Suite.
 
GeoToCartesianTestSuite()
 
EarthSpheroidType
Spheroid model to use for earth: perfect sphere (SPHERE), Geodetic Reference System 1980 (GRS80),...
 
void AddTestCase(TestCase *testCase, TestDuration duration=QUICK)
Add an individual child TestCase to this test suite.
 
const double ZSPHERE_MATLAB[216]
 
const double YGRS80_MATLAB[216]
 
const double YWGS84_MATLAB[216]
 
const double ZWGS84_MATLAB[216]
 
const double YSPHERE_MATLAB[216]
 
const double XSPHERE_MATLAB[216]
 
const double XWGS84_MATLAB[216]
 
const double ZGRS80_MATLAB[216]
 
const double XGRS80_MATLAB[216]
 
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
 
#define NS_LOG_INFO(msg)
Use NS_LOG to output a message of level LOG_INFO.
 
static GeoToCartesianTestSuite g_GeoToCartesianTestSuite
Static variable for test initialization.
 
#define NS_TEST_ASSERT_MSG_EQ_TOL(actual, limit, tol, msg)
Test that actual and expected (limit) values are equal to plus or minus some tolerance and report and...
 
#define NS_TEST_ASSERT_MSG_LT_OR_EQ(actual, limit, msg)
Test that an actual value is less than or equal to a limit and report and abort if not.
 
Every class exported by the ns3 library is enclosed in the ns3 namespace.
 
double CalculateDistance(const Vector3D &a, const Vector3D &b)
 
static std::string Name(std::string str, uint32_t totalStreamSize, uint32_t sourceWriteSize, uint32_t serverReadSize, uint32_t serverWriteSize, uint32_t sourceReadSize, bool useIpv6)