gpt4 book ai didi

python - 在 Python 中通过纬度计算地球的半径 - 复制公式

转载 作者:行者123 更新时间:2023-11-28 22:10:40 30 4
gpt4 key购买 nike

我正在尝试复制我在该网站上找到的一个公式,它与计算给定纬度下的地球半径有关。

https://rechneronline.de/earth-radius/或者 https://planetcalc.com/7721/

然后我使用网站上的计算器来确定我是否正确复制了公式。

我写了下面的代码,但是我不能复制网站上给出的答案(纬度等于零时除外)。由于方程相当复杂,我什至将每个部分拆分成一个单独的变量。但是,我的结果仍然不正确。

示例代码

import math

def radius (B):
a = 6378.137 #Radius at sea level at equator
b = 6356.752 #Radius at poles

c = (a**2*math.cos(B))**2
d = (b**2*math.sin(B))**2
e = (a*math.cos(B))**2
f = (b*math.sin(B))**2

R = math.sqrt((c+d)/(e+f))


return R

例如,使用纬度2(变量B),网站计算出地球的半径为6378.111km。我的答案是 6360.481km。

任何帮助将不胜感激。提前谢谢你

最佳答案

python 数学库将弧度作为三角函数的输入,

所以请确保将 B 的值转换为弧度

可以通过 B=math.radians(B)

最终代码:

import math
def radius (B):
B=math.radians(B) #converting into radians
a = 6378.137 #Radius at sea level at equator
b = 6356.752 #Radius at poles
c = (a**2*math.cos(B))**2
d = (b**2*math.sin(B))**2
e = (a*math.cos(B))**2
f = (b*math.sin(B))**2
R = math.sqrt((c+d)/(e+f))
return R

关于python - 在 Python 中通过纬度计算地球的半径 - 复制公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56420909/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com