当前位置: 首页 > 工具软件 > esm.sh > 使用案例 >

cas-ESM 安装教程

毛弘博
2023-12-01

目录

前言

一、准备环境和代码

1.拷贝代码

二、机器相关的脚本文件配置

1.复制配置文件并命名

2.修改配置文件

(1)Macros.huanmy_intel 

(2)config_machine.xml

三、创建case和编译

1.创建case

2.编译case

四、运行case

1.编写作业脚本

2.拷贝陆面模式初始场和强迫场

(1)mkdir timing

(2)陆面资料

 (3)修改一些in的 参数

3.提交和查看作业脚本


前言

之前一只在发展和运行cesm ,而我的主要博士任务是发展cas-esm,之前一直是受困于没有代码和运行方法。

今天我终于和所里的发展cas-esm 动力框架的老师联系,给了我代码和运行的方法。

下面将要进行cas-esm 的移植和运行:


 

一、准备环境和代码

1.拷贝代码

因为都是在密云的大科学装置上的,所以只需要将代码考到我的目录里就可以。

只需要用到cp命令

cp -r xxx  /data/name/cas-esm/

其中xxx是cas-esm的代码路径

2.加载环境

 .bashrc

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi

# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=

# User specific aliases and functions
alias tl='tail -f'
alias yhq='squeue'
alias yhi='sinfo' 
alias yc='scancel'
#alias ls='ls -lh --time-style="+%Y-%m-%d %H:%I:%S"'

module purge
#module use ~/.module           #intelmpi2018
module load compiler/intel/2017.5.239
module load mathlib/netcdf/intel/4.4.1
#czy module load apps/ncl_ncarg/6.3.0
module load apps/ncl_ncarg/6.6.2
module load apps/nco/intel/4.8.1
module load apps/anaconda3/5.3.0
module load mathlib/cdo/intel/1.10.19
module load mathlib/hdf5/intel/1.8.20
module load mathlib/jasper/intel/1.900.1
module load mathlib/jpeg/intel/9a
module load mathlib/libpng/intel/1.2.12
module load mathlib/pnetcdf/intel/1.12.1
module load mathlib/szip/intel/2.1.1
module load mathlib/udunits/intel/2.2.28
module load mpi/intelmpi/2017.4.239
#module load mpi/intelmpi/2018.4.274
module load mathlib/zlib/intel/1.2.11
export PATH=/public/home/zhangh/soft/jdk-16.0.1/bin:$PATH
alias panoply=/public/home/zhangh/soft/PanoplyJ/panoply.sh
. /public/software/apps/anaconda3/5.3.0/etc/profile.d/conda.sh
export ncview=/public/software/apps/ncview-2.1.7
export PATH=/public/software/apps/ncview-2.1.7/intel/bin:$PATH

二、机器相关的脚本文件配置

1.复制配置文件并命名

代码如下(示例):

cd $CAS-ESM_HOME/scripts/ccsm_utils/Machines

ls  *linux_intel

env_machopts.generic_linux_intel  mkbatch.generic_linux_intel

Macros.generic_linux_intel

cp env_machopts.generic_linux_intel    env_machopts.def_intel

cp mkbatch.generic_linux_intel      mkbatch.def_intel

cp Macros.huanty_czy     Macros.def_intel

其中def 可以自己取名字

cp env_machopts.generic_linux_intel    env_machopts.huanmy_intel

cp mkbatch.generic_linux_intel      mkbatch.huanmy_intel

cp Macros.huanty_czy     Macros.huanmy_intel

ls  *huanmy_intel

env_machopts.huanmy_intel  mkbatch.huanmy_intel

Macros.huanmy_intel

2.修改配置文件

env_machopts.huanmy_intel

这个脚本是用来设定所使用的机器是否支持MPISERIAL,如果支持,则该脚本无需修改,否则需要修改。

mkbatch.huanmy_intel

这个脚本是用来自动生成提交作业的脚本文件,根据作业系统的不同,编写内容也不同。如果你决定在生成可执行文件后,手动编写作业脚本文件,则该脚本可不做修改。

Macros.huanmy_intel

最重要的脚本,用来设定Fortran, C, NetCDF以及MPI的路径,由于在同一个机子上移植所以我这里也不需要修改

NETCDF_PATH   := /public/software/mathlib/netcdf/intel/4.1.3

MPICH_PATH := /public/software/mpi/intelmpi/2017.4.239/intel64

但是我检查我load的module在这里

 which ncdump 
/public/software/mathlib/libs-intel/netcdf/4.4.1/bin/ncdump

config_machines.xml

这里和之前的cesm的配置就相像了

<machine MACH=“huanmy_intel"

                   DESC="afw 64pes/node"

                  EXEROOT="$CAS-ESM_HOME/$CASE"

                  OBJROOT="$EXEROOT"

                  INCROOT="$EXEROOT/lib/include"

                  DIN_LOC_ROOT_CSMDATA="/data/zhangh/public/inputdata"

                  DOUT_S_ROOT="$ CAS-ESM_HOME /$CASE"

                  DOUT_L_HTAR="FALSE"

                  DOUT_L_MSROOT="csm/$CASE“

     OS="Linux"

                  GMAKE_J="2"

                  MAX_TASKS_PER_NODE=“40"

                  MPISERIAL_SUPPORT="TRUE" />

红色字是需要重点关注的,其中数据文件夹用了老师的,cas-esm的文件下载有点不一样,自己不好弄

config_pes.xml

添加适合机器配置cpu个数信息

<pes mach_match="afw" >
    <NTASKS_ATM>128</NTASKS_ATM> <NTHRDS_ATM>1</NTHRDS_ATM> <ROOTPE_ATM>0</ROOTPE_ATM>
    <NTASKS_LND>128</NTASKS_LND> <NTHRDS_LND>1</NTHRDS_LND> <ROOTPE_LND>0</ROOTPE_LND>
    <NTASKS_ICE>120</NTASKS_ICE> <NTHRDS_ICE>1</NTHRDS_ICE> <ROOTPE_ICE>0</ROOTPE_ICE>
    <NTASKS_OCN>120</NTASKS_OCN> <NTHRDS_OCN>1</NTHRDS_OCN> <ROOTPE_OCN>0</ROOTPE_OCN>
    <NTASKS_CPL>128</NTASKS_CPL> <NTHRDS_CPL>1</NTHRDS_CPL> <ROOTPE_CPL>0</ROOTPE_CPL>
    <NTASKS_GLC>128</NTASKS_GLC> <NTHRDS_GLC>1</NTHRDS_GLC> <ROOTPE_GLC>0</ROOTPE_GLC>
    <PES_LEVEL>1m</PES_LEVEL>
