Наскільки точне наближення Землі до сфери?


63

З яким рівнем помилок я стикаюся при наближенні Землі до сфери? Зокрема, при роботі з розташуванням точок і, наприклад, великими відстанями кола між ними.

Чи є дослідження середньої та найгіршої помилки порівняно з еліпсоїдом? Мені цікаво, якою точністю я б приніс шкоду, якщо пітиму зі сферою заради простіших розрахунків.

Мій конкретний сценарій передбачає безпосередньо відображення координат WGS84 так, ніби вони були координатами на ідеальній сфері (із середнім радіусом, визначеним IUGG) без будь-якого перетворення.


Вас конкретно цікавить сферична модель або вас цікавлять еліпсоїдні моделі? Я думаю, що кількість помилок сильно відрізнятиметься між сферою та еліпсом.
Джей Лора

2
Відповідний аналіз з'являється у цій відповіді . Однак, щоб отримати відповідь на ваше запитання, вам потрібно вказати, як наближається земля до сфери. Багато наближень використовується. Всі вони рівносильні функціям f '= u (f, l) і l' = v (f, l), де (f, l) - географічні координати сфери і (f ', l') - географічні координати еліпсоїд. Див. Розділ 1.7 ("Перетворення ... еліпсоїда обертання на поверхню кулі") у Бугаєвському та Снайдері, " Проектування карт", Довідковий посібник . Тейлор і Френсіс [1995].
whuber

Це схоже на ранню дискусію щодо проекції Google / Bing EPSG 900913 (яка використовує координати WGS84, але проектує так, ніби вони знаходяться у сфері), і помилки, ймовірно, пояснюються тим, що EPSG спочатку відкидає прогноз, поки не надає тиску на розробників. Не бажаючи надмірно відволікати вас, подальший розгляд цієї дебати може додати додаткову ширину до інформації в чудовому посиланні, яке надає whuber.
MappaGnosis

@ Jzl5325: Так, я мав на увазі сувору сферу, а не еліпсоїд, відредагував питання, щоб надати трохи більше контексту.
Джефф Брідгман

1
Я думаю, ви повинні прочитати це: en.wikipedia.org/wiki/Haversine_formula
longtsing

Відповіді:


83

Коротше кажучи, відстань може бути помилковою до приблизно 22 км або 0,3%, залежно від питань, про які йдеться. Це:

  • Похибка може бути виражена декількома природними, корисними способами , такими як (i) (залишкова) помилка, рівна різниці між двома обчисленими відстанями (у кілометрах) та (ii) відносною помилкою, що дорівнює різниці, поділеній на "правильне" (еліпсоїдальне) значення. Для отримання чисел, зручних для роботи, я множу ці співвідношення на 1000, щоб виразити відносну похибку в частинах на тисячу .

  • Помилки залежать від кінцевих точок. Завдяки обертальній симетрії еліпсоїда та сфери та їх двосторонньої (північ-південь та схід-захід) симетрії ми можемо розмістити одну з кінцевих точок десь уздовж меридіана (довгота 0) у північній півкулі (широта між 0 і 90 ) та інша кінцева точка у східній півкулі (довгота між 0 і 180).

Щоб вивчити ці залежності, я побудував помилки між кінцевими точками в (lat, lon) = (mu, 0) та (x, лямбда) як функція широти x між -90 та 90 градусів. (Усі точки номінально на висоті еліпсоїда нуля.) На малюнках рядки відповідають значенням мю при {0, 22,5, 45, 67,5} градусах і стовпці значенням лямбда при {0, 45, 90, 180} градусів. Це дає нам хороший огляд спектру можливостей. Як і очікувалося, їх максимальні розміри приблизно врівень (приблизно 1/300) у порівнянні з основною віссю (близько 6700 км), або приблизно 22 км.

Помилки

Залишкові помилки

Відносні помилки

Відносні помилки

Контурний сюжет

Інший спосіб візуалізації помилок - це виправити одну кінцеву точку та дозволити іншій змінюватися, контурнувши виникаючі помилки. Ось, наприклад, контурний графік, де перша кінцева точка знаходиться на 45 градусах північної широти, 0 градусів довготи. Як і раніше, значення помилок знаходяться в кілометрах, а позитивні помилки означають, що сферичний розрахунок занадто великий:

Контурний сюжет

