垂直速度单位问题

我正在尝试根据垂直压力速度估算垂直风速。我发现metpy.calc.vertical_velocity(Ω,压力,温度,混合= 0)。

https://unidata.github.io/MetPy/latest/api/generated/metpy.calc.vertical_velocity.html

但是,没有关于所需单元的文档。我以x数组格式给它以Pa s-1表示的Omega,以Pa表示压力,以K表示温度。我希望输出也是xarray。我收到此错误:“无法从'pascal *秒'转换为'dimensionless”。有什么想法为什么想要无量纲变量以及如何解决这个问题?

iCMS 回答:垂直速度单位问题

该错误来自解析Udunits格式的单位字符串“ Pa s-1”的问题。 pint(MetPy使用的单位库)中的默认单位解析器将其解析为:Pa * s - 1,这是毫无意义的。幸运的是,对于MetPy 1.0,这应该可以工作:

import metpy.calc
import xarray as xr

omega = xr.DataArray([5],attrs={'units': 'Pa s-1'})
pressure = xr.DataArray([50000],attrs={'units': 'Pa'})
temperature = xr.DataArray([283],attrs={'units': 'K'})
metpy.calc.vertical_velocity(omega,pressure,temperature,mixing_ratio=0)

您当前可以从pip安装metpy 1.0.0rc1:

pip install --pre metpy

或来自conda-forge:

conda install -c conda-forge/label/metpy_rc metpy=1.0.0rc1
本文链接:https://www.f2er.com/1891610.html

大家都在问