gpt4 book ai didi

python - 在 matplotlib 中绘制地转风图

转载 作者:行者123 更新时间:2023-11-30 23:09:27 25 4
gpt4 key购买 nike

我正在做一项作业,教授如何使用 Python 使用 matplotlib 进行绘图和标签。科学或数学不是我的背景。我已经获得了计算地转风的公式,我们将绘制它(在 y 轴上)与 x 轴上的纬度的关系。

我知道如何绘制 x 和 y。除此之外,由于我缺乏该领域的背景,这个公式对我来说没有意义。

该公式为地转风公式。因为我只有一张图片,而且我需要 10 名代表才能发布图片,所以我将只关注给我的希腊字母。

例如,给我

r'$x^{10}$'
r'$R_^{final}$'
r'$alpha^{\eta}$'

前两个是上标和下标。我明白了。但我不知道这对公式计算有何帮助。

我也得到了要放入公式中的值。对操作顺序的解释会有所帮助。

g0=9.81 ms-­‐2;
ΔZ=60m;
Δn=2x10^5m;
and
f=2Ωsin(φ)

我的问题是如何将上面的值放入公式中,然后在 matplotlib 中绘制它们?它像 x 和 y 一样简单吗?

到目前为止完成的绘图示例:

x = arange(1, 100, 1)
y1 = 2.0*np.sqrt(x)
y2 = 3.0*x**(1.0/3.0)
plt.plot(x, y1)
plt.plot(x, y2)

抱歉,我是新手。

geostrophic wind formula

最佳答案

jclark754's answer中的物理解释很好。看wiki page on Geostrophic wind , 也。

我认为

$\Delta n$ 是您向北的距离。为了澄清起见,我在下面将其称为 dy。另外,是否应该将 g 取为负(z 轴向上)也是一个问题。我就是这么做的。

对于代码,您需要注意 np.sin 需要弧度而不是度数。

如果您使用NumPy arrays与列表不同,您不需要所有这些列表推导式,并且公式变得更加简单且更接近公式:

import matplotlib.pyplot as plt ; plt.style.use('ggplot')
import numpy as np

# define the parameters
g = -9.81 # m/s^2
dZ = 60 # m
dx = 2e5 # m
omega = 7.2921e-5 # rad/s
phi = np.linspace(10,40) # deg
f = 2 * omega * np.sin(np.radians(phi)) # coriolis frequency, s^-1

# compute geostrophic wind, x-component
u_g = -1. * g/f * dZ/dx

# plot phi vs V_g
fig, ax = plt.subplots()
ax.plot(phi, u_g)
ax.set_xlabel('latitude (degrees)')
ax.set_ylabel('geostrophic wind, y-component (m/s)')
plt.show()

geostrophic wind as a function of latitude

该图显示了不同纬度处恒定地转高度梯度 (dZ/dx = 60 m/2e5 m) 和科里奥利效应产生的地转风。

从物理直觉来看,我发现奇怪的是,随着靠近赤道,速度会增加,尽管科里奥利效应在两极附近最强。但话又说回来,科里奥利效应不是一种力,更多的是一种平衡效应,阻碍了压力梯度力中所含势能的释放。

关于python - 在 matplotlib 中绘制地转风图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31198838/

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