地理知识笔记:Haversine距离

1 介绍

  • Haversine距离用于计算地球上两点之间的大圆距离
  • 当考虑地球的真实曲率时,它特别适用于计算两个经纬度坐标之间的距离

其中:

2 python 实现

python 复制代码
def haversine_distance(lat1, lon1, lat2, lon2):
    R = 6371  # Earth radius in kilometers
    dlat = np.radians(lat2 - lat1)
    dlon = np.radians(lon2 - lon1)
    a = np.sin(dlat/2) * np.sin(dlat/2) + np.cos(np.radians(lat1)) * np.cos(np.radians(lat2)) * np.sin(dlon/2) * np.sin(dlon/2)
    c = 2 * np.arctan2(np.sqrt(a), np.sqrt(1-a))
    return R * c
相关推荐
hengcaib12 小时前
防封号电销外包公司怎么选合规线路与风控核查方法
笔记
六点_dn14 小时前
Linux学习笔记-shell运算符
linux·笔记·学习
降临-max15 小时前
软件测试基础---项目实战
软件测试·笔记·功能测试·测试用例
鱼子星_16 小时前
【C++】内存管理:内存分布,new/delete的使用及细节处理,new/delete的底层,定位new表达式
开发语言·c++·笔记
愚昧之山绝望之谷开悟之坡16 小时前
回购逆回购
笔记
鱼子星_16 小时前
【C++】string(上):string的基本使用
c++·笔记·字符串
AOwhisky17 小时前
Python 学习笔记(第四期)——字符串:格式化、操作与文本处理——核心知识点自测与详解
开发语言·笔记·python·学习·列表·元组·字典
chnyi6_ya17 小时前
论文阅读笔记 | VIDEOPHY: Evaluating Physical Commonsense for Video Generation
论文阅读·笔记
AOwhisky17 小时前
Python 学习笔记(第六期)——函数:定义、参数传递与作用域
笔记·python·学习·云原生·运维开发·函数·参数传递
玖玥拾17 小时前
Unity 3D 基础(一)Unity基础架构、物理系统、视觉渲染、空间变换与对象查询
笔记·游戏·3d·unity·游戏引擎