</pes>

 相关的三个文件放在这里

(1)Macros.huanmy_intel 

#===============================================================================
# SVN $Id: Macros.cppdefs 28555 2011-05-20 16:56:22Z fischer $
# SVN $URL: https://svn-ccsm-models.cgd.ucar.edu/scripts/branch_tags/cesm1_0_rel_tags/cesm1_0_3_n02_scripts4_110531b/ccsm_utils/Machines/Macros.cppdefs $
#===============================================================================
# set CPP options (must use this before any flags or cflags settings)
# Scripts build: this file is prepended to the $CASEROOT/Macros.machine file 
# by create_newcase
# Cam build: this file is prepended to the $cam_bld/Macros file 
# by cam's configure
#===============================================================================

CPPDEFS := $(USER_CPPDEFS)

# USE_ESMF_LIB is currently only defined in env_build.xml
ifeq ($(USE_ESMF_LIB), TRUE)
   CPPDEFS += -DUSE_ESMF_LIB
endif

# ESMF_INTERFACE is currently only defined in env_build.xml
ifeq ($(COMP_INTERFACE), ESMF)
   CPPDEFS += -DESMF_INTERFACE
else
   CPPDEFS += -DMCT_INTERFACE
endif

# USE_MPISERIAL is currently only defined in env_conf.xml
ifeq ($(USE_MPISERIAL),TRUE)
  # default
  CPPDEFS += -DNO_MPI2
else
  CPPDEFS += -DHAVE_MPI
endif

# CCSM_BGC is currently only defined in env_conf.xml
ifneq ($(CCSM_BGC),)
  ifneq ($(CCSM_BGC),none)
    CPPDEFS += -D$(CCSM_BGC)
  endif
endif

# CCSM_VOC is currently only defined in env_conf.xml
ifeq ($(CCSM_VOC), TRUE)
   CPPDEFS += -DVOC
endif

# GLC_NEC is defined in env_conf.xml
ifneq ($(GLC_NEC),0)
   CPPDEFS += -DGLC_NEC_$(GLC_NEC)
endif

# Whether WRF is open or not
ifeq ($(strip $(COMP_WRF)),wrf)
   CPPDEFS += -DWRF
endif
# Set config args for pio and mct to blank and then enable serial 
# if USE_MPISERIAL (in env_conf) is set
CONFIG_ARGS :=
ifeq ($(USE_MPISERIAL),TRUE)
   CONFIG_ARGS= --enable-mpiserial
endif
ifeq ($(MODEL),pio)
  ifeq ($DEBUG,TRUE)
     CONFIG_ARGS+= --enable-debug
  endif
endif

#===============================================================================
# The following always need to be set
# SPMD             Whether to build in SPMD mode or not.  [values TRUE FALSE]
# SMP              Set to TRUE to enable building in SMP mode (uses OpenMP).  
# USER_CPPDEFS     CPP definitions (non platform dependent)
#
#===============================================================================

# Note that CPPDEFS is set in Macros.cppdefs
CPPDEFS += -DLINUX -DSEQ_$(FRAMEWORK) -DFORTRANUNDERSCORE -DNO_R16 -DNO_SHR_VMATH 

ifeq ($(compile_threaded), true)
   CPPDEFS += -DTHREADED_OMP
endif

ifeq ($(USE_MPISERIAL),TRUE)
   FC            := ifort 
   CC            := mpiicc 
else
#   FC            := mpif90
   FC            := mpiifort
#   CC            := mpicc
   CC            := mpiicc 
endif

#=====================================================
# GENERIC_USER
# The netcdf and mpi paths need to be set somewhere.  In CESM, this
# is normally done by setting the NETCDF_PATH and MPICH_PATH
# variables in this Macros file.  But they could also be set in the 
# default user paths, by an explicit addition to the local path 
# in the env_mach_specific file, or via setting NETCDF_PATH 
# and MPICH_PATH environment variables in the env_mach_specific file.  
# Also, review the relative paths of the INC_, LIB_, and MOD_ paths
# below.  Ignore PNETCDF stuff initially, it's not required.

ifeq ($(strip $(NETCDF_PATH)),)
 NETCDF_PATH   := /public/software/mathlib/libs-intel/netcdf/4.4.1
endif
INC_NETCDF    := $(NETCDF_PATH)/include
LIB_NETCDF    := $(NETCDF_PATH)/lib -lnetcdff -lnetcdf
MOD_NETCDF    := $(NETCDF_PATH)/include
ifeq ($(strip $(MPICH_PATH)),)
MPICH_PATH := /public/software/mpi/intelmpi/2017.4.239/intel64
endif
ifeq ($(USE_MPISERIAL),TRUE)
   INC_MPI    := $(CODEROOT)/utils/mct/mpi-serial
   LIB_MPI    := 
else
   LIB_MPI    := $(MPICH_PATH)/lib
   INC_MPI    := $(MPICH_PATH)/include
endif
MPI_LIB_NAME  := mpi
PNETCDF_PATH  :=
INC_PNETCDF   :=
LIB_PNETCDF   := 
LAPACK_LIBDIR := 
#=====================================================

CFLAGS        := $(CPPDEFS) -m64 
FIXEDFLAGS    := -132 
FREEFLAGS     := -FR
#FFLAGS        := $(CPPDEFS) -no-prec-div -traceback -convert big_endian -fp-model source  -assume byterecl -ftz  -traceback -m64 -shared-intel -mcmodel=large -safe-cray-ptr
FFLAGS        := $(CPPDEFS)  -no-prec-div -traceback -convert big_endian -fp-model source  -assume byterecl -ftz   -m64  -mcmodel=large -safe-cray-ptr
FFLAGS_NOOPT  := $(FFLAGS) -O0
FFLAGS_OPT    := -O1
LDFLAGS       := -m64 -static-intel
AR            := ar
MOD_SUFFIX    := mod
CONFIG_SHELL  :=

#===============================================================================
# Set include paths (needed after override for any model specific builds below)
#===============================================================================

INCLDIR := -I. 
ifneq ($(strip $(INC_NETCDF)),)
INCLDIR += -I$(INC_NETCDF)
endif
ifneq ($(strip $(MOD_NETCDF)),)
INCLDIR += -I$(MOD_NETCDF)
endif
ifneq ($(strip $(INC_MPI)),)
INCLDIR += -I$(INC_MPI)
endif 
ifneq ($(strip $(INC_PNETCDF)),)
INCLDIR += -I$(INC_PNETCDF)
endif

