WRF-Chem笔记——模式运行流程
WRF-Chem模式运行流程简介:参考资料:WRF-chem官网:https://ruc.noaa.gov/wrf/wrf-chem/WRF官网:http://www2.mmm.ucar.edu/wrf/users相关下载链接:http://www2.mmm.ucar.edu/wrf/users/download/get_sources.html常用模块:WPS(WRF Preprocessing
总是以忙为借口,断更了几个月,随着各个专栏催更的朋友越来越多,感觉再不更新有点对不住大家,所以以后每周多多少少写点笔记吧,也算是对自己的督促。今天先把以前的存货整理整理放上来凑个数。
CESM和GEOS-Chem的模式工作流都写了,WRF-Chem也该闪亮登场了,嘿嘿。
简介:
参考资料:
WRF-chem官网:WRF-Chem
WRF官网:http://www2.mmm.ucar.edu/wrf/users
相关下载链接:
http://www2.mmm.ucar.edu/wrf/users/download/get_sources.html
常用模块:
WPS(WRF Preprocessing System):WRF预处理系统,用来为WRF模型准备输入数据;如果是理想实验则不需要WPS来处理真实数据。
WRF:WRF是数值求解的模块,有两个版本:ARW(advanced Research WRF)和NMM(Nonhydrostatic Mesoscale Model)。通常使用ARW。
附加模块:
WRFDA:用于数据同化
WRF-Chem:用于化学传输
WRF-Plus:包括了WRF-Adjoint等
模式安装:
源文件下载及安装(WRFV3、WPS以及可选的 WRFDA、WRF-chem等)
库函数安装和环境变量配置(Fortran、MPI、 Jasper、libPNG、Zlib、 Netcdf、NCL等)
1. 下载:参考篇头的网站
共三个文件:WPSV4.0.TAR.gz WRF-ChemV4.0.TAR.gz WRFV4.0.TAR.gz
注意:老版本中解压完WRF-Chem要把chem手动放进WRF中,4.0新版本好像不需要。
解压:tar –xzvf *.tar.gz
2. 环境准备
1)Linux系统
2)Zlib库
3)Hdf5库
4)netcdf-c与netcdf-fortran安装(重要)
3. 编译:
WPS编译
./clean
编译有问题修改configure.wps
可参考的链接:用WRF模型进行气象模拟入门(1)——简介以及代码编译 - xg1990
./clean –a
./configure
选对应服务器的设置:比如我自己的一般是选: Linux x86_64, Intel compiler (dmpar)
这步如果未选对,可能ungrib.exe无法正常生成
serial: 串行计算
dmpar: 分布式并行计算(distributed memory option),即使用openMP,大部分多核电脑都支持这项功能
smpar: 内存共享并行计算(shared memory option),即使用MPI进行并行计算,主要用在计算集群
./compile em_real >& log &或者nohup ./compile em_real >& log &
这步会用到configure生成的configure.wps, 需要把该文件中的几个路径改对
资料前处理 (WPS,WRF Preprocessing System,理想模拟不需要)
1. 先设置namelist.wps,修改&share和&geogrid
参数设置参考:
科学网—WRFV3使用指南:WPS之geogrid.exe - 刘磊的博文 (sciencenet.cn)
科学网—WRFV3使用指南:WPS之metgrid.exe - 刘磊的博文 (sciencenet.cn)
科学网—WRFV3使用指南:WPS之ungrib.exe - 刘磊的博文 (sciencenet.cn)
提取地形资料生成静态文件(./geogrid.exe)
解压观测资料生成中间文件(./ungrib.exe)
以上二者水平插值生成初始资料(./metgrid.exe)
模式运行 (在WRFV3/run/目录下操作)
PS:在WRFV3下先复制run文件夹再进行操作(只要在此目录下完整复制run目录可以完整运行wrf.exe),如cp –rf ./run ./run_01,这样方便进行多次敏感性试验。
进入如上述的run_01文件夹后:
对初始资料垂直插值(./real.exe)
运行模式进行计算(./wrf.exe)
具体流程如下:
输入“vim namelist.input”设置时间、domain、参数化等(domain一定要与WPS一致!)
参数设置参考:
WRF user guide: WRF Users' Guide (ucar.edu)
WRF-Chem user guide: Users_guide.pdf (noaa.gov)
科学网—WRFV3使用指南:认识Vtable - 刘磊的博文 (sciencenet.cn)
科学网—WRFV3使用指南:云微物理参数化 - 刘磊的博文 (sciencenet.cn)
- “ln -s ../../WPS/met_em* .” (把wps经过水平插值的文件链接过来)
- “./real.exe”或 “./real.exe >&log”(将输出保存到log文件中)
查看rsl.error.0000检查real.exe是否运行成功
此时namelist.input中的5,6,7对应为0,即关闭排放
或提交到tianhe为:“yhrun –n 28 –p debug ./real.exe”
yhrun为提交命令, 28为核数,debug为分区
./real.exe完成后,会
- 生成wrfinput_d0x 为初始场,每个 domain 一个
- 生成wrfbdy_d01 为边界场,仅 d01 有
- 接下来做三个排放(这里仅介绍流程,怎么做排放之后有空再单独写吧):
人为排放(anthropogenic emission):指人类生命活动产生的各种排放,包括有机和无机,常用的有EDGAR\MIX\MEIC。 关于排放源文件下载查看:
WRF-Chem笔记——相关数据下载网址链接- CSDN搜索
生物质排放(bio emission):指植物生命活动产生的排放,多为VOC类,常用MEGIN
生物质燃烧排放(biomass burning):指生物质燃烧包括秸秆燃烧和野火,常用FINN的卫星观测
人为排放
在/home/zjjiang/WRF/Large_emis/make_anth_emissions_step/下完成,
/make_anth_emissions_step_CBMZ(CBMZ机制)
具体步骤参见:
Generating Anthropogenic Emissions for WRF-Chem
User’s Guide for Generating Anthropogenic Emissions for WRF-Chem
生物质排放
在MEGAN下完成
进入.. /MEGAN/megan_code/目录下,
“vim megan_bio_emiss_2014.inp”,修改对应的domains,wrf_dir,起始月份和终止月份,(注意如果是1月,则设置应为start_lai_mnth=1, end_lai_mnth=12)等
“ ./megan_bio_emiss <megan_bio_emiss_2014.inp”
生物质燃烧排放
在FINN下完成
进入../FINN/src/目录下,
“vim finn2wrf*.inp”,修改对应的domains,fire_filename,等
“./fire_emis <finn2wrf*.inp”
使用combine*.m将单个文件合成大文件
- 三个排放文件做好之后,移动到/run_01/目录下,修改namelist.input中的5,6,7对应改为2, 即打开排放,然后第二次运行“./real.exe”(即重复操作)
- 做边界场
下载注意事项:
东西南北边界要覆盖住整个domain1
时间要覆盖住整个模拟时间,可以对应模拟时间前后加一天
在MOZBC下完成
进入.. /MOZBC/目录下,
“vim SAPRC_MOSAIC_4bins2.inp”,修改对应的domain,dir_wrf,等
“./mozbc < SAPRC_MOSAIC_4bins2.inp”
注意使用对应化学机制的文件
注意化学机制需要和chem_opt对应上,如:CBMZ对应chem_opt=9
domain =1,2,3…… 从外到里修改进行边界场制作
注:自2022年3月,边界场文件从MOZART转到CAM-Chem, inp文件修改参考这篇:
https://blog.csdn.net/qq_27984679/article/details/124360384
运行模式进行积分计算
直接运行:“./wrf.exe”或 “./wrf.exe >&wrflog”(wrflog为输出日志)
Pbs作业提交系统:qsub wrf.pbs
对应修改wrf.pbs
关键行:mpirun -np 48 ./wrf.exe > log
或提交到超算比如tianhe为:“yhbatch –n 84 –p TH_HPC1 ./runwrf.sh”
- 会生成 wrfout_d0X_YYYY-MM-DD_00:00:00 等输出(每个 domain 一个)
- 看积分进程:vim rsl.error.0000
- 若要看实时进程:
- tail –f rsl.error.0000 (退出按ctrl+c即可)
- “vim rsl.error.0000”可以查看模式错误信息
- 若嫌输出文件太大,有的物理量又不需要,想改输出文件容量大小设置,可在积分前在WRFV3目录下进Registry目录修改 Registry.EM_COMMON 文件里的参数,h(history)表示会输出的变量,再重新编译!(初学者请勿进行此操作,此备注仅作为以后科研参考。
结果分析(NCL、RIP4、ARWpost+GrADS、ARWpost+Vis5D、VAPOR等)
这只是一个大概流程啦,细节的问题大家按自己的需要多多摸索吧~好久不跑我手也生了,所以大家看个热闹,别问我太难的问题,我答不上来。。。然后虽然断更了好久,但粉丝数量好像一直在涨,问问题的同学也多了不少,所以回复比较随机哈,没回的UU们见谅,很可能是我也不太会。。。
更多推荐
所有评论(0)