用Python方式计算可沉淀水的方法?

我正在使用NCAR RDA提供的ERA5重新分析数据。我使用metpy dewpoint_from_relative_humidity()计算露点,然后将其转换为DataArray对象,并分配与我拥有ERA5数据的Dataset对象匹配的坐标和尺寸。我想在metpy中使用precipitable_water()计算可沉淀水,但是我正在努力找出执行此计算的最有效方法,因为它旨在处理数组(声音)而不是数据网格。我已经看过xr.apply_ufunc(),但是我不确定这是否适合该xarray功能,或者坦率地说,甚至我将如何执行。我可以编写嵌套的for循环/ while循环,但是我不认为这是实现此目的的最佳方法。有没有人有什么建议?我尝试了下面的代码行,但它告诉我太多的位置参数,并且我认为无法做到这一点,因为ds ['TD']不是数组。

ds['TD']  = xr.DataArray(mpcalc.dewpoint_from_relative_humidity(ds['T'],ds['R']),dims=['level','latitude','longitude'],coords=ds.coords)
ds['PW'] = xr.DataArray(mpcalc.precipitable_water(ds['TD'],ds.level,1000.0,700.0),coords=ds.coords)
zdx1222 回答:用Python方式计算可沉淀水的方法?

我猜您正在运行MetPy 1.0(rc1)。为此,对precipitable_water()函数的调用已更改为对bottomtop使用仅关键字的参数。我希望以下方法能起作用:

pw = mpcalc.precipitable_water(ds['TD'],ds.level,bottom=1000.0,top=700.0)
本文链接:https://www.f2er.com/2426536.html

大家都在问