首页
人才招聘
企业文化
公司简介
业务合作
联系我们
产品介绍
新闻资讯
成功案例

237]

发布日期:2024-06-21 12:52    点击次数:188

237]

WRF输出数据降雨量来自于三个变量:RAINC: ACCUMULATED TOTAL CUMULUS PRECIPITATIONRAINNC: ACCUMULATED TOTAL GRID SCALE PRECIPITATIONRAINSH: ACCUMULATED SHALLOW CUMULUS PRECIPITATION

RAINC: 积云深对流经由产生的积蓄降水量,也便是款式中的积云对流参数化决策导致的降雨( cu_physics)。关于高分袂率的模拟,比如dx<5km,时时会将积云对流参数化决策关闭,此时RAINC为0。RANNC: 此类降雨开端于云微物理参数化决策(mp_physics),如大法式抬升经由产生的凝结等微物理经由降水,也就长短对流产生的降水。RAINSH: 积云对流参数化决策主淌若反应深对流的降水经由,可是一些积云对流参数化决策,概况相沿浅对流导致的降水,此时总降水还需要加上RAINSH。WRF中相沿浅对流的参数化决策(cu_physics)有以下几种:KF,SAS,G3,BMJ,Tiedtke。WRF中也有安稳于深对流经由的浅对流决策,通过namelist中设立shcu_physics。一般情况下,浅对流产生的降水量较小。

此外,固态降水举例雪(SNOWC/SNOWNC)、霰(GRAUPELC/GRAUPELNC)等降水,它们是降水的不同相态,依然齐包含在RAINC/RAINNC中,不需要迥殊添加。

回归为一句话:总降水=RAINNC + RAINC + RAINSH,其中RAINC和RAINSH笔据物理参数化决策的设立可能为0。

需要精致的是,降雨是个积蓄量,而不是瞬时值,在wrfout中如果需要赢得模拟起止日历内的降雨,需要将临了一个时刻的降雨量减去第一个时刻的降雨量.

图片

import numpy as npfrom netCDF4 import Datasetfrom wrf import (getvar, to_np) import matplotlib.pyplot as pltimport cartopy.crs as ccrsfrom cartopy.mpl.gridliner import LONGITUDE_FORMATTER, LATITUDE_FORMATTERfrom cartopy.io.shapereader import BasicReaderimport matplotlib.ticker as mticker# 读取数据f='E:\BaiduSyncdisk\Code\python\WRF\Data\wrfout_d01_2020-06-11_06_00_00'ncfile = Dataset(f)R = to_np(getvar(ncfile,"RAINC"))+to_np(getvar(ncfile,"RAINNC"))+to_np(getvar(ncfile,"RAINSH"))lon = np.array(ncfile['XLONG'])[0,:,:]lat = np.array(ncfile['XLAT'])[0,:,:]# shape文献读取countries=BasicReader(r'E:\BaiduSyncdisk\Code\Data\shape数据\国界\国度矢量.shp')ten=BasicReader(r'E:\BaiduSyncdisk\Code\Data\shape数据\九段线\九段线.shp')province=BasicReader(r'E:\BaiduSyncdisk\Code\Data\shape数据\2023年省级\2023年省级.shp')# 热情条设立rgb = ([237, 237, 237],[209, 209, 209],[173, 173, 173],[131, 131, 131],        [93 , 93 , 93],[151, 198, 223],[111, 176, 214],
冷光源[49 ,仪器 129,
减速机 189],        [26 , 104, 174],[8  , 79 , 153],[62 , 168, 91],[110, 193, 115],        [154, 214, 149],[192, 230, 185],[223, 242, 217],[255, 255, 164],        [255,饮水机 243, 0],[255, 183, 0],[255, 123, 0],[255, 62 , 0],        [255, 2  , 0],[196, 0  , 0],[136, 0  , 0],)clors = np.array(rgb)/255.clevs = [0.1, 1,  2,  5, 7.5, 10, 13, 16, 20, 25, 30, 35, 40, 50, 60,         70, 80, 90, 100, 125, 150, 175, 200, 250          ]# 绘制fig = plt.figure(figsize=(10, 10))ax = fig.add_subplot(111, projection=ccrs.PlateCarree())contour = ax.contourf(lon,lat, R, clevs, colors=clors, transform=ccrs.PlateCarree())cb_cf = fig.colorbar(contour, ax=ax,ticks=clevs, shrink=.65)ax.add_geometries(countries.geometries(),linewidth=.5,edgecolor='black',crs=ccrs.PlateCarree(),facecolor='none') ax.add_geometries(ten.geometries(),linewidth=.5,edgecolor='black',crs=ccrs.PlateCarree(),facecolor='none') ax.add_geometries(province.geometries(),linewidth=.5,edgecolor='black',crs=ccrs.PlateCarree(),facecolor='none') ax.set_extent([60,140,10,60],crs=ccrs.PlateCarree()) # 小畛域g1=ax.gridlines(draw_labels=True,linewidth=1,color='none',alpha=0.5,linestyle='--',x_inline=False,y_inline=False)g1.top_labels=Falseg1.right_labels=Falseg1.xformatter=LONGITUDE_FORMATTERg1.yformatter=LATITUDE_FORMATTERg1.rotate_labels=Falseg1.xlocator = mticker.FixedLocator(np.arange(60,140,10))g1.ylocator = mticker.FixedLocator(np.arange(10,60,5))g1.xlabel_style={'size':17}g1.ylabel_style={'size':17}

参考贵寓:

https://blog.csdn.net/islandowner2017/article/details/119719854饮水机

https://www.heywhale.com/mw/project/6284b478901f1de4da8c8169 本站仅提供存储作事,整个实质均由用户发布,如发现存害或侵权实质,请点击举报。

Powered by 首页-和富索服装有限公司 @2013-2022 RSS地图 HTML地图

Copyright 站群系统 © 2013-2024 <"SSWL"> 版权所有