WRF-Chem笔记——模式运行流程
总是以忙为借口,断更了几个月,随着各个专栏催更的朋友越来越多,感觉再不更新有点对不住大家,所以以后每周多多少少写点笔记吧,也算是对自己的督促。今天先把以前的存货整理整理放上来凑个数。
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们见谅,很可能是我也不太会。。。
WRF-Chem笔记——模式运行流程相关推荐
- 区域气象-大气化学在线耦合模式(WRF/Chem)在大气环境中的应用
[查看原文]区域气象-大气化学在线耦合模式(WRF/Chem)在大气环境中的应用 随着我国经济快速发展,我国面临着日益严重的大气污染问题.近年来,严重的大气污染问题已经明显影响国计民生,引起政府.学界 ...
- 【体验攻略】于曙光智算计算平台进行气象数值模式WRF的编译、运行和处理
Fr:曙光智算计算平台用户.曙光智算征文活动获奖者 - 流洋 点击参与我们的征文活动~ 多重好礼等你来拿!https://blog.csdn.net/Gkjy_0351/article/details ...
- MFC 学习笔记(一):MFC单文档程序运行流程梳理与总结
MFC 学习笔记(一):MFC单文档程序运行流程梳理与总结 1.MFC单文档程序运行流程 1.首先利用全局变量对象 theApp 启动应用程序 (这是因为这个全局对象,基类CWinApp中 this ...
- 【Docker学习笔记 二】Docker安装、运行流程与常用命令
上一篇Blog详细介绍了Docker为什么会出现,是为了解决什么问题而出现:Docker的基本组成部分.架构.本篇Blog就来详细了解下Docker如何安装.卸载以及常用的操作命令有哪些.因为Dock ...
- 地球气候系统模式cesm的基本运行流程
最近在向师兄学习气候模式CESM (Community Earth System Model),然而师兄似乎很忙的样子,于是只能自己看CESM官网的用户手册学习:http://www.cesm.uca ...
- 爬虫学习笔记(六)——Scrapy框架(一):安装、运行流程及简单使用
文章目录 一.简介 二.安装(Windows) 三.运行流程 3.1.数据流 3.2.组件介绍 3.3.简单使用 3.3.1.项目命令 3.3.2.shell 交互式平台 四.小案例:爬取豆瓣电影 4 ...
- IOS学习笔记1—Iphone程序运行流程
Iphone程序运行流程 main.m文件,iOS应用程序的主入口 main函数的两个参数为命令行参数,在ios开发中不会用到这些元素,包括这两个参数是为了与标准ANSI C保持一致 UIApplic ...
- UcosII移植、调度、功能、运行流程解析
吐槽下csdn的编辑功能,真的菜的抠脚. 接下来,陆陆续续会将语雀的个人笔记搬移到csdn上. 该篇文档过长,建议目录查找关键位置. UcosII是剥夺内核(每个系统节拍会切换到最高就绪优先级任务), ...
- WRF学习笔记之四:撰写WPS intermediate file添加海冰场/NCL学习/WRF进阶:如何向WRF添加额外气象场?
问题简介 我们都知道,在运行WRF模式之前,需要使用其WPS前处理程序,制作对应的模拟域与气象场输入,而WPS主要由3个主程序组成,分别为: geogrid.exe定义模式的模拟域,并将静态地理数据插 ...
最新文章
- 伺服驱动器生产文件_在速度控制和力矩控制方面伺服驱动器与变频器的较量
- Delphi - 我的代码之窗体移动
- 剖析Fragment的Pause生命周期全过程
- javascript等待异步线程完成_作为前端你了解JavaScript运行机制吗?
- ubuntu 10.10 修改下载源的方法
- ftp 530 linux,Linux启动ftp服务器530 Permission denied解决方法
- go设置后端启动_为什么 Rubyists 应该考虑学习 Go
- android toast居中显示_Android和iOS7的差异点!
- 声网 java app视频录制_java 声音的播放与录制
- 计算机课程设计 校园网规划设计与实现,校园网的规划与实现.doc
- phpMyAdmin4.8.1漏洞复现及利用
- 多维数组扁平化的方法
- Window 时间同步 地址
- Android提高与总结的Android技能导图
- linux内核结构介绍及驱动引入
- 服务器网站扩容一年1g价格,服务器网站扩容 一年1G价格
- 用dd命令克隆ubuntu系统
- Android---RecyclerView网络请求图片加载
- 打印机计算机不在同一个工作组,不在一个工作组的两台电脑怎么实现打印共享?...
- AirPlay on Mac/Win
热门文章
- 数据结构课程设计之火车票订票系统实现(C语言/C++版本)
- 在图片不被裁剪时opencv绕图片中任意点旋转任意角度
- jstl标签库常见用法
- VLC-Android音画同步原理
- Ubuntu Linux安装问题
- WinDBG插件编写介绍及在Nano Code中加载扩展
- ps神经网络滤镜用不了,ps滤镜工具怎么使用
- 咪咕音乐给力好歌推荐 “国民妹妹”新作来袭
- php微信小程序毕业设计 php汽车维修保养小程序毕业设计毕设作品参考
- matlab中字母重音符号,支持重音合成的汉语语音合成系统