Kalkulatory online, takie jak http://www.csgnetwork.com/degreelenllavcalc.html (zobacz źródło strony), wykorzystują poniższe formuły, aby uzyskać metry na stopień. Rozumiem ogólnie, jak odległość na stopień różni się w zależności od położenia szerokości geograficznej, ale nie rozumiem, jak to przekłada się na poniższe. Mówiąc dokładniej, skąd biorą się stałe, terminy 3 „cos” w każdej formule oraz współczynniki (2, 4, 6; 3 i 5) dla „lat”?
// Set up "Constants"
m1 = 111132.92; // latitude calculation term 1
m2 = -559.82; // latitude calculation term 2
m3 = 1.175; // latitude calculation term 3
m4 = -0.0023; // latitude calculation term 4
p1 = 111412.84; // longitude calculation term 1
p2 = -93.5; // longitude calculation term 2
p3 = 0.118; // longitude calculation term 3
// Calculate the length of a degree of latitude and longitude in meters
latlen = m1 + (m2 * Math.cos(2 * lat)) + (m3 * Math.cos(4 * lat)) +
(m4 * Math.cos(6 * lat));
longlen = (p1 * Math.cos(lat)) + (p2 * Math.cos(3 * lat)) +
(p3 * Math.cos(5 * lat));
lat
(choć powstałych zmiennychlatlen
ilonglen
są w metrach na stopniu nie metrów na radian). Jeśli użyjesz stopni dlalat
, możesz nawet otrzymać ujemną wartość dlalonglen
.Odpowiedzi:
Główny promień sferoidy WGS84 wynosi a = 6378137 metrów, a jej odwrotne spłaszczenie wynosi f = 298.257223563, skąd kwadratowa mimośrodowość wynosi
Promień południkowy krzywizny na szerokości geograficznej phi wynosi
a promień krzywizny wzdłuż równoległości wynosi
Ponadto promień równoległości wynosi
Są to multiplikatywne korekty sferycznych wartości M i N , z których oba są równe promieniu sferycznemu a , do czego redukują się, gdy e2 = 0.
W żółtym punkcie na 45 stopniach szerokości geograficznej północnej niebieski dysk o promieniu M jest oscylującym („całującym”) okręgiem w kierunku południka, a czerwony dysk o promieniu N jest oscylującym okręgiem w kierunku równoległym: oba dyski zawierają w tym momencie kierunek „w dół”. Liczba ta przesadza spłaszczanie ziemi o dwa rzędy wielkości.
Promienie krzywizny określenia długości stopni: jeżeli koło ma promień R , jego obwód długości 2 pi R pokrywy 360 stopni, z którego długość jednego stopnia jest pi * R / 180 Podstawiając M i R do R - - to znaczy pomnożenie M i r przez pi / 180 - daje proste dokładne wzory na długości stopni.
Wzory te - oparte wyłącznie na podanych wartościach a i f (które można znaleźć w wielu miejscach ) i opisie sferoidy jako elipsoidy obrotu - zgadzają się z obliczeniami w pytaniu z dokładnością do 0,6 części na milion (kilka centymetrów), co jest w przybliżeniu tym samym rzędem wielkości najmniejszych współczynników w pytaniu, co oznacza, że się zgadzają. (Przybliżenie jest zawsze trochę niskie.) Na wykresie błąd względny długości stopnia szerokości geograficznej jest czarny, a błąd długości geograficznej jest przerywany na czerwono:
W związku z tym możemy zrozumieć, że obliczenia w pytaniu są przybliżeniami (poprzez skrócone szeregi trygonometryczne) do podanych powyżej wzorów.
Współczynniki można obliczyć z szeregu cosinus Fouriera dla M i r jako funkcji szerokości geograficznej. Podano je w kategoriach eliptycznych funkcji e2, które byłyby zbyt nieporządne, aby się tutaj odtworzyć. Dla sferoidy WGS84 moje obliczenia podają
(Można się domyślać, jak
p4
wchodzi do formuły. :) Bliskość tych wartości do parametrów w kodzie świadczy o poprawności tej interpretacji. To ulepszone przybliżenie jest dokładne wszędzie o wiele lepiej niż jedna część na miliard.Aby przetestować tę odpowiedź, wykonałem
R
kod, aby wykonać oba obliczenia:Dokładne obliczenia za pomocą
radii
mogą być używane do drukowania tabel o długości stopni, jak wDane wyjściowe są w metrach i wyglądają tak (z usuniętymi niektórymi liniami):
Bibliografia
LM Bugayevskiy i JP Snyder, Projekcje map - Podręcznik referencyjny. Taylor i Francis, 1995. (Załącznik 2 i Załącznik 4)
JP Snyder, Projekcje map - Podręcznik roboczy. USGS Professional Paper 1395, 1987. (Rozdział 3)
źródło
To formuła Haversine , choć wyrażona w dziwny sposób.
źródło