diff --git a/docs/source/SCREAMv0/DYAMOND2/index.rst b/docs/source/SCREAMv0/DYAMOND2/index.rst new file mode 100644 index 0000000..bcd8073 --- /dev/null +++ b/docs/source/SCREAMv0/DYAMOND2/index.rst @@ -0,0 +1,15 @@ +SCREAMv0 DYAMOND2 +==================== + +The DYAMOND2 simulation campaign using SCREAMv0 that was submitted to the `DYAMOND2 intercomparison `_. + +If you use data from this simulation campaign, please cite the following overview +manuscript: + +* `Caldwell et al. 2021 (JAMES) `_ + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + simulation_data/index diff --git a/docs/source/SCREAMv0/DYAMOND2/simulation_data/index.rst b/docs/source/SCREAMv0/DYAMOND2/simulation_data/index.rst new file mode 100644 index 0000000..89e53b7 --- /dev/null +++ b/docs/source/SCREAMv0/DYAMOND2/simulation_data/index.rst @@ -0,0 +1,21 @@ +*************** +Simulation Data +*************** + +The SCREAMv0 simulation data is available on **NERSC HPSS**. + +**If you have an account on NERSC**, you can retrieve the data locally or remotely using Globus. + +To download simulation data locally on a NERSC machine, refer to NERSC's documentation `here `_. + +**If you do not have access to NERSC**, you can download simulation data directly through the NERSC HPSS +`web interface `_. +Note that this will be slow given the large file sizes. + +Scripts originally used to run SCREAMv0 DYAMOND2 simulations are available `here `_. + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + simulation_table \ No newline at end of file diff --git a/docs/source/SCREAMv0/DYAMOND2/simulation_data/simulation_table.rst b/docs/source/SCREAMv0/DYAMOND2/simulation_data/simulation_table.rst new file mode 100644 index 0000000..13eea65 --- /dev/null +++ b/docs/source/SCREAMv0/DYAMOND2/simulation_data/simulation_table.rst @@ -0,0 +1,11 @@ +********************************** +SCREAMv0 DYAMOND2 (2021) simulation table +********************************** + ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| Simulation | Data Size (TB) | NERSC HPSS Path | ++===================================================================+=================+===========================================================================+ +| **Main Simulation (40 days)** | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| January 2020 (DYAMOND2 Configuration) | 46.6 | /home/t/terai/www/SCREAM/SCREAMv0.SCREAM-DY2.ne1024pg2.20201127 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ diff --git a/docs/source/SCREAMv0/index.rst b/docs/source/SCREAMv0/index.rst new file mode 100644 index 0000000..d184661 --- /dev/null +++ b/docs/source/SCREAMv0/index.rst @@ -0,0 +1,8 @@ +SCREAMv0 +========================================== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + DYAMOND2/index diff --git a/docs/source/SCREAMv1/FourSeasons/index.rst b/docs/source/SCREAMv1/FourSeasons/index.rst new file mode 100644 index 0000000..735dd91 --- /dev/null +++ b/docs/source/SCREAMv1/FourSeasons/index.rst @@ -0,0 +1,17 @@ +SCREAMv1 Four Seasons +==================== + +The simulation compaign for the SCREAMv1 Four-Seasons runs. For more information +about this simulation campaign see the citation below. + +If you use data from this simulation campaign, please cite the relevant overview +manuscript. + +* `Donahue et al. 2024 (JAMES) `_ + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + simulation_data/index + reproducing_simulations/index diff --git a/docs/source/SCREAMv1/FourSeasons/simulation_data/index.rst b/docs/source/SCREAMv1/FourSeasons/simulation_data/index.rst new file mode 100644 index 0000000..273d50a --- /dev/null +++ b/docs/source/SCREAMv1/FourSeasons/simulation_data/index.rst @@ -0,0 +1,35 @@ +*************** +Simulation Data +*************** + +The SCREAMv1 FourSeasons simulation data is available on **NERSC HPSS**. + +**If you have an account on NERSC**, you can retrieve the data locally or remotely using Globus. + +To download simulation data locally on a NERSC machine: :: + + zstash extract --hpss= + +To download simulation data remotely using the zstash Globus interface: :: + + zstash extract --hpss=globus://nersc/ + +or :: + + zstash extract --hpss=globus://9cd89cfd-6d04-11e5-ba46-22000b92c6ec/ + +Note that the data management tool `zstash `_ is available from the `E3SM-Unified `_ conda environment. + +For more information, refer to `zstash usage `_. + +**If you do not have access to NERSC**, you can download simulation data directly through the NERSC HPSS +`web interface `_. +Note that this will be slow and inefficient since you'll have to download the individual files. + +Scripts originally used to run SCREAMv1 FourSeasons simulations are available `here `_. + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + simulation_table diff --git a/docs/source/SCREAMv1/FourSeasons/simulation_data/simulation_table.rst b/docs/source/SCREAMv1/FourSeasons/simulation_data/simulation_table.rst new file mode 100644 index 0000000..ffb3bc1 --- /dev/null +++ b/docs/source/SCREAMv1/FourSeasons/simulation_data/simulation_table.rst @@ -0,0 +1,47 @@ +********************************** +SCREAMv1 Four-Seasons (2024) simulation table +********************************** + ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| Simulation | Data Size (GB) | NERSC HPSS Path | ++===================================================================+=================+===========================================================================+ +| **Main Simulation (40 days)** | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| January 2020 (DYAMOND2 Configuration) | 129.3 | /home/a/adonahue/www/DYAMOND2_SCREAMv1 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| April 2013 | 130.5 | /home/a/adonahue/www/Apr1_2013_SCREAMv1 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| August 2016 (DYAMOND1 Configuration) | 130.4 | /home/a/adonahue/www/DYAMOND1_SCREAMv1 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| October 2013 | 119.0 | /home/a/adonahue/www/Oct1_2013_SCREAMv1 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| **Process Impact - Turbulent Mountain Stress (6 days)** | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| January 2020 (DYAMOND2 Configuration) | 38.3 | /home/a/adonahue/www/Process_Impacts_tests/Wind_Speed/January_DYAMOND2 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| April 2013 | 19.1 | /home/a/adonahue/www/Process_Impacts_tests/Wind_Speed/April | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| August 2016 (DYAMOND1 Configuration) | 19.1 | /home/a/adonahue/www/Process_Impacts_tests/Wind_Speed/August_DYAMOND1 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| October 2013 | 19.1 | /home/a/adonahue/www/Process_Impacts_tests/Wind_Speed/October | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| **Process Impact - *Improved Cloud Tuning (6 days)** | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| January 2020 (DYAMOND2 Configuration) | 19.1 | /home/a/adonahue/www/Process_Impacts_tests/Cloud_Tuning/January_DYAMOND2 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| April 2013 | 19.1 | /home/a/adonahue/www/Process_Impacts_tests/Cloud_Tuning/April | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| August 2016 (DYAMOND1 Configuration) | 19.1 | /home/a/adonahue/www/Process_Impacts_tests/Cloud_Tuning/August_DYAMOND1 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| October 2013 | 19.1 | /home/a/adonahue/www/Process_Impacts_tests/Cloud_Tuning/October | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| **Process Impact - Improved SHOC Tuning (6 days)** | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| January 2020 (DYAMOND2 Configuration) | 15.9 | /home/a/adonahue/www/Process_Impacts_tests/Warm_T/January_DYAMOND2 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| April 2013 | 15.9 | /home/a/adonahue/www/Process_Impacts_tests/Warm_T/April | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| August 2016 (DYAMOND1 Configuration) | 15.9 | /home/a/adonahue/www/Process_Impacts_tests/Warm_T/August_DYAMOND1 | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ +| October 2013 | 15.9 | /home/a/adonahue/www/Process_Impacts_tests/Warm_T/October | ++-------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------+ diff --git a/docs/source/SCREAMv1/index.rst b/docs/source/SCREAMv1/index.rst new file mode 100644 index 0000000..ad04a34 --- /dev/null +++ b/docs/source/SCREAMv1/index.rst @@ -0,0 +1,8 @@ +SCREAMv1 +========================================== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + FourSeasons/index diff --git a/docs/source/index.rst b/docs/source/index.rst index 9a468a7..f090220 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -16,6 +16,8 @@ simulations. :caption: Contents: v2/index + SCREAMv0/index + SCREAMv1/index .. Indices and tables diff --git a/run_scripts/SCREAMv0/original/run.production.ne1024pg2_scream.dyamond2.sh b/run_scripts/SCREAMv0/original/run.production.ne1024pg2_scream.dyamond2.sh new file mode 100644 index 0000000..7b88777 --- /dev/null +++ b/run_scripts/SCREAMv0/original/run.production.ne1024pg2_scream.dyamond2.sh @@ -0,0 +1,199 @@ +#!/bin/bash + +# Set run options +#============================================= +resolution=ne1024pg2_r0125_oRRS18to6v3 +compset=F2010-SCREAM-HR-DYAMOND2 +checkout_date=20201127 #the date you *checked out* the code +branch=ad0e203 #actual git hash of branch to check out +run_descriptor=SCREAMv0 #will be SCREAMv0 for production run +repo=scream +machine=cori-knl +compiler=intel +stop_option="ndays" +stop_n="4" +rest_n="1" +walltime="29:00:00" +queue="regular" +debug_compile='FALSE' +date_string=`date` + +# Setup processor layout +nnodes_atm=1536 +nnodes_ocn=1536 +nthreads=16 +mpi_tasks_per_node=8 +ntasks_atm=$(expr ${nnodes_atm} \* ${mpi_tasks_per_node}) +ntasks_ocn=$(expr ${nnodes_ocn} \* ${mpi_tasks_per_node}) +total_tasks_per_node=$(expr ${mpi_tasks_per_node} \* ${nthreads}) +if [ ${ntasks_ocn} -ne ${ntasks_atm} ]; then + nnodes=$(expr ${nnodes_atm} + ${nnodes_ocn}) +else + nnodes=${nnodes_atm} +fi +pelayout=${nnodes}x${mpi_tasks_per_node}x${nthreads} + +# Who to send email updates on run status to +email_address="terai1@llnl.gov" + +# Set flags specific to running this script +do_download=true +do_newcase=true +do_setup=true +do_build=true +do_submit=true + +case_name=SCREAMv0.SCREAM-DY2.ne1024pg2.${date_string} + +# Set paths +#code_root=${HOME}/gitwork/scream/ +code_root=${CSCRATCH}/E3SM_code/screamv0_20201127/ +case_root=${CSCRATCH}/e3sm_scratch/cori-knl/${case_name} + +###################################################################################### +### USERS PROBABLY DON'T NEED TO CHANGE ANYTHING BELOW HERE EXCEPT user_nl_* FILES ### +###################################################################################### + +# Make directories created by this script world-readable: +#============================================= +umask 022 + +# Download code +#============================================= +if [ "${do_download}" == "true" ]; then + + echo "Cloning repository repo = $repo into branch = $branch under code_root = $code_root" + cdir=`pwd` + mkdir -p $code_root/ + + # This will put repository, with all code, in directory $tag_name + git clone git@github.com:E3SM-Project/${repo}.git $code_root + + # Setup git hooks + rm -rf $code_root/.git/hooks + git clone git@github.com:E3SM-Project/E3SM-Hooks.git $code_root/.git/hooks + cd $code_root + git config commit.template $code_root/.git/hooks/commit.template + + # Bring in all submodule components + git submodule update --init --recursive + + # Check out desired branch + git checkout ${branch} + cd ${cdir} + +fi + +# Create case +#============================================= +if [ "${do_newcase}" == "true" ]; then + ${code_root}/cime/scripts/create_newcase \ + --case ${case_root} \ + --compset ${compset} --res ${resolution} \ + --machine ${machine} --compiler ${compiler} \ + --queue ${queue} \ + --walltime ${walltime} +fi + +# Copy this script to case directory +#============================================= +cp -v `basename $0` ${case_root}/ + +# Setup +#============================================= +if [ "${do_setup}" == "true" ]; then + cd ${case_root} + + # Set run length + ./xmlchange STOP_OPTION=${stop_option},STOP_N=${stop_n} + ./xmlchange REST_N=${rest_n} + + # Set processor layout + if [ ${ntasks_ocn} -ne ${ntasks_atm} ]; then + ./xmlchange NTASKS=${ntasks_ocn} + ./xmlchange NTASKS_ATM=${ntasks_atm} + ./xmlchange ROOTPE_ATM=${ntasks_ocn} + else + ./xmlchange NTASKS=${ntasks_atm} + fi + ./xmlchange NTHRDS_ATM=${nthreads} + ./xmlchange MAX_MPITASKS_PER_NODE=${mpi_tasks_per_node} + ./xmlchange MAX_TASKS_PER_NODE=${total_tasks_per_node} + + # Flag for debug compile + ./xmlchange --id DEBUG --val ${debug_compile} + + # Set PIO format, use PIO version 2, and increase PIO buffer size + ./xmlchange PIO_NETCDF_FORMAT="64bit_data" + ./xmlchange PIO_VERSION="2" + ./xmlchange PIO_BUFFER_SIZE_LIMIT=134217728 + + # Edit CAM namelist to set dycore options for new grid + cat <> user_nl_eam + + !*** By default the model dumps hundreds of vars in h0. Don't do that. *** + empty_htapes=.true. + !*** Outputs for DYAMOND (note fincl can only go to 10) *** + nhtfrq = 12,12,12,12,-3,-3,-3,-3,-3,-3 !output freq: 12 steps=15 mi, -3=3hrs + mfilt = 96,96,96,96,8,8,8,8,8,8 !new file freq: daily in all cases + fincl1 = 'CLDLOW:I', 'CLDMED:I', 'CLDHGH:I', 'CLDTOT:I', 'TMCLDLIQ:I', + 'TMCLDICE:I', 'TMRAINQM:I', 'TMCLDRIM:I', 'TMQ:I', 'CAPE:I', 'CIN:I' + fincl2 = 'PS:I', 'TS:I', 'TREFHT:I', 'QREFHT:I', 'PRECT:I','PRECSL:I', + 'WINDSPD_10M:I', 'TAUX:I', 'TAUY:I', 'SHFLX:I', 'LHFLX:I' + fincl3 = 'FSNTOA:I', 'FLNT:I','FLNTC:I','FSNTOAC:I', 'FSNS:I', 'FSDS:I', + 'FLNS:I', 'FLDS:I' + fincl4 = 'RH200:I', 'RH500:I', 'RH700:I', 'RH850:I', + 'OMEGA200:I', 'OMEGA500:I', 'OMEGA700:I', 'OMEGA850:I', + 'Z200:I', 'Z500:I', 'Z700:I', 'Z850:I' + !*** 3 hrly (mostly 3d) variables below here *** + fincl5 = 'PS:I', 'PSL:I', 'TMNUMLIQ:I', 'TMNUMICE:I', 'TMNUMRAI:I' + fincl6 = 'U:I', 'V:I' + fincl7 = 'T:I', 'Q:I', + fincl8 = 'CLDLIQ:I', 'CLDICE:I' + fincl9 = 'CLOUD:I','OMEGA:I' + fincl10= 'EMIS:I', 'TOT_ICLD_VISTAU:I' + !*** Rad Freq: 4x75sec=5 min which divides 15 min output freq *** + iradsw = 4 + iradlw = 4 + +EOF + + cat <> user_nl_elm + + +EOF + + # Finally, run setup + ./case.setup + + # The run location is determined in the bowels of CIME + # Symlink to that location from user-chosen $case_root (=current dir) + ln -s `./xmlquery -value RUNDIR` run + + + # This disables the logic that sets tprof_n and tprof_options internally. + #./xmlchange --file env_run.xml TPROF_TOTAL=-1 + #echo "tprof_n = 1" >> user_nl_cpl + #echo "tprof_option = 'nsteps'" >> user_nl_cpl +fi + +# Build +#============================================= +if [ "${do_build}" == "true" ]; then + cd ${case_root} + ./case.build + + # Set file striping on run dir for writing large files + ls -l run > /dev/null #just using this command as a check that run dir exists + lfs setstripe -S 1m -c 64 run + lfs getstripe run >& lfs_run.txt +fi + +# Run +#============================================= +if [ "${do_submit}" == "true" ]; then + cd ${case_root} + ./case.submit --batch-args="--mail-type=ALL --mail-user=${email_address}" +fi + +echo "Done working in ${case_root}" diff --git a/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.Apr.sh b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.Apr.sh new file mode 100755 index 0000000..50f81ff --- /dev/null +++ b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.Apr.sh @@ -0,0 +1,97 @@ +#!/bin/sh -e +#==============================================# +# Date: 2022-12-19 +# +# Description: +# +# Submission script used for a 40-day ne1024pg2 +# simulation with the DYAMOND2 configuration. +# +#==============================================# + +## Location of eamxx codebase +eamxx_src=~/Code/scream +## Location of eamxx output control files +eamxx_out_files_root=~/Code/scream-docs +## Location of elm namelist file to use +elm_nl_file=$eamxx_out_files_root/v1_output/user_nl_elm_basic + +## Some provenance information +githash_eamxx=`git --git-dir $eamxx_src/.git rev-parse HEAD` +masterhash_eamxx=`git --git-dir $eamxx_src/.git log -n 1 --pretty=format:"%H" origin/master` +githash_screamdocs=`git --git-dir $eamxx_out_files_root/.git rev-parse HEAD` +masterhash_screamdocs=`git --git-dir $eamxx_out_files_root/.git log -n 1 --pretty=format:"%H" origin/master` + +## Job size information +nnode=1024 +pernode=6 +ntask=$(($pernode * $nnode)) + +## Compset and jobname information +name=4Seasons_April +compset=F2010-SCREAMv1 +res=ne1024pg2_ne1024pg2 +cname=$name.$res.$compset.$githash_eamxx + +## Job submission and compiler information +queue=batch +compiler=gnugpu +machine=summit + +## Create new-case +rm -rf $cname +$eamxx_src/cime/scripts/create_newcase --case ${cname} --compset ${compset} --res ${res} \ + -mach ${machine} --compiler ${compiler} --handle-preexisting-dirs u + +## Run settings +cd $cname +echo "master hash for EAMxx: $masterhash_eamxx" > GIT_INFO.txt +echo "master hash for output files: $masterhash_screamdocs" >> GIT_INFO.txt +./xmlchange JOB_QUEUE=$queue +./xmlchange JOB_WALLCLOCK_TIME=2:00:00 +./xmlchange STOP_OPTION=nhours +./xmlchange STOP_N=48 +./xmlchange HIST_N=99999; ./xmlchange HIST_OPTION=nyears ; +./xmlchange REST_N=48; ./xmlchange REST_OPTION=nhours ; +./xmlchange AVGHIST_OPTION=nyears +./xmlchange AVGHIST_N=1 +# Using threads for LAND +./xmlchange NTASKS=$ntask +./xmlchange MAX_TASKS_PER_NODE=84 +./xmlchange MAX_MPITASKS_PER_NODE=6 +./xmlchange LND_NTHRDS=14 +# Note, MPI on host +./xmlchange SCREAM_CMAKE_OPTIONS="SCREAM_NUM_VERTICAL_LEV 128 SCREAM_NUM_TRACERS 10 HOMMEXX_MPI_ON_DEVICE Off" +./xmlchange PIO_NETCDF_FORMAT="64bit_data" +./xmlchange RESUBMIT=2 +./xmlchange RUN_STARTDATE="2013-04-01" + +## Setup case +./case.setup + +## EAMxx settings +./atmchange Scorpio::output_yaml_files=\ +${eamxx_out_files_root}/v1_output/scream_output.Cldfrac.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QcQi.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QvT.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TOMVars.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.VertIntegrals.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.HorizWinds.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QrPsPsl.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.SurfVars_128lev.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TkeOmega.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_min.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_max.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Qv_2m.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.PresLevs.yaml + +./atmchange statefreq=5184 # 2/day +./atmchange orbital_year=-9999 +./atmchange initial_conditions::Filename=/gpfs/alpine/cli115/world-shared/e3sm_olcf/inputdata/atm/scream/init/screami_ne1024np4L128_era5-20130401-topoadj16x_20221123.nc + +## ELM settings +cp ${elm_nl_file} user_nl_elm + +## Build and submit +./case.build +./case.submit diff --git a/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.Oct.sh b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.Oct.sh new file mode 100755 index 0000000..dce8bc1 --- /dev/null +++ b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.Oct.sh @@ -0,0 +1,96 @@ +#!/bin/sh -e +#==============================================# +# Date: 2022-12-19 +# +# Description: +# +# Submission script used for a 40-day ne1024pg2 +# simulation with the DYAMOND2 configuration. +# +#==============================================# + +## Location of eamxx codebase +eamxx_src=~/Code/scream +## Location of eamxx output control files +eamxx_out_files_root=~/Code/scream-docs +## Location of elm namelist file to use +elm_nl_file=$eamxx_out_files_root/v1_output/user_nl_elm_20221013 + +## Some provenance information +githash_eamxx=`git --git-dir $eamxx_src/.git rev-parse HEAD` +masterhash_eamxx=`git --git-dir $eamxx_src/.git log -n 1 --pretty=format:"%H" origin/master` +githash_screamdocs=`git --git-dir $eamxx_out_files_root/.git rev-parse HEAD` +masterhash_screamdocs=`git --git-dir $eamxx_out_files_root/.git log -n 1 --pretty=format:"%H" origin/master` + +## Job size information +nnode=1024 +pernode=6 +ntask=$(($pernode * $nnode)) + +## Compset and jobname information +name=4Seasons_October +compset=F2010-SCREAMv1 +res=ne1024pg2_ne1024pg2 +cname=$name.$res.$compset.$githash_eamxx + +## Job submission and compiler information +queue=batch +compiler=gnugpu +machine=summit + +## Create new-case +rm -rf $cname +$eamxx_src/cime/scripts/create_newcase --case ${cname} --compset ${compset} --res ${res} \ + -mach ${machine} --compiler ${compiler} --handle-preexisting-dirs u + +## Run settings +cd $cname +echo "master hash for EAMxx: $masterhash_eamxx" > GIT_INFO.txt +echo "master hash for output files: $masterhash_screamdocs" >> GIT_INFO.txt +./xmlchange JOB_QUEUE=$queue +./xmlchange JOB_WALLCLOCK_TIME=2:00:00 +./xmlchange STOP_OPTION=nhours +./xmlchange STOP_N=48 +./xmlchange HIST_N=99999; ./xmlchange HIST_OPTION=nyears ; +./xmlchange REST_N=48; ./xmlchange REST_OPTION=nhours ; +./xmlchange AVGHIST_OPTION=nyears +./xmlchange AVGHIST_N=1 +# Using threads for LAND +./xmlchange NTASKS=$ntask +./xmlchange MAX_TASKS_PER_NODE=84 +./xmlchange MAX_MPITASKS_PER_NODE=6 +./xmlchange LND_NTHRDS=14 +# Note, MPI on host +./xmlchange SCREAM_CMAKE_OPTIONS="SCREAM_NUM_VERTICAL_LEV 128 SCREAM_NUM_TRACERS 10 HOMMEXX_MPI_ON_DEVICE Off" +./xmlchange PIO_NETCDF_FORMAT="64bit_data" +./xmlchange RESUBMIT=2 +./xmlchange RUN_STARTDATE="2013-10-01" + +## Setup case +./case.setup + +## EAMxx settings +./atmchange Scorpio::output_yaml_files=\ +${eamxx_out_files_root}/v1_output/scream_output.Cldfrac.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QcQi.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QvT.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TOMVars.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.VertIntegrals.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.HorizWinds.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QrPsPsl.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.SurfVars_128lev.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TkeOmega.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_min.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_max.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Qv_2m.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.PresLevs.yaml + +./atmchange statefreq=5184 # 2/day +./atmchange orbital_year=-9999 + +## ELM settings +cp ${elm_nl_file} user_nl_elm + +## Build and submit +./case.build +./case.submit diff --git a/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.dyamond1.sh b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.dyamond1.sh new file mode 100755 index 0000000..7c32e52 --- /dev/null +++ b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.dyamond1.sh @@ -0,0 +1,95 @@ +USER_ENTRY#!/bin/sh -e +#==============================================# +# Date: 2022-12-19 +# +# Description: +# +# Submission script used for a 40-day ne1024pg2 +# simulation with the DYAMOND2 configuration. +# +#==============================================# + +## Location of eamxx codebase +eamxx_src=~/Code/scream +## Location of eamxx output control files +eamxx_out_files_root=~/Code/scream-docs +## Location of elm namelist file to use +elm_nl_file=$eamxx_out_files_root/v1_output/user_nl_elm_20221031_DYAMOND1 + +## Some provenance information +githash_eamxx=`git --git-dir $eamxx_src/.git rev-parse HEAD` +masterhash_eamxx=`git --git-dir $eamxx_src/.git log -n 1 --pretty=format:"%H" origin/master` +githash_screamdocs=`git --git-dir $eamxx_out_files_root/.git rev-parse HEAD` +masterhash_screamdocs=`git --git-dir $eamxx_out_files_root/.git log -n 1 --pretty=format:"%H" origin/master` + +## Job size information +nnode=1024 +pernode=6 +ntask=$(($pernode * $nnode)) + +## Compset and jobname information +name=4Seasons_DYAMOND1 +compset=F2010-SCREAMv1-DYAMOND1 +res=ne1024pg2_ne1024pg2 +cname=$name.$res.$compset.$githash_eamxx + +## Job submission and compiler information +queue=batch +compiler=gnugpu +machine=summit + +## Create new-case +rm -rf $cname +$eamxx_src/cime/scripts/create_newcase --case ${cname} --compset ${compset} --res ${res} \ + -mach ${machine} --compiler ${compiler} --handle-preexisting-dirs u + +## Run settings +cd $cname +echo "master hash for EAMxx: $masterhash_eamxx" > GIT_INFO.txt +echo "master hash for output files: $masterhash_screamdocs" >> GIT_INFO.txt +./xmlchange JOB_QUEUE=$queue +./xmlchange JOB_WALLCLOCK_TIME=2:00:00 +./xmlchange STOP_OPTION=nhours +./xmlchange STOP_N=48 +./xmlchange HIST_N=99999; ./xmlchange HIST_OPTION=nyears ; +./xmlchange REST_N=48; ./xmlchange REST_OPTION=nhours ; +./xmlchange AVGHIST_OPTION=nyears +./xmlchange AVGHIST_N=1 +# Using threads for LAND +./xmlchange NTASKS=$ntask +./xmlchange MAX_TASKS_PER_NODE=84 +./xmlchange MAX_MPITASKS_PER_NODE=6 +./xmlchange LND_NTHRDS=14 +# Note, MPI on host +./xmlchange SCREAM_CMAKE_OPTIONS="SCREAM_NUM_VERTICAL_LEV 128 SCREAM_NUM_TRACERS 10 HOMMEXX_MPI_ON_DEVICE Off" +./xmlchange PIO_NETCDF_FORMAT="64bit_data" +./xmlchange RESUBMIT=2 + +## Setup case +./case.setup + +## EAMxx settings +./atmchange Scorpio::output_yaml_files=\ +${eamxx_out_files_root}/v1_output/scream_output.Cldfrac.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QcQi.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QvT.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TOMVars.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.VertIntegrals.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.HorizWinds.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QrPsPsl.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.SurfVars_128lev.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TkeOmega.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_min.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_max.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Qv_2m.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.PresLevs.yaml + +./atmchange statefreq=5184 # 2/day +./atmchange orbital_year=-9999 + +## ELM settings +cp ${elm_nl_file} user_nl_elm + +## Build and submit +./case.build +./case.submit diff --git a/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.dyamond2.sh b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.dyamond2.sh new file mode 100755 index 0000000..6f5e7b2 --- /dev/null +++ b/run_scripts/SCREAMv1/original/run.production.ne1024pg2_screamv1.dyamond2.sh @@ -0,0 +1,95 @@ +#!/bin/sh -e +#==============================================# +# Date: 2022-12-19 +# +# Description: +# +# Submission script used for a 40-day ne1024pg2 +# simulation with the DYAMOND2 configuration. +# +#==============================================# + +## Location of eamxx codebase +eamxx_src=~/Code/scream +## Location of eamxx output control files +eamxx_out_files_root=~/Code/scream-docs +## Location of elm namelist file to use +elm_nl_file=$eamxx_out_files_root/v1_output/user_nl_elm_20221031_DYAMOND1 + +## Some provenance information +githash_eamxx=`git --git-dir $eamxx_src/.git rev-parse HEAD` +masterhash_eamxx=`git --git-dir $eamxx_src/.git log -n 1 --pretty=format:"%H" origin/master` +githash_screamdocs=`git --git-dir $eamxx_out_files_root/.git rev-parse HEAD` +masterhash_screamdocs=`git --git-dir $eamxx_out_files_root/.git log -n 1 --pretty=format:"%H" origin/master` + +## Job size information +nnode=1024 +pernode=6 +ntask=$(($pernode * $nnode)) + +## Compset and jobname information +name=4Seasons_DYAMOND2 +compset=F2010-SCREAMv1-DYAMOND2 +res=ne1024pg2_ne1024pg2 +cname=$name.$res.$compset.$githash_eamxx + +## Job submission and compiler information +queue=batch +compiler=gnugpu +machine=summit + +## Create new-case +rm -rf $cname +$eamxx_src/cime/scripts/create_newcase --case ${cname} --compset ${compset} --res ${res} \ + -mach ${machine} --compiler ${compiler} --handle-preexisting-dirs u + +## Run settings +cd $cname +echo "master hash for EAMxx: $masterhash_eamxx" > GIT_INFO.txt +echo "master hash for output files: $masterhash_screamdocs" >> GIT_INFO.txt +./xmlchange JOB_QUEUE=$queue +./xmlchange JOB_WALLCLOCK_TIME=2:00:00 +./xmlchange STOP_OPTION=nhours +./xmlchange STOP_N=48 +./xmlchange HIST_N=99999; ./xmlchange HIST_OPTION=nyears ; +./xmlchange REST_N=48; ./xmlchange REST_OPTION=nhours ; +./xmlchange AVGHIST_OPTION=nyears +./xmlchange AVGHIST_N=1 +# Using threads for LAND +./xmlchange NTASKS=$ntask +./xmlchange MAX_TASKS_PER_NODE=84 +./xmlchange MAX_MPITASKS_PER_NODE=6 +./xmlchange LND_NTHRDS=14 +# Note, MPI on host +./xmlchange SCREAM_CMAKE_OPTIONS="SCREAM_NUM_VERTICAL_LEV 128 SCREAM_NUM_TRACERS 10 HOMMEXX_MPI_ON_DEVICE Off" +./xmlchange PIO_NETCDF_FORMAT="64bit_data" +./xmlchange RESUBMIT=2 + +## Setup case +./case.setup + +## EAMxx settings +./atmchange Scorpio::output_yaml_files=\ +${eamxx_out_files_root}/v1_output/scream_output.Cldfrac.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QcQi.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QvT.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TOMVars.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.VertIntegrals.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.HorizWinds.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.QrPsPsl.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.SurfVars_128lev.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.TkeOmega.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_min.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Temp_2m_max.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.Qv_2m.yaml,\ +${eamxx_out_files_root}/v1_output/scream_output.PresLevs.yaml + +./atmchange statefreq=5184 # 2/day +./atmchange orbital_year=-9999 + +## ELM settings +cp ${elm_nl_file} user_nl_elm + +## Build and submit +./case.build +./case.submit diff --git a/utils/generate_html.bash b/utils/generate_html.bash index e67b4a8..1435a8e 100755 --- a/utils/generate_html.bash +++ b/utils/generate_html.bash @@ -1,5 +1,15 @@ -python generate_tables.py +pr_num=49 + +# Chrysalis +destination_dir=/lcrc/group/e3sm/public_html/diagnostic_output/$USER/data_docs_${pr_num} +web_page="https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/$USER/data_docs_${pr_num}/html/" +# Perlmutter +#destination_dir=/global/cfs/cdirs/e3sm/www/$USER/data_docs_${pr_num} +#web_page="https://portal.nersc.gov/cfs/e3sm/$USER/data_docs_${pr_num}/html/" + +#python generate_tables.py cd ../docs/ && make html -rm -rf /global/cfs/cdirs/e3sm/www/$USER/data_docs -mv _build /global/cfs/cdirs/e3sm/www/$USER/data_docs -chmod -R o+rx /global/cfs/cdirs/e3sm/www/$USER/data_docs +rm -rf ls ${destination_dir} +mv _build ${destination_dir} +chmod -R o+rx ${destination_dir} +echo "Go to: ${web_page}"