减少WRF输出变量

WRF输出文件一般会很大,尤其是高精度、大范围等的模拟。但有一些输出变量或许是用不到的,存在out文件里浪费空间,故删除部分用不上的变量。

这篇文章中,已经获得了wrfout文件的变量信息。接着在Python中输入:

list(d.keys())

即可获得一连串的变量名:

在这里插入图片描述
复制到word中,删除头尾符号,中间的符号和空格替换成英文的逗号。

新建一个select.txt文件(任意名字都可以),将要删除的变量名写入,格式如下。每行末尾不要有逗号,可写入多行,亦可写一行。

-:h:0:AOD_OUT,AOD2D_OUT,ATOP2D_OUT,ICN_DIAG,NC_DIAG,CLDFRA2,RAINPROD,EVAPPROD,UST_T,ROUGH_COR,SMOIS_COR
-:h:0:DRYDEPVEL,DRY_DEP_LEN,EBIO_ISO,EBIO_API,LAI_VEGMASK,DMS_0,PHOTR204,PHOTR201,PHOTR202,PHOTR203,op1,op2,ora1
-:h:0:ora2,olt,oli,tol,xyl,ket,mgly,onit,csl,iso,ethp,par,to2,cro,open,op3,ro2,ano2,nap,xo2,xpar,isoprd,isopp,isopn,isopo2,so4_a01,no3_a01
-:h:0:cl_a01,nh4_a01,na_a01,oin_a01,oc_a01,bc_a01,hysw_a01,water_a01,num_a01,so4_a02,no3_a02,cl_a02,nh4_a02,na_a02,oin_a02,oc_a02

该文件放入运行WRF的目录中,最好和namelist.input放同一文件夹下。

在namelist.input的第一块&time_control最后一行输入:(有几层嵌套就写几个文件名,每层嵌套可设置不同的变量增减)

iofields_filename                   = 'select.txt',  'select.txt'

正常运行即可


重新编译前务必先复制一个已有的编译好的WRFV3,以防发生错误导致已有的WRF不能正常使用。
需要注意的是,默认状态下select.txt文件中只支持减少最多200个变量,若需要增加变量个数,则应该要编辑WRFV3/frame/module_domain.F文件,在第71行更改数字大小,重新编译即可。(在WRFV3目录下先输入./clean, 再输入./configure,选择计划选项,最后输入./compile em_real &> compile.log & )

71     INTEGER, PARAMETER :: max_hst_mods = 200

重新编译前务必先复制一个已有的编译好的WRFV3,以防发生错误导致已有的WRF不能正常使用。
重新编译前务必先复制一个已有的编译好的WRFV3,以防发生错误导致已有的WRF不能正常使用。
重新编译前务必先复制一个已有的编译好的WRFV3,以防发生错误导致已有的WRF不能正常使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值