It is our choices |

陆詟水栗

园龄:2年3个月粉丝:6关注:1

2021-06-30 17:16阅读: 358评论: 0推荐: 0

WRF嵌套网格的设计

o(╥﹏╥)o

为了设计WRF嵌套网格,我在网上冲浪查找了许多的教程ᕦ(・ㅂ・)ᕤ,参考了六出的博客:怎么利用QGIS设计WRF嵌套域网格,也参考了B站唐学秋的视频:学习备忘录/ 如何使用WRFDomainWizard以及利用panoply简单处理nc文件,两位的方法都很好,推荐大家阅读参考,我这里总结一下,顺便也提出一些自己的一点想法o(´^`)o

2022.11.7更新
今天冲浪的时候,在气象家园发现了帖子新网页版 WRF Domain Wizard才知道,原来,WRF Domain Wizard还有网页版,大家可以去试一下。另外还有帖子里提到的QGIS的插件GIS4WRF,大家感兴趣也可以试试,我看这个插件还蛮方便,有时间我想试用一下哈哈。
在这里插入图片描述
在这里插入图片描述

一、网格的粗略设计

网格的粗略设计我用的ArcGiS来替代QGIS,因为用了五年ArcGIS比较顺手(✪ω✪)。(PS.QGIS吹爆,太好用啦,还开源,我近期正在转QGIS,但是还有一点生疏,这里就不献丑啦|ू・ω・` )

首先需要下载中国各省行政地图,最好是只有国界线和省界限的,可以去麻辣 GIS 网站搜索中国地图然后下载解压。用 ArcGIS 打开中国地图 shp 文件,可以看到,看source这个文件的坐标系是CGCS2000的,用ArcGIS工具箱中的Project工具(如下图)把它转化成WGS84坐标,这样地理坐标系就有啦,同理再为它定义一个投影坐标系,一般选择Asia_Lambert_Conformal_Conic投影,然后参考各省位置,绘制你感兴趣区域的网格。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-weEpOK53-1625043627885)(WRF%E5%B5%8C%E5%A5%97%E7%BD%91%E6%A0%BC%E7%9A%84%E8%AE%BE%E8%AE%A1%20173015833da948c7a151efc0e53b6ba4/Untitled.png)]

接下来就可以设置网格啦,使用Create Fishnet工具(如下图)

在这里插入图片描述

我设计的是27000m,9000m,1000m三层嵌套,所以直接将cell size分别设置为27000m,9000m,1000m即可
在这里插入图片描述

2022.11.7更新
大家不要像我这样设计网格,最好让内层网格处于外层网格的中心位置,我这样设计,后面运行会出错,详见WRF运行wrf.exe出现forrtl: severe (174): SIGSEGV, segmentation fault occurred问题原因与解决合集第六点。

在这里插入图片描述

这样就可以愉快地查网格啦,使用ArcGIS的这个工具:
在这里插入图片描述
选中网格即可自动跳出选中网格数

按照下图查就可以啦,默认左下角为(0,0)

https://img-blog.csdnimg.cn/20200922215000216.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI5NjMxOA==,size_16,color_FFFFFF,t_70

查好后得到

parent_id =
parent_grid_ratio =
i_parent_start =
j_parent_start =
e_we =
e_sn =
geog_data_res =
dx =
dy =

再把网格在WGS84坐标系下打开,找d01中心网格,软件右下角看它的坐标,就是中心点坐标

二、利用WRFDomainWizard得到namelist.wps

运行WRFDomainWizard

在WRFDomainWizard文件夹下面,打开终端,输入:

chmod +x run_DomainWizard
run_DomainWizard

初始界面如下,设置WPS路径,地理数据路径,在WPS同级文件夹下创建Domains文件夹:
在这里插入图片描述

创建新的Domain,点击Next:
在这里插入图片描述

命名完domain,输入刚才设置的网格参数:

中心经纬度,投影选择兰伯特投影,外层网格大小

设置嵌套网格,点击Netsts→New

其中Parent ID: 指定每一个网格嵌套进的上一层粗网格的编号(也称为父网格)。如图1,编号为1,2,3,4(图中以d01,d02,d03,d04表示)四个网格的parent_id分别是1(编号为1的网格的父网格即自身),1,2,1:最大父网格左下角是原点0,0
在这里插入图片描述

Grid spacing ratio to parent:父网格格点间距/嵌套网格格点间距

Geographic data resolution:地理数据分辨率

外层网格左下角为坐标0,0点

(LLI)Left:嵌套网格左侧边界网格数(按照外层网格数算)

(URI)Right :嵌套网格右侧边界网格数(按照外层网格数算)

(URJ) Top :嵌套网格上边界网格数(按照外层网格数算)

(LLJ)Bottom:嵌套网格下边界网格数(按照外层网格数算)

点击Next,在Domains下面生成文件:
在这里插入图片描述

最主要的是namelist.wps

在运行geogrids.exe前,可利用WPS根目录下util文件夹中的plotgrids.ncl程序查看设置的网格。只需要设置好namelist中网格个数、大小、位置信息,即可调用该程序。

输入:

