CESM2.2_CLM5.0 (fake)single point(伪)单点模拟√
0. 前言
single point单点模拟的官方正解已整理
CESM2.2_CLM5.0 single point 单点模拟https://blog.csdn.net/Arr3n/article/details/120771229
但是无奈需要的输出(植被总初级生产力GPP)一直为0,因此尝试另外的方法,曲线救国,用全球的模型框架稍作更改达到单点模拟输出的目的,即 (fake)single point
1. 制作domain、surfdata文件
$ cd /scratch/hcdu/CESM/components/clm/tools/ncl_scripts/
编辑sample_inlist,分别设置剪裁domain、surfdata的底图,注意底图的分辨率(0.9x1.25)对应create_newcase时候--res设置
fatmlndfrc = '/workdir/MODCESM/tcraig/IRESM/inputdata/share/domains/domain.lnd.fv0.9x1.25_gx1v7.151020.nc'
fsurdat = '/workdir/MODCESM/tcraig/IRESM/inputdata/lnd/clm2/surfdata_map/release-clm5.0.18/surfdata_0.9x1.25_hist_16pfts_Irrig_CMIP6_simyr1850_c190214.nc'
编辑sample_outlist,分别是domain、surfdata文件名
fatmlndfrc = 'domain.lnd.fv0.9x1.25_gx1v7.151020_NiwotRidge.nc'
fsurdat = 'surfdata_0.9x1.25_hist_16pfts_Irrig_CMIP6_simyr1850_c190214_NiwotRidge.nc'
使用getregional_datasets工具,输入裁剪的区域边界经纬度(东经,北纬)
$ getregional_datasets.pl -ne 40.5,255 -sw 40,254.3 -I sample_inlist -o sample_outlist
# 这里输入的经纬度值应包含(仅)一个预设的中心格点,即输出的domain文件里的[xc,yc],比如这里的[xc,yc]=[255,40.0524]
# 如果输入的经纬度值不满足要求,模型会返回所有可供选择的中心格点经纬度值,可以以此参考——xc间隔1.25°,yc间隔0.9425°
# 中心格点与边格点[xv,yv]的经度间隔0.625°,纬度间隔0.4712°,这个应该与选用的底图有关
# 与domain和surfdat同时生成的还有一个xmlchange_cmnds
2. Create Case
$ cd /scratch/hcdu/CESM/cime/scripts/
$ ./create_newcase --case ~/CESM_Clm/I2010CLM50bgc_fsinglept --res f09_g17 --compset 2010_DATM%GSWP3v1_CLM50%BGC_SICE_SOCN_SROF_SGLC_SWAV_SIAC_SESP --user-mods-dir /scratch/hcdu/CESM/components/clm/tools/ncl_scripts --mach sofie --run-unsupported
# 这个compset为“默认从2010-01-01开始模拟,大气DATM使用GSWP3v1数据、陆面CLM5.0启用生物地球化学计算,其余模块均关闭”
# 查询compset别称参考:$CESM/components/clm/cime_config/config_compset.xml
# case名称不是默认格式(e.g. I1850CLM50SP),则加最后 run unsupported
# user-mods-dir链接到上面getregional的目录,运行xmlchange_cmnds和user_nl_clm
3. Case xml变量设置(before case.setup)
在$CASEROOT路径下
$ ./xmlchange DATM_CLMNCEP_YR_START=2014 #运行起始年份
$ ./xmlchange DATM_CLMNCEP_YR_END=2014 #运行结束年份
$ ./xmlchange RUN_STARTDATE=2014-01-01 #运行起始日期
# DATM_MODE默认为CLMGSWP3v1,不修改
# DATM_CLMNCEP_YR_ALIGN为并齐年份,默认与起始年份相同
$ ./xmlchange LND_DOMAIN_PATH=/scratch/hcdu/CESM/components/clm/tools/ncl_scripts/
$ ./xmlchange ATM_DOMAIN_PATH=/scratch/hcdu/CESM/components/clm/tools/ncl_scripts/ # domain文件路径
$ ./xmlchange LND_DOMAIN_FILE=domain.lnd.fv0.9x1.25_gx1v7.151020_NiwotRidge.nc
$ ./xmlchange ATM_DOMAIN_FILE=domain.lnd.fv0.9x1.25_gx1v7.151020_NiwotRidge.nc # domain文件名
$ ./xmlchange DIN_LOC_ROOT_CLMFORC=~/data/inputdata/atm/datm7 #输入的大气forcing data路径
# DIN_LOC_ROOT为默认输入数据路径:'/workdir/MODCESM/tcraig/IRESM/inputdata/'
# LND、ATM_DOMAIN默认为 '/workdir/MODCESM/tcraig/IRESM/inputdata/share/domains/ domain.lnd.fv0.9x1.25_gx1v7.151020.nc'
# 此处DOMAIN的设置对应./preview_namelists后$CASEROOT/Buildconf/datm.input_data_list里最后一行的domainfile
# CLM_FORCE_COLDSTART默认关闭'off'。若开启强制冷启动,则无视起始数据finidata
# CLM_BLDNML_OPTS默认为生物地球化学:'-bgc bgc'
$ ./xmlchange STOP_OPTION=nyears # 单次运行
$ ./xmlchange STOP_N=1 # 运行次数
# 单趟运行n次设置的运行单位,结束后resubmit再运行
# REST_OPTION、_N为resubmit之后的设置,默认与STOP_一致
$ ./xmlchange --force JOB_QUEUE=debug # 更改队列
$ ./xmlchange --force JOB_QUEUE=debug
# 运行两次更改队列,是因为模型会有两个进程case.run、case.st_archive
# NTASKS调用核心数默认:[...,'ATM:4', 'LND:4', ...]
# 查询$CASEROOT CLM参数 CESM2_CLM5.0_CASEROOTvariable
$ ./case.setup
4. 编写user_nl_ 、准备streams文件(before case.build)
打开$CASEROOT/user_nl_clm,写入(或者使用 echo " " >>)
fsurdat = "/scratch/hcdu/CESM/components/clm/tools/ncl_scripts/surfdata_0.9x1.25_hist_16pfts_Irrig_CMIP6_simyr1850_c190214_NiwotRidge.nc"hist_mfilt = 31
hist_nhtfrq = -24
use_cn = .true.
hist_fincl1 = 'GPP'
# fatmlndfrc为陆面分离文件,设置了LND_DOMAIN_PATH/FILE后就不用再设这一项了
# finitdat为初始条件文件。若添加有finitdat,可打开use_init_interp对初始条件地图进行插值
# 查询user_nl_clm参数 CESM2_CLM5.0_namelist
在$CASEROOT下执行./preview_namelists在./CaseDocs/生成datm.streams.txt.文件,
$ ./preview_namelist
三个气象数据的datm.streams.txt.文件(TPQW、Solar、Precip)里面domain文件的路径和名称默认链接到domain.lnd.360x720_gswp3.0v1_c170606.nc
# 此处DOMAIN的设置对应./preview_namelists后$CASEROOT/Buildconf/datm.input_data_list里第一行的domain1
# 这一domain文件专门匹配GSWP的数据集,分辨率0.5°(若未修改,在submit后会报错空间分辨率不匹配)
!此教程以下无需操作
注: 若为单点模式(DATM_MODE=1PT)将这些文件添加user_前缀复制到$CASEROOOT
$ cp ./CaseDocs/datm.streams.txt.topo.observed user_datm.streams.txt.topo.observed
$ cp ./CaseDocs/datm.streams.txt.presaero.clim_2010 user_datm.streams.txt.presaero.clim_2010
$ cp ./CaseDocs/datm.streams.txt.CLMGSWP3v1.TPQW user_datm.streams.txt.CLMGSWP3v1.TPQW
$ cp ./CaseDocs/datm.streams.txt.CLMGSWP3v1.Solar user_datm.streams.txt.CLMGSWP3v1.Solar
$ cp ./CaseDocs/datm.streams.txt.CLMGSWP3v1.Precip user_datm.streams.txt.CLMGSWP3v1.Precip
将$CASEROOT/CaseDocs/里的datm_in内容复制到$CASEROOT下的user_nl_datm,在里面修改变量设置
# $CASEROOT/user_nl_datm的配置是在./xmlchange的基础上去进行修改的(优先级最高),决定了$CASEROOT/Buildconf/datm.input_data_list的内容
再次运行./preview_namelists,模型根据修改后的stream文件,更新./BuildConf下文件的信息,其中关键的是datm.input_data_list的内容
!此教程以上无需操作
执行./check_input_data检查输入数据,同时检查输入forcing data是否齐全
$ ./preview_namelists
$ ./check_input_data
$ ./case.build --skip-provenance-check
5. Case submit ✔
$ ./case.submit
CESM2.2_CLM5.0 (fake)single point(伪)单点模拟√相关推荐
- .net core 1.0 实现负载多服务器单点登录
前言 .net core 出来有一时间了,这段时间也一直在做技术准备,目前想做一个单点登录(SSO)系统,在这之前用.net时我用习惯了machineKey ,也顺手在.net core 中尝试了一上 ...
- 教程篇(7.0) 06. FortiGate基础架构 单点登录(FSSO) ❀ Fortinet 网络安全专家 NSE 4
在本课中,你将学习Fortinet单点登录(FSSO).当你使用此功能时,你的用户不需要每次访问不同的网络资源时都登录. 本节课,你将学习这上图显示的主题. 通过展示理解SSO概念的能力,你将能 ...
- 【教程】在天河上安装、移植并验证CESM2.2.0
文章目录 基本情况 环境配置 所需环境 CESM2 Software/Operating System Prerequisites 使用source脚本配置模块和环境变量 MPI测试 CESM安装及移 ...
- cesm2(clm5.0)移植方法
#武汉加油,浙江加油,中国加油!# 断断续续花了2个多月才把cesm2移植到centos6上,目前尚无cesm2完整的移植教程,在移植过程中也遇到了不少问题,所以在这里记录下,大致完整,但某些细节可能 ...
- Ubuntu 14.10 安装 hadoop-2.6.0单机配置和伪分布式配置
安装openssh-server(用于远程连接) sudo apt-get install ssh openssh-server sudo apt-get install ssh openssh-cl ...
- Hadoop2.6.0在MAC下伪分布安装
一.配置ssh,无密码登录 1.mac开启ssh 2. mac上已经ssh了,在终端输入ssh-keygen -t rsa命令,碰到需要输入密码的直接按enter健即可.以rsa算法,生成公钥.私钥对 ...
- Hadoop1.2.0在MAC下伪分布安装
一:下载jdk 选择最新版本下载,地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 安装完成之后,打开终端,输 ...
- Fake GPS-Window Mobile提供的模拟GPS工具
GPS Intermediate Driver 自从 Windows Mobile 5.0 引进了 GPS Intermediate Driver(GPS 中间驱动程序,以下简称 GPSID),开发基 ...
- 设计1.0 -- iterator 和const_iterator底层的模拟实现
本文概要: 本文主要是模拟实现STL中迭代器和const迭代器的,主要阐述的一个问题就是,为什么我们在设计迭代器的时候需要使用三个模板参数呢 在设计迭代器的时候,我们有下面的代码 #include&l ...
最新文章
- 关于大型网站技术演进的思考(五)--存储的瓶颈(5)
- 亚马逊刊登php代码,最全的亚马逊刊登listing工具了解一下
- 人工智能时代,机器视觉技术的未来趋势
- python pytorch fft_PyTorch 中的傅里叶卷积实现示例
- 借助LDA主题分析的短文本相似性计算 - 综述帖
- 跟面试官聊到JVM,他99%会让你谈谈这个问题!
- Visual studio docker build no such file or directory
- TensorFlow 卷积神经网络实用指南 | iBooker·ApacheCN
- Android 中的Intent的某些用法
- 20多行 Python 代码优雅搞定 PDF 转换成图片
- 活得自我一点,做自己想做的事情,有意义的事情
- pb 数据窗口 *号隐藏_王者荣耀背后的腾讯自研数据库TcaplusDB实践
- LRC软件测试自学,LRC滚动歌词制作编辑器
- 解析数论导论中的符号
- CSS进阶 如何实现圆形半圆
- 定时器alarm函数
- 5G QoS控制原理专题详解-基础概念(3)
- iPad半年使用心得
- jmeter参数化设置
- solaris 的ZFS操作
热门文章
- 【12】linux命令每日分享——echo命令为用户添加密码
- STM32实现蓝牙HC-06通信
- android防拷贝防复制,用防拷贝u盘软件实现禁止复制u盘内文件、u盘加密防拷贝法...
- 计算机会比人类更聪明吗 英语课文,自考英语二(下)课文翻译之unit15
- 谷歌扩展装不上,清单文件缺失或不可读取 无法加载清单。解决方法
- 有一分数序列: 输入正整数n,计算该数列前n项的和。
- Latex中关于引号的使用
- java图片转为rgb矩阵_[转载]图像类型转换--RGB图像、索引图像、灰度图像、二值图像和数据矩阵(1)...
- python实现超市扫码仪计费
- JAVA——实现打印1到100之内的整数,但数字中包含9的要跳过