Running Supported Single-point/Regional Datasets

In addition to PTS_MODE the CLM supports running using single-point or regional datasets that are customized to a particular region. In the section below we tell the user how to create their own dataset, but we also support a small number of single-point and regional datasets that are ready to setup and run in the CESM modeling system.

To get the list of supported dataset resolutions see the method given in the section on use of CLM_PT1_NAME, which results in the following:


build-namelist - valid values for res (Horizontal resolutions
Note: 0.5x0.5 and 0.33x0.33 are only used for CLM tools):
                  Values: default 512x1024 128x256 64x128 48x96 32x64 8x16 94x192 0.23x0.31  \ 
   0.47x0.63 0.9x1.25 1.9x2.5 2.5x3.33 4x5 10x15 5x5_amazon 1x1_tropicAtl 1x1_camdenNJ  \ 
   1x1_vancouverCAN 1x1_mexicocityMEX 1x1_asphaltjungleNJ 1x1_brazil 1x1_urbanc_alpha 1x1_numaIA  \ 
   1x1_smallvilleIA 0.5x0.5 0.33x0.33
                  Default = 1.9x2.5
                  (NOTE: resolution and mask and other settings may influence what the default is)

The resolution names that have an underscore in them ("_") are all single-point or regional resolutions. To run with the supported single-point and regional datasets, you setup a simulation for the "pt1_pt1" resolution and give the short-name for the file to use in the env_conf.xml file.

To run for the Brazil test site do the following:

Example 5-1. Example of running CLM over a single-point test site in Brazil with the default Qian atmosphere data forcing.


> cd scripts
> ./create_newcase -case testSPDATASET -res pt1_pt1 -compset I \
-mach bluefire
> cd testSPDATASET
# Configure to run for the test site
> set SITE=1x1_brazil
> ./xmlchange -file env_conf.xml -id CLM_CONFIG_OPTS -val "-sitespf_pt $SITE"
> ./xmlchange -file env_conf.xml -id CLM_PT1_NAME -val $SITE

Then configure, build and run normally.

Then to run for the urban Mexico City Mexico test site that also has atmosphere forcing data, but to run it with the Qian forcing data, but over the period for which it's own forcing data is provided do the following:

Example 5-2. Example of running CLM over the single-point of Mexicocity Mexico with the default Qian atmosphere data forcing.


> cd scripts
> ./create_newcase -case testSPDATASET -res pt1_pt1 -compset I \
-mach bluefire
> cd testSPDATASET
# Set a variable to the site you want to use (as it's used several times below)
> set SITE=1x1_mexicocityMEX
# Configure to run for the urban test site
> ./xmlchange -file env_conf.xml -id CLM_CONFIG_OPTS -val "-sitespf_pt $SITE"
> ./xmlchange -file env_conf.xml -id CLM_PT1_NAME -val $SITE
# Set DATM prescribed aerosols to single-point dataset
# Will then use the dataset with just the point for this $SITE
> ./xmlchange -file env_conf.xml -id DATM_PRESAERO -val pt1_pt1
#
# Set some of the settings that are particular to this site, by values contained
# in the XML database. For some sites, or for new sites this information won't be
# stored. And the queryDefaultNamelist.pl command will abort.
#
# Set DATM start and end range (optional just to run over the same years that
# atmospheric forcing data is available for this site)
> ./xmlchange -file env_conf.xml -id DATM_CLMNCEP_YR_START -val \
`../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE \
-namelist default_settings -silent -var datm_cycle_beg_year -justvalue`
> ./xmlchange -file env_conf.xml -id DATM_CLMNCEP_YR_END -val \
`../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE  \
-namelist default_settings -silent -var datm_cycle_end_year -justvalue`

Then configure, build and run normally.

Important: Just like PTS_MODE above, By default it sets up to run with USE_MPISERIAL (in the env_build.xml file) turned on, which allows you to run the model interactively. On some machines this mode is NOT supported and you may need to change it to FALSE before you are able to build.

Warning

See the Section called Warning about Running with a Single-Processor on a Batch Machine for a warning about running single-point jobs on batch machines.

Note: Note, that when running a pt1_pt1 resolution the number of processors is automatically set to one. When running a single grid point you can only use a single processor. You might also want to set the "env_conf" variable: USE_MPISERIAL to TRUE so that you can also run interactively without having to use mpi to start up your job.

Running Supported Single-point Datasets that have their own Atmospheric Forcing

Of the supported single-point datasets we have three that also have atmospheric forcing data that go with them: Mexico City (Mexico), Vancouver, (Canada, British Columbia), and urbanc_alpha (test data for an Urban inter-comparison project). Mexico city and Vancouver also have "#ifdef" in the source code for them to work with modified urban data parameters that are particular to these locations. They can be turned on by using the CLM_CONFIG_OPTS env_conf.xml variable to set the "-sitespf_pt" option in the CLM configure. To turn on the atmospheric forcing for these datasets, you set the env_conf.xml DATM_MODE variable to "CLM1PT", and then the atmospheric forcing datasets will be used for the point picked.

