GEOS GCM Single Column Model: Difference between revisions

Created page with "This page describes the steps necessary to set up and run the Single Column Model (SCM) under GEOS GCM on discover. It assumes that you have successfully run the model as des..."
 
 
Line 1: Line 1:
This page describes the steps necessary to set up and run the Single Column Model (SCM) under GEOS GCM on discover.  It assumes that you have successfully run the model as described in the Quick Start guide.
This page describes the steps necessary to set up and run the Single Column Model (SCM) under GEOS GCM on discover.  It assumes that you have successfully run the model as described in the Quick Start guide.


== Setting Up and Running Existing SCM Experiments ==
= Setting Up and Running Existing SCM Experiments =
 
== SCM Cases Available ==


The GEOS executable will run the single column model with any of the cases below.  '''The executable of the Single Column Model is identical to the global model'''; the only differences are the environment and settings with which it runs.  It uses a different setup script from global runs: <code>src/Applications/GEOSgcm_App/scm_setup</code> .  You do ''not'' run the <code>gcm_setup</code> script as you do to set up a global run.  The setup script is specific to model tags, so use only the one that comes with the model tag.
The GEOS executable will run the single column model with any of the cases below.  '''The executable of the Single Column Model is identical to the global model'''; the only differences are the environment and settings with which it runs.  It uses a different setup script from global runs: <code>src/Applications/GEOSgcm_App/scm_setup</code> .  You do ''not'' run the <code>gcm_setup</code> script as you do to set up a global run.  The setup script is specific to model tags, so use only the one that comes with the model tag.
Line 21: Line 23:
* A MERRA-forced experiment at KAN L Greeland, March 2013
* A MERRA-forced experiment at KAN L Greeland, March 2013


