C, PHP, VB, .NET

Дневникът на Филип Петров


* Две точки на земната повърхност

Публикувано на 21 април 2011 в раздел Математика.

Преставете си, че Земята е идеална сфера с радиус 1. Избираме две произволни точки A(x1,y1) и B(x2,y2), където xiЄ(0,2π) e географската дължина (тръгва се от Гринуич на изток), а yiЄ(0,π) е географската ширина (приемаме, че се започва с 0 от южния полюс и се завършва с π в северния - това е за улеснение на задачата, защото реално ширината се отчита положителна или отрицателна спрямо Екватора).

Какво е най-късото разтояние движейки се по земната повърхност (т.е. дължината на т.нар. "геодезична линия") между точките A и B?

 



3 коментара


  1. 1сл. 2те точки са с 1 и съща дължина, тогава разстоянието е разликата в ширините.
    2сл. x1+k*180=x2 където k е нечетно, тогава разстоянието е min(y1+y2,180-y1+180-y2)
    3сл. Точките не са на 1 меридиан - тогава преминаваме към нормалната координатна система с ширина на екватора=0. Ако си представим 2измерната карта на света, геодезичната линия ще е част от синусоида, която минава и през двете точки. Графиката на синусоидата се представя с уравнението a*sin(x)+b=y, където а е амплитудата на синусоидата, а b е ъгловото отместване. Ако съставим система с координатите на 2те точки ще намерим а и b. На 3измерното кълбо, синусоидата представлява окръжност, амплитудата е ъгъла между равнината на окръжността и равнината на екватора, а отместването е г. дължина на пресечната им точка.

  2. Поправка ако ъгъла между равнините е t, тогава a=tg(t). Тогава координатната система с 2измерната карта има особеността че 90° е в +безкрайност, а -90 ° в -безкрайност.

  3. Ако разликата в г. дължина на точките е D, тогава разстоянието между точките (s) е cos(t)*D. Или цялата система е:

    a*cos(x1)+b=y1
    and
    a*cos(x2)+b=y2
    and
    s=cos(atan(a))*D

Добави коментар

Адресът на електронната поща няма да се публикува


*