When running with datasets that have their own atmospheric forcing you need to be careful to run over the period that data is available. If you have at least one year of forcing it will cycle over the available data over and over again no matter how long of a simulation you run. However, if you have less than a years worth of data (or if the start date doesn't start at the beginning of the year, or the end date doesn't end at the end of the year) then you won't be able to run over anything but the data extent. In this case you will need to carefully set the RUN_STARTDATE, START_TOD and STOP_N/STOP_OPTION variables for your case to run over the entire time extent of your data. For the supported data points, these values are in the XML database and you can use the queryDefaultNamelist.pl script to query the values and set them for your case (they are set for the three urban test cases: Mexicocity, Vancouver, and urbanc_alpha).

In the example below we will show how to do this for the Vancouver, Canada point.

Example 5-3. Example of running CLM over the single-point of Vancouver Canada with supplied atmospheric forcing data for Vancouver.


> cd scripts
# Create a case at the single-point resolutions
> ./create_newcase -case testSPDATASETnAtmForcing -res pt1_pt1 -compset I \
-mach bluefire
> cd testSPDATASETnAtmForcing
# Set a variable to the site you want to use (as it's used several times below)
> set SITE=1x1_vancouverCAN
> ./xmlchange -file env_conf.xml -id CLM_CONFIG_OPTS -val "-sitespf_pt $SITE"
# Now set the CLM single-point variable to the site name
> ./xmlchange -file env_conf.xml -id CLM_PT1_NAME -val $SITE
# Set the aerosols to use the single-point dataset for 2000 conditions
# You could also use the default global dataset, but running would be a bit slower
> ./xmlchange -file env_conf.xml -id DATM_MODE -val CLM1PT
# Set the coupling frequency to once an hour
> ./xmlchange -file env_conf.xml -id ATM_NCPL -val 24
# Set the standard namelist options for an urban test site
> ./xmlchange -file env_conf.xml -id CLM_NML_USE_CASE -val stdurbpt
# Set many of the settings that are particular to this site, by values contained
# in the XML database. For some sites, or for new sites this information won't be
# stored. And the queryDefaultNamelist.pl command will abort.
#
# Set the start date 
> setenv RUN_STARTDATE \
`../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE \
-namelist default_settings -silent -var run_startdate -justvalue`
> setenv STARTDATE `echo $RUN_STARTDATE | sed s/-//g`
> @ START_YEAR = $STARTDATE / 10000
> ./xmlchange -file env_conf.xml -id RUN_STARTDATE -val $RUN_STARTDATE
# Set the run length and start time of day
> ./xmlchange -file env_run.xml -id STOP_OPTION \
-val `../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE \
-namelist seq_timemgr_inparm -silent -var stop_option -justvalue`
> setenv STOP_N \
`../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE \
-namelist seq_timemgr_inparm -silent -var stop_n -justvalue`
> ./xmlchange -file env_run.xml -id STOP_N  -val $STOP_N
> ./xmlchange -file env_run.xml -id START_TOD \
-val `../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE \
-namelist seq_timemgr_inparm -silent -var start_tod -justvalue`
# Set DATM start and end range...
> ./xmlchange -file env_conf.xml -id DATM_CLMNCEP_YR_START -val
`../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE \
-namelist default_settings -silent -var datm_cycle_beg_year -justvalue`
> ./xmlchange -file env_conf.xml -id DATM_CLMNCEP_YR_END -val
`../../models/lnd/clm/bld/queryDefaultNamelist.pl -res $SITE \
-namelist default_settings -silent -var datm_cycle_end_year -justvalue`
# Set the User namelist to set the output frequencies of the history files
# Setting the stdurbpt use-case option create three history file streams
# The frequencies and number of time-samples needs to be set
> cat << EOF > user_nl_clm
&clm_inparm
 hist_mfilt = $STOP_N,$STOP_N,$STOP_N
 hist_nhtfrq = -1,-1,-1
/
EOF
# Set align year to start year as defined above
> ./xmlchange -file env_conf.xml -id DATM_CLMNCEP_YR_ALIGN -val $START_YEAR
# Set DATM prescribed aerosols to single-point dataset
# Will then use the dataset with just the point for this site
> ./xmlchange -file env_conf.xml -id DATM_PRESAERO -val pt1_pt1
> ./configure -case

Caution

If you don't set the start-year and run-length carefully as shown above the model will abort with a "dtlimit error" in the atmosphere model (see bug 1110 in the models/lnd/clm/doc/KnownLimitationss file for documentation on this). Since, the forcing data for this site (and the MexicoCity site) is less than a year, the model won't be able to run for a full year. The 1x1_urbanc_alpha site has data for more than a full year, but neither year is complete hence, it has the same problem (see the problem for this site above).

Important: Just like PTS_MODE above, By default it sets up to run with USE_MPISERIAL (in the env_build.xml file) turned on, which allows you to run the model interactively. On some machines this mode is NOT supported and you may need to change it to FALSE before you are able to build.

Warning

See the Section called Warning about Running with a Single-Processor on a Batch Machine for a warning about running single-point jobs on batch machines.

Note: Note, that when running a pt1_pt1 resolution the number of processors is automatically set to one. When running a single grid point you can only use a single processor. You might also want to set the "env_conf" variable: USE_MPISERIAL to TRUE so that you can also run interactively without having to use mpi to start up your job.