Можливо, це буде простіше читати, обертаючись по всьому світу:

Глобус сюжет

Червона крапка на півдні Франції показує розташування першої кінцевої точки.

Для запису ось код Mathematica 8, який використовується для обчислень:

WGS84[x_, y_] := GeoDistance @@ (GeoPosition[Append[#, 0], "WGS84"] & /@ {x, y});
sphere[x_, y_] := GeoDistance @@
   (GeoPosition[{GeodesyData["WGS84", {"ReducedLatitude", #[[1]]}], #[[2]], 0}, "WGS84"] & /@ {x, y});

І одна з графіків команд:

With[{mu = 45}, ContourPlot[(sphere[{mu, 0}, {x, y}] - WGS84[{mu, 0}, {x, y}]) / 1000, 
                   {y, 0, 180}, {x, -90, 90}, ContourLabels -> True]]

23
Яка погана відповідь @whuber
Рагі Ясер Бурхум

21

Я нещодавно вивчив це питання. Я думаю, що люди хочуть знати

  1. який сферичний радіус я повинен використовувати?
  2. що внаслідок цього помилка?

Доцільною метрикою якості наближення є максимальна абсолютна похибка на відстані великого кола

err = |s_sphere - s_ellipsoid| / s_ellipsoid

при максимальному оцінюванні за всіма можливими парами балів.

Якщо сплющення f невелике, то сферичний радіус, який мінімізує помилку, дуже близький до (a + b) / 2, і результуюча помилка приблизно

err = 3*f/2 = 0.5% (for WGS84)

(оцінюється 10 ^ 6 випадковим чином обраних пар балів). Іноді пропонується використовувати (2 * a + b) / 3 як сферичний радіус. Це призводить до дещо більшої помилки, err = 5 * f / 3 = 0,56% (для WGS84).

Геодезика, довжина якої найбільш занижена за сферичним наближенням, лежить біля полюса, наприклад, (89,1,0) до (89,1,180). Геодезика, довжина якої найбільш завищена за сферичним наближенням, меридіональна поблизу екватора, наприклад, (-0,1,0) до (0,1,0).

ДОДАТОК : Ось ще один спосіб вирішити цю проблему.

Виберіть пари рівномірно розподілених точок на еліпсоїді. Виміряйте еліпсоїдальну відстань s та відстань на одиничній сфері t . Для будь-якої пари точок s / t дає еквівалентний сферичний радіус. Середня ця величина за всіма парами точок, і це дає середній еквівалентний кульовий радіус. Є питання про те, як саме слід робити середній показник. Однак усі варіанти я спробував

1. <s>/<t>
2. <s/t>
3. sqrt(<s^2>/<t^2>)
4. <s^2>/<s*t>
5. <s^2/t>/<s>

всі виходили за кілька метрів від рекомендованого середнього радіуса IUGG, R 1 = (2 a + b ) / 3. Таким чином, це значення мінімізує помилку RMS при обчисленні сферичної відстані. (Однак це призводить до дещо більшої максимальної відносної похибки порівняно з ( a + b ) / 2; див. Вище.) Враховуючи, що R 1 , ймовірно, буде використовуватися для інших цілей (обчислення площі тощо), є вагомі причини дотримуйтесь цього вибору для обчислення відстані.

Суть :

  • Для будь-яких систематичних робіт, де ви можете допустити помилку 1% у розрахунках відстані, використовуйте сферу радіуса R 1 . Максимальна відносна похибка - 0,56%. Використовуйте це значення послідовно, коли ви наближаєте землю до сфери.
  • Це вам потрібна додаткова точність, вирішити еліпсоїдальну геодезичну задачу.
  • Для зворотного обчислення конвертів використовуйте R 1 або 6400 км або 20000 / пі км або a . Це призводить до максимальної відносної помилки близько 1%.

ІНШИЙ ДОДАТОК : Ви можете вичавити трохи більше точності з великої відстані кола, використовуючи μ = tan −1 ((1 - f ) 3/2 tanφ) (випрямлювальну широту бідолахи) як широту в обчисленні великого кола. Це зменшує максимальну відносну похибку з 0,56% до 0,11% (використовуючи R 1 як радіус сфери). (Не ясно, чи дійсно варто застосовувати такий підхід на відміну від обчислення еліпсоїдальної геодезичної відстані безпосередньо.)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.