地理知识笔记: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
相关推荐
做cv的小昊9 小时前
【TJU】信息检索与分析课程笔记和练习(1)认识文献
经验分享·笔记·学习·搜索引擎·全文检索
读创商闻9 小时前
崇明岛西滩湿地:离都市最近的候鸟观测笔记
笔记
蒙奇D索大9 小时前
【11408学习记录】考研英语长难句拆解三步法:三步拆解2020年真题,攻克阅读难点
笔记·学习·考研·改行学it
悠闲漫步者9 小时前
第2章 MCS-51单片机的串口和最小系统(学习笔记)
笔记·学习·51单片机
莫白媛10 小时前
Linux创作笔记综合汇总篇
linux·运维·笔记
Wpa.wk10 小时前
Tomcat的安装与部署使用 - 说明版
java·开发语言·经验分享·笔记·tomcat
Vincent_Zhang23310 小时前
专题:所有状语类型(持续补充)
笔记
wdfk_prog10 小时前
[Linux]学习笔记系列 -- [fs]buffer
linux·笔记·学习
海奥华211 小时前
进程调度算法 笔记总结
linux·运维·服务器·笔记·学习
即将进化成人机11 小时前
验证码生成 + Redis 暂存 + JWT 认证
数据库·redis·笔记