ncl util/plotgrids_new.ncl

查看结果如下:
在这里插入图片描述

基本没啥问题

将WRF主程序链接过来:

ln -sf /home/master2020/guolh/Build_WRF/WRFV3/run/* .

去掉程序原有namelist.input

rm -rf namelist.input

修改EAT层数设置,选择线性化,27层

根据需要,修改时间步长,防止段错误吐核

注意time_step=6*dx 要与嵌套网格元胞尺寸匹配,最好弄小一点,别乘以6

运行geogrid时,缺文件去https://www2.mmm.ucar.edu/wrf/src/wps_files/https://www2.mmm.ucar.edu/wrf/users/download/get_sources_wps_geog.html

依次运行geogrid、ungrid、metgrid后

编辑namelist.input如下:

&time_control
run_days = 0, (运行时间(天))
run_hours = 06, (时)
run_minutes = 0, (分)
run_seconds = 0, (秒)
start_year = 2006, 2006, 2003, (起始年份)
start_month = 08, 08, 07, (起始月份)
start_day = 16, 16, 09, (起始日数)
start_hour = 12, 12, 00, (起始小时)
start_minute = 00, 00, 0 (起始分钟)
start_second = 00, 00, 00, (起始秒数)
end_year = 2006, 2006, 2003,
end_month = 08, 08, 07, (对应的结束时间)
end_day = 16, 16, 10,
end_hour = 18, 18, 00,
end_minute = 00, 00, 00,
end_second = 00, 00, 00,
interval_seconds = 21600,(前处理程序的两次分析时间之间的时间间隔)
input_from_file = .true.,.true.,.false.,(嵌套初始场输入选项。嵌套时,指定嵌套网格是否用不同的初始场文件)
history_interval =180, 60, 60,(指定模式结果输出的时间间隔,以分钟为单位)
frames_per_outfile =1000, 1000, 1000,
restart = .false., (是否进行重行启动)
restart_interval = 1440, (重起时间间隔)
io_form_history = 2, (2 = NetCDF
io_form_restart = 2, (指定模式断点重启输出的格式, 2为netCDF格式)
io_form_input = 2, (2 = NetCDF
io_form_boundary = 2, (指定模式边界条件数据的格式)
1 二进制格式
2 NetCDF格式
4 PHD5格式
5 GRIB1格式
debug_level=0(此选项指定模式运行时的调试信息输出等级。取值可为050100200300,数值越大,调试信息输出就越多,默认值为0
/
&domains
time_step =180,
(积分的时间步长,为整型数,单位为秒,在真实大气中推荐值为dx公里数的6倍)
time_step_fract_num =0,
(实数型时间步长的分子部分)
time_step_fract_den =1,
(实数型时间步长的分母部分)
max_dom =2,
(最大区域数)
s_we =1, 1, 1,
(x方向(西—东方向)的起始格点值(通常为1))
e_we =74, 112, 94,
(x方向(西—东方向)的终止格点值(通常为x方向的格点数))
s_sn =1, 1, 1,
(y方向(南—北方向)的起始格点值(通常为1))
e_sn =61, 97, 91,
(y方向(南—北方向)的终止格点值(通常为y方向的格点数))
s_vert =111
(z方向(垂直方向)的起始格点值)
e_vert = 28, 28, 28,
(z方向(垂直方向)的终止格点值,即全垂直eta层的总层数。垂直层数在各嵌套网格中必须保持一致)
dx = 30000, 10000, 3333,
(指定 方向的格距(单位为米) 。在真实大气方案中,此参数值必须与输入数据中的x方向格距一致)
dy = 30000, 10000, 3333,
(指定y方向的格距(单位为米)。在真实大气方案中,此参数值必须与输入数据中的x方向格距一致)
grid_id =123
(计算区域的编号,一般是从1开始)
parent id =012
(嵌套网格的上一级网格(母网格)的编号,一般是从0开始)
i_parent start =0, 31, 30,
(嵌套网格的左下角(LLC)在上一级网格(母网格)中x方向的起始位置)
j.parent_start =0, 17, 30,
(嵌套网格的左下角(LLC)在上一级网格(母网格)中y方向的起始位置)
parent grid_ratic =133
(母网格相对于嵌套网格的水平网格比例)
parent time_step_ratio =133
(嵌套时,母网格相对于嵌套网格的时间步长比例)
feedback =1.
(嵌套时,嵌套网格向母网格得反馈作用。设置为0时,无反馈作用。而反馈作用也只有在母网格和子网格的网格比例(parentgrid—ratio)为奇数时才起作用)
smooth_option =0
(向上一级网格(母网格)反馈的平滑选项,只有设置了反馈选项为1时才起作用的)
/
&physics
mp_physics = 3, 3, 3,
设置微物理过程方案,默认值为 0
0 不采用微物理过程方案
1 Kessler 方案 (暖雨方案)
2 Lin 等的方案 (水汽、雨、雪、云水、冰、冰雹)
3 WSM 3类简单冰方案
4 WSM 5类方案
5 Ferrier(new Eta)微物理方案(水汽、云水)
6 WSM 6类冰雹方案
8Thompson的冰雹方案
98 NCEP 3类简冰方案 (水汽、云/冰和雨/雪)
99 NCEP 5类方案(水汽、雨、雪、云水和冰)
ra_lw_physics = 1, 1, 1,
此选项指定长波辐射方案,默认值为 0
0 不采用长波辐射方案
1 rrtm 方案
99 GFDL (Eta) 长波方案 (semi-supported)
ra_sw_physics = 1, 1, 1,
此选项指定短波辐射方案,默认值为 0
0 不采用短波辐射方案
1 Dudhia 方案
2 Goddard 短波方案
99 GFDL (Eta) 短波方案 (semi-supported)
radt = 10, 10, 10,
(此参数指定调用辐散物理方案的时间间隔,默认值为 0, 单位为分钟。建议与dx的公里数取同样的值)
sf_sfclay_physics = 1, 1, 1,
此选项指定近地面层(surface-layer)方案,默认值为 0
0 不采用近地面层方案
1 Monin-Obukhov 方案
2 MYJ Monin-Obukhov 方案 (仅用于MYJ 边界层方案)
sf_surface_physics = 1, 1, 1,
此选项指定陆面过程方案,默认值为 0
0 不采用陆面过程方案
1 热量扩散方案
2 Noah 陆面过程方案
3 RUC 陆面过程方案
bl_pbl_physics =1, 1, 1,
此选项指定边界层方案,默认值为 0
0 不采用边界层方案
1 YSU 方案
2 Eta Mellor-Yamada-Janjic TKE(湍流动能) 方案
3 NCEP Global Forecast System方案
99 MRF 方案
bldt = 0, 0, 0,
(此参数指定调用边界层物理方案的时间间隔,默认值为 0,单位为分钟。此参数指定调用边界层物理方案的时间间隔,默认值为 0,单位为分钟。0 (推荐值)表示每一个时间步长都调用边界层物理方案)
cu_physics = 1, 1, 0,
此选项指定积云参数化方案,默认值为 0
0 不采用积云参数化方案
1 浅对流Kain-Fritsch (new Eta)方案
2 Betts-Miller-Janjic 方案
3 Grell-Devenyi 集合方案
4 Simplified Arakawa-Schubert方案
99Kain-Fritsch 方案
cud = 5, 5, 5,
(积云参数化方案的调用时间间隔,默认值为 0, 单位为分钟。 一般的积云参数化方案是每一步都要调用,但如果是用Kain-Fritsch 方案(cu_physics=1),则可以设cudt=5)
isfflx = 1,
在选用扰动边界层和陆面物理过程时(sf_sfclay_physics = 1)是否考虑地面热量和水汽通量,默认值为1
0 不考虑地面通量
1 考虑地面通量
ifsnow = 0,
是否考虑雪盖效应。考虑雪盖效应时,必须要有雪盖输入场。默认值为0,只有在利用扰动边界层PBL预报土壤温度时才有效,即sf_surface_physics = 1
0 不考虑雪盖效应
1 考虑雪盖效应
icloud = 1,
辐射光学厚度中是否考虑云的影响,默认值为1。仅当ra_sw_physics = 1 和 ra_lw_physics = 1时有效。
0 不考虑云的影响
1 考虑云的影响
surface_input_source = 1,
1 SI/gridgen(由SI的gridgen_model.exe程序产生)
土地利用类型和土壤类型数据的来源格式,默认值为1
2 其他模式产生的GRIB码数据(VEGCAT/SOILCAT 数据)
num_soil_layers = 5,
指定陆面模式中的土壤层数,默认值为5
5 热量扩散方案
4 Noah 陆面过程方案
6 RUC 陆面过程方案

修改完退出保存
然后运行WRF模块,命令如下:

ulimit -s unlimited
(or:unlimited ,此命令防止溢出问题出现,当出现此问题为溢出:
5 points exceeded cfl=2 in domain 1 at time 4.200000
MAX AT i,j,k: 123 48 3 cfl,w,d(eta)= 4.165821
21 points exceeded cfl=2 in domain 1 at time 4.200000
MAX AT i,j,k: 123 49 4 cfl,w,d(eta)= 10.66290),解决方案检查时间积分步长,减少时间积分步长)
./real.exe
vi rsl.error.0000

看运行成功了没

运行成功会提示:SUCCESS COMPLETE REAL_EM INIT

ls

将会有这几个文件生成

wrfinput_d01 (初始场文件)
wrfinput_d02 (初始场文件)
wrfbdy_d01 (边界条件文件)

然后接下来运行主模块

然后并行运算运行wrf.exe:

mpirun -np 8 ./wrf.exe

检查日志文件:

vi rsl.error.0007

看到success complete WRF即运行成功

ls
wrfout_d01_2019-04-01_12:00:00
wrfout_d02_2019-04-01_12:00:00

最近比较忙,没时间写博客啦─=≡Σ(((つ•̀ω•́)つ,暂时就是这样,下期见

本文作者:陆詟水栗

本文链接:https://www.cnblogs.com/AllenG/p/18078641

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   陆詟水栗  阅读(358)  评论(0编辑  收藏  举报  
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起