地理知识笔记: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
相关推荐
疯狂打码的少年9 小时前
流水线冒险(结构冒险/数据冒险/控制冒险)
笔记
问心无愧05139 小时前
ctf show web入门261
android·前端·笔记
智者知已应修善业9 小时前
【分立元件OCL电路】2024-5-17
驱动开发·经验分享·笔记·硬件架构·硬件工程
学计算机的计算基9 小时前
LeetCode刷题笔记:数组专题四连击(LC53/56/189/41)
笔记·leetcode·排序算法
Upsy-Daisy9 小时前
IOTA 学习笔记(一):IOTA 是什么?从区块链到 Tangle
笔记·学习·区块链
小碗羊肉9 小时前
【Agent笔记 | 第五篇】LangChain&LangGraph
笔记·langchain
.千余9 小时前
【Linux】 TCP进阶详解:字节流、粘包问题、异常情况与UDP完整对比2
linux·运维·c语言·开发语言·经验分享·笔记·php
Upsy-Daisy9 小时前
IOTA 学习笔记(二):DAG 与 Tangle 到底是什么?
笔记·学习
不羁的木木10 小时前
Form Kit(卡片开发服务)学习笔记05-进阶实战与性能优化
笔记·学习·harmonyos
土狗TuGou10 小时前
SQL内功笔记 · 第7篇:CTE&临时表&递归
数据库·笔记·后端·sql·mysql