Held Suarez

Note, these instructions are only valid for the 2017 CESM2 release. If you wish to run the Held-Suarez configuration prior to the CESM2 release, please contact Isla Simpson (islas@ucar.edu)

This page describes how to run the CAM pseudo-spectral dynamical core with the CAM physics package replaced by a simple relaxation of the temperature field toward a specified zonally symmetric equilibrium temperature profile and simple linear drag at the lower boundary.  This follows the specifications outlined by Held and Suarez (1994), Bull. Amer. Met. Soc., 75, 1825-1830.

This can be run "out of the box" using the pseudo-spectral dynamical core, at three different resolutions (T42L30, T85L30 and T85L60) with even sigma levels in the vertical.  It can, however, easily be adapted to use other horizontal and vertical resolutions, or to make use of the Finite Volume and Spectral Element dynamical cores.

Setting up and Running the Held-Suarez Configuration

In CESM2.0 and subsequent CESM releases, the dynamical core can be run in the Held-Suarez configuration by using the compset "FHS94".  The following describes how to set this up and run it, using a CESM release that is located in the directory $CESM.  It is recommended that an initial simulation of length 1200 days be performed to ensure the model is set up correctly. 

Step 1:Set up the Held-Suarez case

A Held-Suarez simulation can be set up e.g., for the T42 resolution, by executing the following command from the $CESM/cime/scripts directory

./create_newcase --case $CASEDIR --compset FHS94 --res T42_T42 --mach $MACH --confopts _Ld1200

where the case directory ($CASEDIR) and machine ($MACH) are specified by the user e.g., when using yellowstone, $MACH = yellowstone.    In order to run the T85L30 or T85L60 resolutions, T42_T42 can simply be replaced by T85_T85 or T85z60_T85 in the above command.

Step 2:Configure the Held-Suarez Case

The configure option "_Ld1200" in the command above ensures that the model runs for 1200 days.  This could alternatively be set up from within $CASEDIR using the following command

./xmlchange STOP_OPTION=ndays,STOP_N=1200

Depending on how the job queue's are set up on the machine being used, it may be necessary to divide the simulation up into separate parts, especially for the higher resolution case.  As an example, to run the simulation in four separate chunks of length 300 days, execute the following xml command from within $CASEDIR

./xmlchange STOP_OPTION=ndays,STOP_N=300,RESUBMIT=3

Step 3:Set-up and Build the Case

Set-up and build the case by invoking the following commands from within $CASEDIR


Step 4:Run the Case


See the CESM users guide for more information on these procedures.

Step 5:Validate the model output

By default, both monthly and 6 hourly instantaneous fields are output from the simulation.  The monthly history files contain a number of standard fields and of note is that here the variable QRS is the temperature tendency associated with the relaxation toward the equilibrium temperature profile.  There is also a non-zero temperature tendency associated with horizontal diffusion (DTH).  This temperature tendency includes frictional heating rates associated with the kinetic energy dissipation by horizontal diffusion of momentum as well as a correction that accounts for the fact that horizontal diffusion is being applied on model levels, not pressure levels (see CAM5 documentation, section 3.3.17).  

The 6 hourly instantaneous fields consist of zonal and meridional wind (U and V) and temperature (T).  This NCL script can be used to produce the following plots from days 200 to 1200 of the simulation, using the 6 hourly instantaneous fields.  It is recommended that new users ensure that similar results are obtained with their set up i.e., westerly jets in each hemisphere with similar magnitudes to those below, along with comparable eddy temperature variance and northward eddy momentum and heat fluxes.  Note that one may expect small deviations from these results due to a different sampling of the natural variability that is inherent to the model.  

Figure 1: Zonal mean outputs for days 200 to 1200 of a simulation run using the FHS94 compset at T42L30 resolution. (Top left) zonal wind, (top right) eddy temperature variance, (bottom left) northward eddy momentum flux and (bottom right) northward eddy heat flux.

Figure 2: As Figure 1, but for the T85L30 resolution.

About the default configuration

The default configuration is initialized from an isothermal, at rest, state and instabilities are introduced through the addition of noise to the temperature field.  The default initial conditions were generated using NCL scripts that can be downloaded here.  Users who wish to start from their own initial conditions may find these scripts to be a useful starting point to ensure the initial condition files are in the correct format.  (Note these are the same scripts used to make the initial conditions for the DABI test case described here).

When using the pseudo-spectral dynamical core, a decision has to be made as to what horizontal diffusion parameters to use.  The default configuration uses a fourth order hyperdiffusion with a damping timescale of 0.5days on the smallest scale.  This timescale was chosen as it was found to be one of the weakest damping strengths that still gave rise to smooth structures in the vorticity field at both T42 and T85 horizontal resolutions.  The parameters that determine the order and strength of the horizontal diffusion are  eul_hdif_order and eul_hdif_coef.  In order to give a damping timescale of 0.5days on the smallest scale, the default values of these parameters are


eul_hdif_order = 4

eul_hdif_coef = 1.17x1016


eul_hdif_order = 4

eul_hdif_coef = 7.14x1014

The appropriate value of eul_hdif_coef is determined via the following expression

eul_hdif_coef = (1/tau)(a^2/(n(n+1)))^(eul_hdif_order/2.)

where tau is the required damping timescale, a is the radius of the Earth and n is the total wavenumber of the smallest scale. See e.g., MacVean (1980)

These defaults can easily be modified by setting the value of these variables in the cam namelist in the file user_nl_cam.

Modifying the default configuration