== Creating an experiment ==
In the GEOS GCM, once built, you will have a <code>scm_setup</code> script in the <code>GEOSgcm/install/bin</code> directory. The usage of this script is:
<nowiki>$ ./scm_setup -h
Usage: ./scm_setup --expdir <directory> --case <case> (--num_levels <# of levels>)


Create your own run directory in $NOBACKUP, then modify and uncomment the first executable line of <code>scm_setup</code>, which assigns <code>ESMADIR</code> to your local GEOS build that you are using for the SCM (you may already have this set as an environment variable).  Uncomment one of the lines that assign the variable <code>CASEDIR</code> to choose the experiment to run.  Then run the script from the run directory you have created.  For example, if you selected the <tt>arm_97jul</tt> case:
  Required arguments:
    --expdir: experiment directory


  $ cp $ESMADIR/src/Applications/GEOSgcm_App/scm_setup .
    --case: case to run where the allowed cases are:
  $ ./scm_setup arm_97jul
      arm_97jul                      arm_kwjx                        arm_scsmex
      armtwp_ice                      barrow2013                      COARE
      e572p1_discaq                  LASIC_aug2016                  merra2_arise_ice_2014
      merra2_arise_opnw_2014          merra2_ascos2008                merra2_barrow2013
      merra_arm97jul                  merra_arm_scmx                  merra_armsgp
      merra_coare                    merra-Kan-L                    merra_kwjx
      merra_nameaznm                  merra_namecore                  merra_namma
      merra_trmm                      merra_twp                      scm_cfmip2-p11
      scm_cfmip2-p12                  scm_cfmip2-p6                  scm_cfmip2-s11
      scm_cfmip2-s12                  scm_cfmip2-s6                  scm_cfmip-p11
      scm_cfmip-p12                  scm_cfmip-p6                    scm_cfmip-s11
      scm_cfmip-s12                  scm_cfmip-s6                    TRMM_LBA
 
  Optional argument:
    --num_levels: number of levels (72 or 132 allowed). NOTE: This
                  is fragile as some cases might not yet support 132 levels</nowiki>
 
You run it like:
 
  $ ./scm_setup --expdir /discover/nobackup/mathomp4/Experiments/SCM-arm_97jul --case arm_97jul
Using case: arm_97jul
Number of levels: 72
Experiment directory: /discover/nobackup/mathomp4/Experiments/SCM-arm_97jul
  SUCCESS! The arm_97jul experiment has been created in /discover/nobackup/mathomp4/Experiments/SCM-arm_97jul


It will copy all of the necessary resource, forcing and data files to the working directory:
It will copy all of the necessary resource, forcing and data files to the working directory:


  <nowiki>
  <nowiki>
$ ls -ltr
$ lt
total 11M
.rwxr-xr-x mathomp4 g0620 298.9 MB Mon Jun 1 10:54:39 2020  GEOSgcm.x*
-rwxr-xr-x 1 mathomp4 g0620 5.0K Jun 22 14:35 scm_setup*
.rw-r--r-- mathomp4 g0620   2.5 MB Mon Jun 1 10:54:39 2020  arm_97jul.dat
lrwxrwxrwx 1 mathomp4 g0620  78 Jun 22 14:35 GEOSgcm.x -> /discover/swdev/mathomp4/Models/GEOSgcm/install/bin/GEOSgcm.x*
.rw-r--r-- mathomp4 g0620   12 B  Mon Jun 1 10:54:39 2020  topo_dynave.data
-rwxr-xr-x 1 mathomp4 g0620 2.5M Jun 22 14:35 arm_97jul.dat*
.rwxr-xr-x mathomp4 g0620  14.3 KB Mon Jun 1 10:54:39 2020  fraci.data*
-rwxr-xr-x 1 mathomp4 g0620   12 Jun 22 14:35 topo_dynave.data*
.rwxr-xr-x mathomp4 g0620     1 KB Mon Jun 1 10:54:39 2020  SEAWIFS_KPAR_mon_clim.data*
-rwxr-xr-x 1 mathomp4 g0620  15K Jun 22 14:35 fraci.data*
.rwxr-xr-x mathomp4 g0620  14.3 KB Mon Jun 1 10:54:39 2020  sst.data*
-rwxr-xr-x 1 mathomp4 g0620 1.1K Jun 22 14:35 SEAWIFS_KPAR_mon_clim.data*
.rwxr-xr-x mathomp4 g0620  14.3 KB Mon Jun 1 10:54:39 2020  sstsi.data*
-rwxr-xr-x 1 mathomp4 g0620  15K Jun 22 14:35 sst.data*
.rwxr-xr-x mathomp4 g0620   464 B Mon Jun 1 10:54:39 2020  tile.data*
-rwxr-xr-x 1 mathomp4 g0620  15K Jun 22 14:35 sstsi.data*
...
-rwxr-xr-x 1 mathomp4 g0620  464 Jun 22 14:35 tile.data*
.rw-r--r-- mathomp4 g0620  1.8 KB Mon Jun 1 10:54:40 2020  sedfile.SCM
-rwxr-xr-x 1 mathomp4 g0620  12 Jun 22 14:35 topo_gwdvar.data*
.rwxr-xr-x mathomp4 g0620  6.3 MB Mon Jun 1 10:54:40 2020  species7.cpl.z_91x72*
-rwxr-xr-x 1 mathomp4 g0620  12 Jun 22 14:35 topo_trbvar.data*
.rw-r--r-- mathomp4 g0620 43.2 KB Mon Jun 1 10:54:40 2020  AGCM.rc.tmpl
-rwxr-xr-x 1 mathomp4 g0620 3.6K Jun 22 14:35 lai.dat*
.rw-r--r-- mathomp4 g0620   275 B  Mon Jun  1 10:54:40 2020  sedfile.CASE
-rwxr-xr-x 1 mathomp4 g0620 1.1K Jun 22 14:35 green.dat*
.rwxr-xr-x mathomp4 g0620  412 B  Mon Jun 1 10:54:40 2020  AGCM.CASE.txt*
-rwxr-xr-x 1 mathomp4 g0620 1.1K Jun 22 14:35 nirdf.dat*
.rw-r--r-- mathomp4 g0620 39.4 KB Mon Jun 1 10:54:40 2020  AGCM.rc
-rwxr-xr-x 1 mathomp4 g0620  12 Jun 22 14:35 vegdyn.data*
.rw-r--r-- mathomp4 g0620 187.9 KB Mon Jun 1 10:54:40 2020  ExtData.rc
-rwxr-xr-x 1 mathomp4 g0620 1.1K Jun 22 14:35 visdf.dat*
-rwxr-xr-x 1 mathomp4 g0620  768 Jun 22 14:35 catch_internal_rst*
</nowiki>
</nowiki>


Each experiment requires its own directory.  If you modify the resource files (e.g., HISTORY.rc) you may want to copy the setup directory to your own area and modify it and the setup script accordingly so that you don't clobber your modifications.
Then you can just run the model executable from the command line in the directory you created.  You will have to load the proper modules by sourcing <code>g5_modules</code> in the build you are using.  Although it runs with a single processor, on '''discover''' you should run it from an interactive job on a compute node (as opposed to the '''discover''' front end).  This can be done by running:
 
Then you can just run the model executable from the command line in the directory you created.  You will have to load the proper modules by sourcing <code>src/g5_modules</code> in the build you are using.  Although it runs with a single processor, on '''discover''' you should run it from an interactive job on a compute node (as opposed to the '''discover''' front end).  This can be done by running:


  $ xalloc --ntasks=1 --time=08:00:00 --job-name=Interactive --constraint=hasw --account='''accountnumber'''
  $ xalloc --ntasks=1 --time=08:00:00 --job-name=Interactive --constraint=hasw --account='''accountnumber'''