#===============================================================================
# Set model and other specific options
# NOTE - all CPPDEFS options must be defined before this point
#===============================================================================
ifeq ($(strip $(MODEL)),pop2)
FFLAGS        := $(CPPDEFS) -O1 -r8 -i4 -g -convert big_endian -assume byterecl  -fp-model precise -fp-speculation=safe -no-vec -traceback
endif
ifeq ($(strip $(MODEL)),licom)
FFLAGS        := $(CPPDEFS) -O1 -r8 -i4 -g -convert big_endian -assume byterecl  -DLICOM -fp-model precise -fp-speculation=safe -no-vec -traceback
endif

ifeq ($(DEBUG),TRUE)
  FFLAGS       += -CU -check pointers -fpe0 -ftz
  FFLAGS_NOOPT += -CU -check pointers -fpe0 -ftz
else
  FFLAGS += $(FFLAGS_OPT)
endif

ifeq ($(compile_threaded), true)
  FFLAGS       += -openmp
  FFLAGS_NOOPT += -openmp
  CFLAGS       += -openmp
  LDFLAGS      += -openmp
endif

ifeq ($(strip $(MODEL)),cam)
# These RRTMG files cause a compiler error when using optimization.
# Until mods are made to read the data from files, just remove optimization from
# their compilation.
rrtmg_lw_k_g.o: rrtmg_lw_k_g.f90
	$(FC) -c $(CPPDEFS) $(INCLDIR) $(INCS) $(FREEFLAGS) $(FFLAGS_NOOPT) $<
rrtmg_sw_k_g.o: rrtmg_sw_k_g.f90
	$(FC) -c $(CPPDEFS) $(INCLDIR) $(INCS) $(FREEFLAGS) $(FFLAGS_NOOPT) $<
endif

#=====================================================
# GENERIC_USER
# Options passed to the mct and pio build are set here

ifeq ($(MODEL),mct)
        #add arguments for mct configure here
  CONFIG_ARGS += CC="$(CC)" FC="$(FC)" F90="$(FC)" INCLUDEPATH="-I$(INC_MPI)"
endif

ifeq ($(MODEL),pio)
  ifneq ($(strip $(PIO_CONFIG_OPTS)),)
    CONFIG_ARGS += $(PIO_CONFIG_OPTS)
  endif 
  CONFIG_ARGS += MPIF90="mpiifort" CC="$(CC)" F90="$(FC)" NETCDF_PATH="$(NETCDF_PATH)" MPI_INC="-I$(INC_MPI)"
endif
#=====================================================

(2)config_machine.xml

<?xml version="1.0"?>

<config_machines>
<machine MACH="cheyenne"
         DESC="NCAR cheyenne"
         EXEROOT="/gpfs/fs1/scratch/mzhang/output/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/gpfs/fs1/scratch/mzhang/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/gpfs/fs1/scratch/mzhang/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/gpfs/fs1/scratch/mzhang/output/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT=""
         OS="Linux"
         GMAKE_J="2"
         MAX_TASKS_PER_NODE="36"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="storm"
         DESC="storm (intel), 32 pes/node, no batch system"
         EXEROOT="/T1/mzhang/minghua2/CAS-ESM/output/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/R0/jhe/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/R0/jhe/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/T1/mzhang/minghua2/CAS-ESM/output/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT=""
         OS="Linux"
         GMAKE_J="2"
         MAX_TASKS_PER_NODE="32"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="bluefire"
         DESC="NCAR IBM p6, os is AIX, 32 pes/node, batch system is LSF" 
         EXEROOT="/ptmp/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/fis/cgd/cseg/csm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/cgd/tss/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/ptmp/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/fis/cgd/cseg/csm/ccsm_baselines"
         CCSM_CPRNC="/fis/cgd/cseg/csm/tools/cprnc/cprnc"
         ESMF_LIBDIR="/ptmp/svasquez/esmf_install/ESMF_5_2_0-O/lib/"
         OS="AIX" 
         BATCHQUERY="bjobs -w"
         BATCHSUBMIT="bsub &lt;" 
         GMAKE_J="32" 
         MAX_TASKS_PER_NODE="64"
         MPISERIAL_SUPPORT="TRUE"
         PES_PER_NODE="32" />

<machine MACH="brutus_po"
         DESC="Brutus Linux Cluster ETH (pgi/9.0-1 with open_mpi/1.4.1), 16 pes/node, batch system LSF, added by UB"
         EXEROOT="/cluster/work/uwis/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/cluster/work/uwis/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/cluster/work/uwis/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/cluster/work/uwis/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="/`echo $CCSMUSER | tr '[a-z]' '[A-Z]'`/csm/$CASE"
         CCSM_BASELINE="/cluster/work/uwis/ccsm/ccsm_baselines"
         CCSM_CPRNC="/cluster/work/uwis/ccsm/tools/cprnc/cprnc"
         OS="Linux.pgi"
         BATCHQUERY="bjobs -w"
         BATCHSUBMIT="bsub &lt;"
         GMAKE_J="1"
         MPISERIAL_SUPPORT="FALSE"
         MAX_TASKS_PER_NODE="16" />

<machine MACH="brutus_pm"
         DESC="Brutus Linux Cluster ETH (pgi/9.0-1 with mvapich2/1.4rc2), 16 pes/node, batch system LSF, added by UB"
         EXEROOT="/cluster/work/uwis/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/cluster/work/uwis/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/cluster/work/uwis/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/cluster/work/uwis/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="/`echo $CCSMUSER | tr '[a-z]' '[A-Z]'`/csm/$CASE"
         CCSM_BASELINE="/cluster/work/uwis/ccsm/ccsm_baselines"
         CCSM_CPRNC="/cluster/work/uwis/ccsm/tools/cprnc/cprnc"
         OS="Linux.pgi"
         BATCHQUERY="bjobs -w"
         BATCHSUBMIT="bsub &lt;"
         GMAKE_J="1"
         MPISERIAL_SUPPORT="FALSE"
         MAX_TASKS_PER_NODE="16" />

<machine MACH="brutus_io"
         DESC="Brutus Linux Cluster ETH (intel/10.1.018 with open_mpi/1.4.1), 16 pes/node, batch system LSF, added by UB"
         EXEROOT="/cluster/work/uwis/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/cluster/work/uwis/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/cluster/work/uwis/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/cluster/work/uwis/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="/`echo $CCSMUSER | tr '[a-z]' '[A-Z]'`/csm/$CASE"
         CCSM_BASELINE="/cluster/work/uwis/ccsm/ccsm_baselines"
         CCSM_CPRNC="/cluster/work/uwis/ccsm/tools/cprnc/cprnc"
         OS="Linux.intel"
         BATCHQUERY="bjobs -w"
         BATCHSUBMIT="bsub &lt;"
         GMAKE_J="1"
         MPISERIAL_SUPPORT="FALSE"
         MAX_TASKS_PER_NODE="16" />

