![]() |
От: |
slava_phirsov
|
|
Дата: | 02.04.10 13:41 | ||
Оценка: |
![]() ![]() |
In fact, when Sinnott published the Haversine formula, computational precision was limited. Nowadays, JavaScript (and most modern computers & languages) use IEEE 754 64-bit floating-point numbers, which provide 15 significant figures of precision. With this precision, the simple spherical law of cosines formula gives well-conditioned results down to distances as small as around 1 metre. In view of this it is probably worth, in most situations, using either the simpler law of cosines or the more accurate ellipsoidal Vincenty formula in preference to Haversine!
Когда Sinott опубликовал формулу Haversine, точность компьютерных вычислений была невысока. Сейчас в JavaScript (и в большинстве современных языков) используется 64-битный формат чисел с плавающей точкой согласно стандарту IEEE 754, который дает нам точность 15 значащих разрядов. При таких условиях применение сферической теоремы косинусов дает хорошие результаты вплоть до расстояний в 1 метр. С этой точки зрения в большинстве случаев было бы ХУЖЕ ВСЕГО использовать вместо формулы Haversine теорему косинусов или более точную формулу Vincenty.