Message Boards Message Boards

[✓] Calculate curvature between two cities on the Earth?


I recently was wondering what the curvature would be between any two given points on the globe and I thought, well, surely Wolfram Alpha can do this calculation. Maybe i worded my question weirdly but what i am looking for is how can i figure out how much the earth curves downward using the starting point as an upright frame of reference. Is Wolfram Alpha currently able to perform this calculation or not yet? If not could someone please explain how this could be calculated? Thanks in advance.

POSTED BY: Alex Brown
11 months ago

I would use GeoDistance[] and then lookup the value in the table stored and explained here.


POSTED BY: Aeyoss Antelope
11 months ago

A possible way to estimate this is to use GeoPositionENU[pos, pos0]. It will return GeoPositionENU[{e, n, u}, pos0] with the triple {e, n, u} being a Cartesian vector in meters with respect to a frame centered at pos0 and oriented along the East, North, Up axes (at pos0). The vector {e, n, u} points from pos0 to pos, and therefore u will be negative for any pos on the surface of the Earth. It represents the distance from the tangent plane at pos0 to pos, measured perpendicularly to the plane. That is, measured parallel to the vertical at pos0, and not parallel to the vertical at pos.

For example, take pos = New York and pos0 = Chicago. Then:

In[]:= GeoPositionENU[Entity["City", {"NewYork", "NewYork", "UnitedStates"}], Entity["City", {"Chicago", "Illinois", "UnitedStates"}]]
Out[]= GeoPositionENU[{1.15103*10^6, -37769.2, -104681.}, GeoPosition[{41.8376, -87.6818}]]

That means that NYC is 105 km below the tangent plane at Chicago.

11 months ago

Group Abstract Group Abstract