<machine MACH="brutus_im"
         DESC="Brutus Linux Cluster ETH (intel/10.1.018 with mvapich2/1.4rc2), 16 pes/node, batch system LSF, added by UB"
         EXEROOT="/cluster/work/uwis/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/cluster/work/uwis/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/cluster/work/uwis/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/cluster/work/uwis/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="/`echo $CCSMUSER | tr '[a-z]' '[A-Z]'`/csm/$CASE"
         CCSM_BASELINE="/cluster/work/uwis/ccsm/ccsm_baselines"
         CCSM_CPRNC="/cluster/work/uwis/ccsm/tools/cprnc/cprnc"
         OS="Linux.intel"
         BATCHQUERY="bjobs -w"
         BATCHSUBMIT="bsub &lt;"
         GMAKE_J="1"
         MPISERIAL_SUPPORT="FALSE"
         MAX_TASKS_PER_NODE="16" />

<machine MACH="edinburgh_lahey"
         DESC="NCAR CGD Linux Cluster (lahey), 8 pes/node, batch system is PBS"
         EXEROOT="/scratch/cluster/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/fs/cgd/csm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/project/tss/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/scratch/cluster/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/fs/cgd/csm/ccsm_baselines"
         CCSM_CPRNC="/fs/cgd/csm/tools/cprnc_64/cprnc"
         OS="Linux"
         BATCHQUERY="/usr/local/torque/bin/qstat"
         BATCHSUBMIT="/usr/local/torque/bin/qsub" 
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="16"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="edinburgh_pgi"
         DESC="NCAR CGD Linux Cluster (pgi), 8 pes/node, batch system is PBS"
         EXEROOT="/scratch/cluster/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/fs/cgd/csm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/project/tss/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/scratch/cluster/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/fs/cgd/csm/ccsm_baselines"
         CCSM_CPRNC="/fs/cgd/csm/tools/cprnc_64/cprnc"
         OS="Linux.pgi"
         BATCHQUERY="/usr/local/torque/bin/qstat"
         BATCHSUBMIT="/usr/local/torque/bin/qsub" 
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="edinburgh_intel"
         DESC="NCAR CGD Linux Cluster (intel), 8 pes/node, batch system is PBS"
         EXEROOT="/scratch/cluster/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/fs/cgd/csm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/project/tss/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/scratch/cluster/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/fs/cgd/csm/ccsm_baselines"
         CCSM_CPRNC="/fs/cgd/csm/tools/cprnc_64/cprnc"
         OS="Linux"
         BATCHQUERY="/usr/local/torque/bin/qstat"
         BATCHSUBMIT="/usr/local/torque/bin/qsub" 
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="cloud_intel"
         DESC="SoMAS Linux Cluster (intel), 32 pes/node, no batch system"
         EXEROOT="$HOME/CAS-ESM/test/cas-esm1_0_3/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="$HOME/cesm_input"
         DOUT_S_ROOT="$HOME/CAS-ESM/test/cas-esm1_0_3/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="4" 
         MAX_TASKS_PER_NODE="32"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="icces_intel"
         DESC="ICCES Linux Cluster (intel), 8 pes/node, no batch system"
         EXEROOT="$HOME/cesm-IAP_2Dpar/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/disk5/data/cesm-input"
         DOUT_S_ROOT="$HOME/cesm-IAP_2Dpar/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="tianhe_intel"
         DESC="TIAN HE 1A (intel), 12 pes/node, no batch system"
         EXEROOT="/home/scwangty/wangty/CAS_ESM_wty/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/work1/jjr/wangyz/data/inputdata"
         DOUT_S_ROOT="/home/scwangty/wangty/CAS_ESM_wty/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="2" 
         MAX_TASKS_PER_NODE="12"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="era_czy"
	 DESC="YUAN (intel), 24 pes/node, no batch system"
	 EXEROOT="/home/zmh_czy/scratch_casesm/$CASE"
	 OBJROOT="$EXEROOT"
	 LIBROOT="$EXEROOT/lib"
	 INCROOT="$EXEROOT/lib/include"
	 DIN_LOC_ROOT_CSMDATA="/home/zmh_czy/data/inputdata"
	 DOUT_S_ROOT="/home/zmh_czy/scratch_casesm/archive/$CASE"
	 DOUT_L_HTAR="FALSE"
	 DOUT_L_MSROOT="csm/$CASE"
	 OS="Linux.intel"
	 GMAKE_J="20"
	 MAX_TASKS_PER_NODE="24"
	 MPISERIAL_SUPPORT="TRUE"
	 PES_PER_NODE="24" />

<machine MACH="yuan_intel"
         DESC="YUAN (intel), 10 pes/node, no batch system"
         EXEROOT="/home/xdzeng/work/github/output/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/work1/jjr/wangyz/data/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/work1/jjr/wangyz/data/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DIN_LOC_ROOT_CRUNCEP="/work1/jjr/wangyz/data/inputdata/atm/datm7/atm_forcing.datm7.cruncep_qianFill.0.5d.v7.c160715"
         DOUT_S_ROOT="/home/xdzeng/work/github/output/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="2" 
         MAX_TASKS_PER_NODE="10"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="shuguang_intel"
         DESC="Shu Guang (intel), 24 pes/node, no batch system"
         EXEROOT="/public/home/hjx/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/public/work/iap/inputdata"
         DOUT_S_ROOT="/public/home/hjx/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="2"
         MAX_TASKS_PER_NODE="24"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="sugon_czy"
         DESC="Shu Guang (intel), 24 pes/node, no batch system"
         EXEROOT="/public/home/chzhy1/scratch_casesm/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/public/home/chzhy1/dat/inputdata"
         DOUT_S_ROOT="/public/home/chzhy1/scratch_casesm/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux.intel"
         GMAKE_J="16"
         MAX_TASKS_PER_NODE="24"
         MPISERIAL_SUPPORT="TRUE"
         PES_PER_NODE="24" />

<machine MACH="huanty_czy"
         DESC="Huan_Taiyuan (intel), 64 pes/node, PBS batch system"
         EXEROOT="/data/zhanghe/czy/scratch_casesm/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/data/zhanghe/inputdata"
         DOUT_S_ROOT="/data/zhanghe/czy/scratch_casesm/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="16"
         MAX_TASKS_PER_NODE="64"
         MPISERIAL_SUPPORT="TRUE"
         PES_PER_NODE="64" />


