help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: distance from Easter Island to Chile


From: Emanuel Berg
Subject: Re: distance from Easter Island to Chile
Date: Mon, 21 Apr 2014 03:40:06 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

giacomo.boffi@gmail.com writes:

>> I get an answer of 4301.199
>
> me too

I get that too. We all get the same result - it is a
function that maps input (in a deterministic way) to
output. Provided the implementation is correct that's
what you get with the Haversine method.

> (progn 
>   (defun d2r (x) (/ (* pi x) 180))
>   (defun spherical-law-of-cosines (p1 p2)
>     "http://en.wikipedia.org/wiki/Great-circle_distance#Formulas";
>     (let ((lat1 (car p1)) (lon1 (cadr p1))
>         (lat2 (car p2)) (lon2 (cadr p2)))
>       (acos (+ (* (sin lat1) (sin lat2))
>              (* (cos lat1) (cos lat2) (cos (- lon2 lon1)))))))
>   
>   (setq santiago (mapcar 'd2r '(33.4500  70.6667)))
>   (setq easter_i (mapcar 'd2r '(27.1167 109.3667)))
>   (insert (format "\nEaster Island to Santiago distance is%8.2f km."
>                   (* (spherical-law-of-cosines
>   santiago easter_i) 6378.1))))

That's uncanny close to the Googled distance! - that
means the Earth is very, very spherical, I take it?

This is so exact it *could* be used in those "school
essays" (in which I told not to use the Haversine
method) - one is even tempted to suspect that this
formula is what they used - possibly adding or
subtracting some (empirical) constant?

Awesome stuff!

Comment: There is already a d2r (degrees-to-radians).

I'll definitely add this to my distance.el - keep this
up, and we will soon have an Emacs GIS library...

-- 
underground experts united:
http://user.it.uu.se/~embe8573


reply via email to

[Prev in Thread] Current Thread [Next in Thread]