Developed by Zhonghua Zheng (09/12/2019)
CESM QuickstartDownload CESMSet up a CESM caseBuild/Submit a CESM caseCheck the results(Optional)ReferenceHelpful links
Take the Blue Waters as an example:
x
#module unload cmake
module load bwpy/0.3.2 Subversion
export PERL5LIB=/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi:$PERL5LIB
export PATH=~/bin:$PATH
git clone -b release-cesm2.1.1 https://github.com/ESCOMP/cesm.git
cd cesm
./manage_externals/checkout_externals
The following steps are based on Cheyenne:
x# create a new case
# Cheyenne
cd ~/cesm/cime/scripts
#cd /glade/p/cesm/tutorial/cesm2.1.1_tutorial/cime/scripts
#./create_newcase --case ~/cases/FHIST_09 --compset FHIST --res f09_f09_mg17 --project UIUC0021
# Blue Waters
cd ~/cesm/cime/scripts
./create_newcase --case ~/cases/FHIST_09 --compset FHIST --res f09_f09_mg17 --project basl --input-dir /scratch/sciteam/zheng1/cesm_data
# setup case
cd ~/cases/FHIST_09
./case.setup
# customize history output
vi user_nl_cam
# in the user_nl_cam, add the lines
# assume "h1" file with instantaneous value every 3 hour
nhtfrq=0,-3
# assume "h1" files with 8 timesteps each
mfilt=1,8
fincl2='T:I','RELHUM:I','SZA:I','SOAG_SRF:I','DMS_SRF:I','H2SO4_SRF:I','O3:I','H2O2_SRF:I','SO2_SRF:I','bc_a1_SRF:I','bc_a4_SRF:I','dst_a1_SRF:I','dst_a2_SRF:I','dst_a3_SRF:I','ncl_a1_SRF:I','ncl_a2_SRF:I','ncl_a3_SRF:I','pom_a1_SRF:I','pom_a4_SRF:I','so4_a1_SRF:I','so4_a2_SRF:I','so4_a3_SRF:I','soa_a1_SRF:I','soa_a2_SRF:I'
# change run lenth (assume one-month)
./xmlchange STOP_N=1,STOP_OPTION=nmonths
# set up project (if haven't done) and job_queue
./xmlchange PROJECT=UIUC0021
./xmlchange --subgroup case.run JOB_QUEUE=regular
./xmlchange --subgroup case.st_archive JOB_QUEUE=regular
# set up wallclock time
./xmlchange --subgroup case.run JOB_WALLCLOCK_TIME=12:00:00
./xmlchange --subgroup case.st_archive JOB_WALLCLOCK_TIME=06:00:00
# use "./xmlquery" if necessary
# ./xmlquery -p QUEUE
xxxxxxxxxx
# build the case (if a Cheyenne user)
qcmd -A UIUC0021 -q regular -- ./case.build
# build the case (if a Blue Waters user)
./case.build
# submit the case
./case.submit
xxxxxxxxxx
# if a Cheyenne user
#cd /glade/scratch/$user/archive/FHIST_09/atm/hist
# if a Blue Waters user
cd ~/scratch
Use the following script
### set env variables
setenv CASENAME FHIST_09
setenv CASEDIR /u/sciteam/zheng1/cases/FHIST_09
setenv CESMROOT /u/sciteam/zheng1/cesm
# create new case
$CESMROOT/cime/scripts/create_newcase --case $CASEDIR --compset FHIST --res f09_f09_mg17 --project basl --input-dir /scratch/sciteam/zheng1/cesm_data
# set up case
cd $CASEDIR
./case.setup
# add to user_nl_cam:
cat > user_nl_cam <<EOF
! Users should add all user specific namelist changes below in the form of
! namelist_var = new_namelist_value
! assume "h1" file with instantaneous value every 3 hour
nhtfrq=0,-3
! assume "h1" files with 8 timesteps each
mfilt=1,8
fincl2='T:I','RELHUM:I','SZA:I','SOAG_SRF:I','DMS_SRF:I','H2SO4_SRF:I','O3:I','H2O2_SRF:I','SO2_SRF:I','bc_a1_SRF:I','bc_a4_SRF:I','dst_a1_SRF:I','dst_a2_SRF:I','dst_a3_SRF:I','ncl_a1_SRF:I','ncl_a2_SRF:I','ncl_a3_SRF:I','pom_a1_SRF:I','pom_a4_SRF:I','so4_a1_SRF:I','so4_a2_SRF:I','so4_a3_SRF:I','soa_a1_SRF:I','soa_a2_SRF:I'
EOF
# change run lenth (assume one-month)
./xmlchange STOP_N=1,STOP_OPTION=nmonths
# build the case
./case.build
# submit the case
./case.submit
[2] CESM compset
[4] CESM namelist
[6] CAM User's Guide (Atmospheric configurations)