<machine MACH="huanty_intel_xjb"
         DESC="Huan_Taiyuan (intel), 64 pes/node, PBS batch system"
         EXEROOT="/data/zhanghe/xjb/model-IAP-WRF/CASE/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/data/bixq/inputdata"
         DOUT_S_ROOT="/data/zhanghe/xjb/model-IAP-WRF/CASE/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="2"
         MAX_TASKS_PER_NODE="64"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="huanmy_intel"
         DESC="Huan_Miyun (intel), 64 pes/node, PBS batch system"
         EXEROOT="/data/zhangh/CAS-ESM_0d6798/cas-esm/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/data/zhangh/data/inputdata"
         DOUT_S_ROOT="/data/zhangh/CAS-ESM_0d6798/cas-esm/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="2"
         MAX_TASKS_PER_NODE="64"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="iapshug_intel"
         DESC="Shu Guang (intel), 24 pes/node, batch system is PBS"
         EXEROOT="$HOME/CAS-ESM-dev/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/5600/inputdata"
         DOUT_S_ROOT="$HOME/CAS-ESM-dev/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux"
         GMAKE_J="2"
         MAX_TASKS_PER_NODE="24"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="franklin"
         DESC="NERSC XT4, os is CNL, 4 pes/node, batch system is PBS"
         EXEROOT="/scratch/scratchdirs/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/project/projectdirs/ccsm1/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/project/projectdirs/ccsm1/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/scratch/scratchdirs/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/project/projectdirs/ccsm1/ccsm_baselines"
         CCSM_CPRNC="/project/projectdirs/ccsm1/tools/cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="qstat -f"
         BATCHSUBMIT="qsub" 
         GMAKE_J="4" 
         MAX_TASKS_PER_NODE="4"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="hadley"
         DESC="UCB Linux Cluster, os is Linux (ia64), batch system is PBS"
         EXEROOT="/clusterfs/hadley/scratch/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/clusterfs/hadley/ccsmdata/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/clusterfs/hadley/ccsmdata/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/clusterfs/hadley/scratch/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="/`echo $CCSMUSER | tr '[a-z]' '[A-Z]'`/csm/$CASE"
         CCSM_BASELINE="/clusterfs/hadley/ccsmdata/ccsm_baselines"
         CCSM_CPRNC="/clusterfs/hadley/ccsmdata/tools/cprnc/cprnc"
         OS="Linux.ia64" 
         BATCHQUERY="qstat"
         BATCHSUBMIT="qsub " 
         GMAKE_J="8" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="hector"
         DESC="UK National Supercomuting Servies: Hector Cray XE6, batch system is PBS, user-defined"
         EXEROOT="/work/n02/n02/elfengwh/CESM1.0/CASE_RUN/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/work/n02/n02/elfengwh/CESM1.0/waccm4_input"
         DIN_LOC_ROOT_CLMQIAN="/work/n02/n02/elfengwh/CESM1.0/waccm4_input/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/work/n02/n02/elfengwh/CESM1.0/output/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/work/n02/n02/elfengwh/CESM1.0/ccsm_baselines"
         CCSM_CPRNC="/work/n02/n02/elfengwh/CESM1.0/cesm1_0_2/models/atm/cam/tools"
         OS="UNIX"
         BATCHQUERY="qstat"
         BATCHSUBMIT="qsub"
         GMAKE_J="32"
         MAX_TASKS_PER_NODE="24"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="hopper"
         DESC="INVALID: hopper is no longer valid, please use hopp2"
         EXEROOT="/scratch/scratchdirs/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/project/projectdirs/ccsm1/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/project/projectdirs/ccsm1/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/scratch/scratchdirs/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/project/projectdirs/ccsm1/ccsm_baselines"
         CCSM_CPRNC="/project/projectdirs/ccsm1/tools/cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="qstat -f"
         BATCHSUBMIT="qsub" 
         GMAKE_J="4" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="hopp2"
         DESC="NERSC XE6, os is CNL, 24 pes/node, batch system is PBS"
         EXEROOT="/scratch/scratchdirs/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/project/projectdirs/ccsm1/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/project/projectdirs/ccsm1/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/scratch/scratchdirs/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/project/projectdirs/ccsm1/ccsm_baselines"
         CCSM_CPRNC="/project/projectdirs/ccsm1/tools/cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="qstat -f"
         BATCHSUBMIT="qsub" 
         GMAKE_J="4" 
         MAX_TASKS_PER_NODE="24"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="intrepid"
         DESC="ANL IBM BG/P, os is BGP, 4 pes/node, batch system is cobalt"
         EXEROOT="/intrepid-fs0/users/$USER/scratch/exe/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/gpfs/home/projects/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/gpfs/home/projects/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/intrepid-fs0/users/$USER/persistent/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="/home/$USER/csm/$CASE/"
         CCSM_BASELINE="/gpfs/home/projects/ccsm/ccsm_baselines"
         CCSM_CPRNC="/gpfs/home/projects/ccsm/tools/cprnc/cprnc"
         OS="BGP"
         BATCHQUERY="qstat"
         BATCHSUBMIT="csh"
         GMAKE_J="2"
         MAX_TASKS_PER_NODE="4"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="jaguar"
         DESC="ORNL XT4, os is CNL, 4 pes/node, batch system is PBS"
         EXEROOT="/tmp/work/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/tmp/proj/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/tmp/proj/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/tmp/work/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/tmp/proj/ccsm/ccsm_baselines"
         CCSM_CPRNC="/tmp/proj/ccsm/tools/ccsm_cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="qstat -f"
         BATCHSUBMIT="qsub" 
         GMAKE_J="4" 
         MAX_TASKS_PER_NODE="4"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="jaguarpf"
         DESC="ORNL XT5, os is CNL, 12 pes/node, batch system is PBS"
         EXEROOT="/tmp/work/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/tmp/proj/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/tmp/proj/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/tmp/work/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/tmp/proj/ccsm/ccsm_baselines"
         CCSM_CPRNC="/tmp/proj/ccsm/tools/ccsm_cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="qstat -f"
         BATCHSUBMIT="qsub"
         GMAKE_J="4"
         MAX_TASKS_PER_NODE="12"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="chester"
         DESC="ORNL XT5, os is CNL, 12 pes/node, batch system is PBS, test system"
         EXEROOT="/lustre/scratch/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/lustre/scratch/$CCSMUSER/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/lustre/scratch/$CCSMUSER/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/lustre/scratch/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/lustre/scratch/$CCSMUSER/ccsm_baselines"
         CCSM_CPRNC="/lustre/scratch/$CCSMUSER/tools/ccsm_cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="qstat -f"
         BATCHSUBMIT="qsub"
         GMAKE_J="4"
         MAX_TASKS_PER_NODE="12"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="kraken"
         DESC="NICS/UT/teragrid XT5, os is CNL, 12 pes/node"
         EXEROOT="/lustre/scratch/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/lustre/scratch/proj/ccsm/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/lustre/scratch/proj/ccsm/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/lustre/scratch/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/lustre/scratch/proj/ccsm/ccsm_baselines"
         CCSM_CPRNC="/lustre/scratch/proj/ccsm/tools/cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="qstat -f"
         BATCHSUBMIT="qsub" 
         GMAKE_J="12" 
         MAX_TASKS_PER_NODE="12"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="lynx_pgi"
         DESC="NCAR XT5, os is CNL, 12 pes/node, batch system is PBS"
         EXEROOT="/ptmp/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/glade/proj3/cseg/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/glade/proj2/cgd/tss/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/ptmp/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/glade/proj3/cseg/ccsm_baselines"
         CCSM_CPRNC="/ptmp/csm/tools/cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="UNSET"
         BATCHSUBMIT="qsub"
         GMAKE_J="4"
         MAX_TASKS_PER_NODE="12"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="lynx_pathscale"
         DESC="NCAR XT5, os is CNL, 12 pes/node, batch system is PBS"
         EXEROOT="/ptmp/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include"
         DIN_LOC_ROOT_CSMDATA="/glade/proj3/cseg/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/glade/proj2/cgd/tss/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/ptmp/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/glade/proj3/cseg/ccsm_baselines"
         CCSM_CPRNC="/ptmp/csm/tools/cprnc/cprnc"
         OS="CNL"
         BATCHQUERY="UNSET"
         BATCHSUBMIT="qsub"
         GMAKE_J="4"
         MAX_TASKS_PER_NODE="12"
         MPISERIAL_SUPPORT="TRUE" />

