CESM1.2运行B模块及ocn_run_mct问题解决

运行B case需要什么?

首先,作为大气人,时常运行的是F case,但是有些研究确实需要B case来帮助我们解决问题,这时候小白作为一个长期使用F case的人,就发现相同的安装方式,在有些服务器可以运行B case(很少),但是大部分运行不了。我们首先解决这个问题。
cesm_setup过程报错信息如下:

Can't locate Switch.pm in @INC .......

针对这个问题,就是perl5缺失了Switch.pm这个文件,因此我们要补上:
我们采用最简单的方法cpan工具解决:

cpan 
install Switch.pm

一般这样处理能解决问题,如果还有类似的问题,可以考虑安装一下libxml2和XML的四个插件(安装过程,详见另一个帖子

下面以BWCN模块为例,来说明运行过程中的bug
首先正常的create newcase,setup, build这些都一样(详见
但是,海洋具有更大的热惯性(小白非海洋专业,不知道对不对),因此需要更长的spin-up时间。
因此,pop2设置有一个独立与大气的热启动方案,设置如下:
该文档在run/pop2_in,也可以在script/$case/user_nl_pop2里面改

&init_ts_nml
 init_ts_file = '/public/home/yupf/model/install/cesm1.2/output/BWCN/run/BWCN.pop.r.0001-01-06-00000.nc'
 init_ts_file_fmt = 'nc'
 init_ts_option = 'ccsm_branch'
 init_ts_outfile = './BWCN.pop.h.ts_ic'
 init_ts_outfile_fmt = 'nc'
 init_ts_suboption = 'spunup'
/

下面每个参数简单讲解一下:
init_ts_file 是海洋的initial file, 默认是二进制文件,但是是支持使用nc文件的(可以用某个试验的重启文件)
init_ts_file_fmt 如果initial file是nc文件,这个参数需要设置成’nc’
init_ts_option = ‘ccsm_branch’ 这个如果用的是热启动,也就是某个试验的初始场启动,需要把这个改成branch,默认是startup
init_ts_suboption = ‘spunup’ 这个一定要记得改,默认是null

运行B case遇到的bug:ocn_run_mct?

紧接着需要讲解一下关于热启动遇到的bug
情况:大气模块运行了两天,然后就断了,报错如下:

(shr_sys_abort) WARNING: calling shr_mpi_abort() and stopping
  pop2 ymd=       10107   pop2 tod=            0
  sync ymd=       10108   sync tod=            0

这是大气的时间和海洋时间差了一天导致的
后面发现大气模块的启动时间需要和海洋的热启动文件的时间对应。
如果海洋启动文件是:00010106;大气需设置成:00010105
如此,便可以解决以上bug。

至于如何使用B模块,开展一些大气模块具有的化学包的试验(namelist冲突),后面有时间在详细记录。

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值