calculate distance with latitude and longitude

13 次查看(过去 30 天)
i have some netcdf files. how do i calculate the distance between two points and between two areas within a grid having the latitude and longitude values?

采纳的回答

William Rose
William Rose 2021-5-3
I assume you know the standard formula for distance betwen two points whose longitudes () and latitudes () are given.
where r is the Earth radius.
I don't know what you mean by "distance between two areas within a grid". Can you clarify, please?
  2 个评论
ELISABETTA BILLOTTA
the arccos function does not accept me and changes me by inserting acos. it's correct?
what unit of measurement is the result obtained? because I need to know the distance in km.
in the meantime, thank you very much for your reply.
William Rose
William Rose 2021-5-3
编辑:William Rose 2021-5-3
@ELISABETTA BILLOTTA, Yes, inverse cosine is called acos() in Matlab.
The units of the answer will equal the units used for the radius of the sphere. To get the distance in km, use r=6371 km.
Remember to convert all latitudes and longitudes to radians before computing their sine or cosine.
The Earth is not really a sphere. It is approximately a flattened ellipsoid. The equatorial radius is about 0.3% larger than the polar radius. The radius value above is an average which gives a sphere with approximately the same surface area and volume as the real Earth.
A formula for distance between two points, that accounts for the Earth's ellipsoidal shape, is more complicated. The differences in distances between the spherical and ellipsoidal Earth models are less than 0.2% in the worst case, and usually a lot less than that. Therefore I would go with the formula above.

请先登录,再进行评论。

更多回答(0 个)

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by