<machine MACH="midnight"
         DESC="ARSC Sun Cluster, os is Linux (pgi), batch system is PBS"
         EXEROOT="$WORKDIR/$CASE"
         OBJROOT="$EXEROOT"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/wrkdir/maslowsk/RACM/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/wrkdir/maslowsk/RACM/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="$WORKDIR/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/wrkdir/maslowsk/RACM/ccsm_baselines"
         CCSM_CPRNC="/wrkdir/maslowsk/RACM/tools/cprnc/cprnc"
         OS="Linux.pgi"
         BATCHQUERY="qstat"
         BATCHSUBMIT="qsub" 
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="16"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="pleiades"
         DESC="NASA/AMES Linux Cluster, Linux (ia64), Altix ICE, 3.0 GHz Harpertown processors, 8 pes/node and 8 GB of memory, batch system is PBS" 
         EXEROOT="/nobackup/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/nobackup/$CCSMUSER/ccsmdata/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/nobackup/$CCSMUSER/ccsmdata/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/nobackup/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux.ifort"
         BATCHQUERY="qstat"
         BATCHSUBMIT="qsub" 
         GMAKE_J="4" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="pleiades_wes"
         DESC="NASA/AMES Linux Cluster, Linux (ia64), Altix ICE, 2.93 GHz Westmere processors, 12 pes/node and 24 GB of memory, batch system is PBS" 
         EXEROOT="/nobackup/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/nobackup/$CCSMUSER/ccsmdata/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/nobackup/$CCSMUSER/ccsmdata/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/nobackup/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="csm/$CASE"
         OS="Linux.ifort"
         BATCHQUERY="qstat"
         BATCHSUBMIT="qsub" 
         GMAKE_J="4" 
         MAX_TASKS_PER_NODE="12"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="prototype_atlas"
         DESC="LLNL Linux Cluster, Linux (pgi), 8 pes/node, batch system is Moab"
         EXEROOT="/p/lscratchd/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/p/lscratchd/mirin/ccsm3data/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/p/lscratchd/mirin/ccsm3data/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/p/lscratchd/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="UNSET"
         CCSM_BASELINE="/p/lscratchd/$CCSMUSER/ccsm_baselines"
         CCSM_CPRNC="/p/lscratchd/mirin/ccsm3data/tools/cprnc/cprnc"
         OS="Linux.pgi" 
         BATCHQUERY="mshow"
         BATCHSUBMIT="msub" 
         GMAKE_J="8" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="prototype_hera"
         DESC="LLNL Linux Cluster, Linux (pgi), 16 pes/node, batch system is Moab"
         EXEROOT="/p/lscratchd/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/p/lscratchd/mirin/ccsm3data/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/p/lscratchd/mirin/ccsm3data/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/p/lscratchd/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="UNSET"
         CCSM_BASELINE="/p/lscratchd/$CCSMUSER/ccsm_baselines"
         CCSM_CPRNC="/p/lscratchd/mirin/ccsm3data/tools/cprnc/cprnc"
         OS="Linux.pgi" 
         BATCHQUERY="mshow"
         BATCHSUBMIT="msub" 
         GMAKE_J="8" 
         MAX_TASKS_PER_NODE="16"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="prototype_columbia"
         DESC="NASA Ames Linux Cluster, Linux (ia64), 2 pes/node, batch system is PBS" 
         EXEROOT="/nobackup2b/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/nobackup2b/$CCSMUSER/ccsm3data/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/nobackup2b/$CCSMUSER/ccsm3data/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="UNSET"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="UNSET"
         OS="Linux.ifort"
         BATCHQUERY="qstat"
         BATCHSUBMIT="qsub" 
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="2"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="prototype_frost"
         DESC="NCAR IBM BG/L, os is BGL, 8 pes/node, batch system is cobalt"
         EXEROOT="/ptmp/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/ptmp/dennis/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/ptmp/dennis/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/ptmp/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="TRUE"
         DOUT_L_MSROOT="csm/$CASE"
         CCSM_BASELINE="/ptmp/dennis/ccsm_baselines"
         CCSM_CPRNC="/ptmp/dennis/tools/cprnc/cprnc"
         OS="BGL"
         BATCHQUERY="cqstat -f %jn"
         GMAKE_J="8" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="prototype_nyblue"
         DESC="SUNY IBM BG/L, os is BGL, 8 pes/node, batch system is cobalt"
         EXEROOT="/gpfs/scratch1/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/gpfs/home1/jdennis/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/gpfs/home1/jdennis/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/gpfs/scratch1/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="UNSET"
         CCSM_BASELINE="/gpfs/home1/jdennis/ccsm_baselines"
         CCSM_CPRNC="/gpfs/home1/jdennis/tools/cprnc/cprnc"
         OS="BGL"
         BATCHQUERY="cqstat -f %jn"
         GMAKE_J="8" 
         MAX_TASKS_PER_NODE="8"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="prototype_ranger"
         DESC="TACC Linux Cluster, Linux (pgi), 1 pes/node, batch system is SGE" 
         EXEROOT="$WORK/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="$WORK/inputdata"
         DIN_LOC_ROOT_CLMQIAN="$WORK/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="$WORK/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="UNSET"
         OS="Linux.pgi" 
         BATCHQUERY="qstat"
         BATCHSUBMIT="qsub" 
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="4"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="prototype_ubgl"
         DESC="LLNL IBM BG/L, os is BGL, 2 pes/node, batch system is Moab"
         EXEROOT="/p/lscratchc/$CCSMUSER/$CASE"
         OBJROOT="$EXEROOT"
         LIBROOT="$EXEROOT/lib"
         INCROOT="$EXEROOT/lib/include" 
         DIN_LOC_ROOT_CSMDATA="/p/lscratchc/mirin/ccsm3data/inputdata"
         DIN_LOC_ROOT_CLMQIAN="/p/lscratchc/mirin/ccsm3data/inputdata/atm/datm7/atm_forcing.datm7.Qian.T62.c080727"
         DOUT_S_ROOT="/p/lscratchc/$CCSMUSER/archive/$CASE"
         DOUT_L_HTAR="FALSE"
         DOUT_L_MSROOT="UNSET"
         CCSM_BASELINE="/p/lscratchc/mirin/ccsm3data/ccsm_baselines"
         CCSM_CPRNC="/p/lscratchc/mirin/ccsm3data/tools/cprnc/cprnc"
         OS="BGL"
         BATCHQUERY="mshow"
         BATCHSUBMIT="msub" 
         GMAKE_J="1" 
         MAX_TASKS_PER_NODE="1"
         MPISERIAL_SUPPORT="FALSE" />

<machine MACH="generic_ibm"
         DESC="generic ibm power system, os is AIX, batch system is LoadLeveler, user-defined"
         MPISERIAL_SUPPORT="TRUE"
         OS="AIX"  />

<machine MACH="generic_xt"
         DESC="generic CRAY XT, os is CNL, batch system is PBS, user-defined"
         MPISERIAL_SUPPORT="TRUE"
         OS="CNL" />

<machine MACH="generic_linux_pgi"
         DESC="generic linux (pgi), os is Linux, batch system is PBS, user-defined"
         MPISERIAL_SUPPORT="TRUE"
         OS="Linux" />

<machine MACH="generic_linux_lahey"
         DESC="generic linux (lahey), os is Linux, batch system is PBS, user-defined"
         MPISERIAL_SUPPORT="TRUE"
         OS="Linux" />

<machine MACH="generic_linux_intel"
         DESC="generic linux (intel), os is Linux, batch system is PBS, user-defined"
         MPISERIAL_SUPPORT="TRUE"
         OS="Linux" />

<machine MACH="generic_linux_pathscale"
         DESC="generic linux (pathscale), os is Linux, batch system is PBS, user-defined"
         MPISERIAL_SUPPORT="TRUE"
         OS="Linux" />

<machine MACH="generic_darwin_intel"
         DESC="generic darwin (intel), os is Darwin (Macintosh OS X), no batch system, user-defined"
         GMAKE="make"
         MPISERIAL_SUPPORT="TRUE"
         OS="Darwin" />

<machine MACH="generic_darwin_pgi"
         DESC="generic darwin (pgi), os is Darwin (Macintosh OS X), no batch system, user-defined"
         GMAKE="make"
         MPISERIAL_SUPPORT="TRUE"
         OS="Darwin" />

</config_machines>

这里面只需要将config_machine.xml 里面huanmy_intel 里面的可执行文件路径改成自己想要放的地方就可以了。

到这里机器配置的任务完成了。


三、创建case和编译

1.创建case

cd $CAS_ESM_HOME/scripts

 ./create_newcase -case FAMIP_fd14 -compset FAMIPC5X -res fd14_fd14 -mach huanmy_intel

Successfully created the case for afw 

能够正确建立case,说明前面的机器配置是正确的!

2.编译case

cd  FAMIP_fd14!# 进入case的目录里面

[chengxl@login01 FAMIP_fd14]$ ls
CaseStatus        configure               env_case.xml      env_run.xml  README       Tools
check_case        create_production_test  env_conf.xml      LockedFiles  README.case  xmlchange
check_input_data  env_build.xml           env_mach_pes.xml  Macros.afw   SourceMods

先要配置一下

[chengxl@login01 FAMIP_fd14]$ ./configure -case
Generating resolved namelist, prestage, and build scripts
configure done.
Successfully generated resolved namelist, prestage, and build scripts
Locking file env_conf.xml
Generating clean_build script 
Generating submit script 
Generating build script 
Generating run script 
env: /data/chengxl/cas-esm/scripts/casesm_utils/Machines/mkbatch.afw: No such file or directory
env: /data/chengxl/cas-esm/scripts/casesm_utils/Machines/mkbatch.afw: No such file or directory
env: /data/chengxl/cas-esm/scripts/casesm_utils/Machines/mkbatch.afw: No such file or directory
configure error: configure generate_batch error

./configure -case 

 ./FAMIP_fd14.huanmy_intel.build 

[chengxl@login01 scripts]$ ./create_newcase -case FAMIP_fd14 -compset FAMIPC5X -res fd14_fd14 -mach huanmy_intel
--------------------------------------------------------------------------------
                            CAS-ESM2.1 README

For both a quick start as well as a detailed summary of creating and running 
a CAS-ESM model case, see the CAS-ESM2.1 User's Guide at

IMPORTANT INFORMATION ABOUT SCIENTIFIC VALIDATION

   CAS-ESM2.1 has the flexibility to configure cases with many different 
   combinations of component models, grids, and model settings, but this 
   version of CAS-ESM has only been validated scientifically for the following 
   fully active configurations:

      1.9x2.5_gx1v6   B_1850_CN
      1.9x2.5_gx1v6   B_1850_RAMPCO2_CN
      1.9x2.5_gx1v6   B_1850-2000_CN

      1.9x2.5_gx1v6   B_1850_CAM5_CN
      0.9x1.25_gx1v6  B_1850_CAM5_CN
      0.9x1.25_gx1v6  B_1850-2000_CAM5_CN

      0.9x1.25_gx1v6  B_1850_CN
      0.9x1.25_gx1v6  B_1850_RAMPCO2_CN
      0.9x1.25_gx1v6  B_1850-2000_CN

      0.9x1.25_gx1v6  B_1850_BGC-BPRP
      0.9x1.25_gx1v6  B_1850_BGC-BDRD
      0.9x1.25_gx1v6  B_1850-2000_BGC-BPRP
      0.9x1.25_gx1v6  B_1850-2000_BGC-BDRD

      0.9x1.25_gx1v6  B_1850_CN_CHEM 
      0.9x1.25_gx1v6  B_1850-2000_CN_CHEM

      1.9x2.5_gx1v6   B_1850_WACCM_CN
      1.9x2.5_gx1v6   B_1850-2005_WACCM_CN
      1.9x2.5_gx1v6   B_1955-2005_WACCM_CN
      1.9x2.5_gx1v6   B_RCP2.6_WACCM_CN
      1.9x2.5_gx1v6   B_RCP4.5_WACCM_CN
      1.9x2.5_gx1v6   B_RCP8.5_WACCM_CN
  
      T31_gx3v7       B_1850_CN
      T31_gx3v7       B_1850-2000_CN

   If the user is interested in running a "stand-alone" component configuration, 
   the following model configurations have been validated scientifically and 
   have associated diagnostic output as part of the release:

      1.9x2.5_1.9x2.5    F_2000_WACCM
      1.9x2.5_1.9x2.5    F_AMIP_CAM5
      0.9x1.25_0.9x1.25  F_AMIP_CAM5
      1.9x2.5_1.9x2.5    F_AMIP_CN
      0.9x1.25_0.9x1.25  F_AMIP_CN

      0.9x1.25_gx1v6     I_2000
      0.9x1.25_gx1v6     I_2000_CN

      T62_gx1v6          C_NORMAL_YEAR

   For more information regarding alternative component configurations, 
   please refer to
   casesm_utils/Case.template/config_compsets.xml 

--------------------------------------------------------------------------------
***********************************************************
Component set     : F_AMIP_CAM5X (FAMIPC5X)
Desc              : AMIP run for CMIP5 protocol with IAP5 
***********************************************************

Creating /data/chengxl/cas-esm/scripts/FAMIP_fd14 
 
Locking file /data/chengxl/cas-esm/scripts/FAMIP_fd14/env_case.xml 
Successfully created the case for huanmy_intel 
[chengxl@login01 scripts]$ cd FAMIP_fd14/
[chengxl@login01 FAMIP_fd14]$ ls
CaseStatus        configure               env_case.xml      env_mach_specific  Macros.huanmy_intel  SourceMods
check_case        create_production_test  env_conf.xml      env_run.xml        README               Tools
check_input_data  env_build.xml           env_mach_pes.xml  LockedFiles        README.case          xmlchange
[chengxl@login01 FAMIP_fd14]$ ./configure -case 
Generating resolved namelist, prestage, and build scripts
configure done.
Successfully generated resolved namelist, prestage, and build scripts
Locking file env_conf.xml
Generating clean_build script 
Generating submit script 
Generating build script 
Generating run script 
Locking file env_mach_pes.xml
Successfully configured the case for huanmy_intel
If an old build exists for this case, you might want to 
   run the *.clean_build script before building
[chengxl@login01 FAMIP_fd14]$ ./FAMIP_fd14.huanmy_intel.build 
-------------------------------------------------------------------------
 CAS-ESM BUILDNML SCRIPT STARTING
 - To prestage restarts, untar a restart.tar file into /data/chengxl/cas-esm/FAMIP_fd14/run
 CAS-ESM BUILDNML SCRIPT HAS FINISHED SUCCESSFULLY
-------------------------------------------------------------------------
 CAS-ESM PRESTAGE SCRIPT STARTING
 - CAS-ESM input data directory, DIN_LOC_ROOT_CSMDATA, is /data/zhangh/data/inputdata
 - Case input data directory, DIN_LOC_ROOT, is /data/zhangh/data/inputdata
 - Checking the existence of input datasets in DIN_LOC_ROOT
 CAS-ESM PRESTAGE SCRIPT HAS FINISHED SUCCESSFULLY
-------------------------------------------------------------------------
 CAS-ESM BUILDEXE SCRIPT STARTING
 - Build Libraries: mct pio csm_share 
Tue Feb 21 15:13:32 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/mct/mct.bldlog.230221-151320
Tue Feb 21 15:14:35 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/pio/pio.bldlog.230221-151320
Tue Feb 21 15:15:45 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/csm_share/csm_share.bldlog.230221-151320
Tue Feb 21 15:16:12 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/cpl.bldlog.230221-151320
Tue Feb 21 15:16:12 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/atm.bldlog.230221-151320
Tue Feb 21 15:20:13 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/wrf.bldlog.230221-151320
Tue Feb 21 15:20:13 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/gea.bldlog.230221-151320
Tue Feb 21 15:20:13 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/lnd.bldlog.230221-151320
Tue Feb 21 15:20:49 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/ice.bldlog.230221-151320
Tue Feb 21 15:21:18 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/ocn.bldlog.230221-151320
Tue Feb 21 15:21:20 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/glc.bldlog.230221-151320
Tue Feb 21 15:21:21 CST 2023 /data/chengxl/cas-esm/FAMIP_fd14/run/casesm.bldlog.230221-151320
 - Locking file env_build.xml
 - Locking file Macros.huanmy_intel
 CAS-ESM BUILDEXE SCRIPT HAS FINISHED SUCCESSFULLY

可以看见我这里成功编译

[chengxl@login01 FAMIP_fd14]$ ls
atm     cpl        FAMIP_fd14.casesm.exe                gea  ice  lnd  ocn  run
casesm  csm_share  FAMIP_fd14.casesm.exe.230221-151320  glc  lib  mct  pio  wrf

到EXE_ROOT看见确实存在可执行文件了

到此创建和编译case成功!


四、运行case

1.编写作业脚本

进入exeroot/run 

mpi_run_casesm.job

#!/bin/sh
#SBATCH --job-name=iap_myb
#SBATCH -p normal
#SBATCH -N 10
#SBATCH -n 640
#SBATCH --ntasks-per-node=64
#SBATCH -o log.%j
#SBATCH -e log.%j
#SBATCH --time=10-08:00

mpirun -np 640  ./casesm.exe > log.casesm

2.拷贝陆面模式初始场和强迫场

(1)mkdir timing

同cesm

(2)陆面资料

cas-esm不知道为什么要自己手动设置陆面资料

cp /work/zhanghe/CAS-ESM2_tutorial/master/code/demo/AMIPrun/link.sh .

./link.sh

cas-esm 里面需要路面的强迫资料,我后来用了wuchenglai老师资料夹里面的资料。

 (3)修改一些in的 参数

cas-esm 中还需要修改点东西

atm_in中 

dtdy = 200.0D0

lnd_in中

co2_type   = ‘diagnostic'

3.提交和查看作业脚本

sbatch mpi_run_casesm.job

squeue

tail -f log.casesm

 类似资料: