CESM2

Downloading CESM2

If you haven't already done so, register for a Github account at github.com.

Download CESM2 SUGGESTION: You might want to call your sandbox something like "CESM2" instead of "my_cesm_sandbox."

Picking a configuration

Components: CAM atmosphere, CLM land, MOSART runoff, POP ocean, WaveWatch III ocean waves, CICE sea ice, CISM land ice

Combination of active/inactive components called a component set (compset). We'll use active CAM/CLM (F compset). You can run cime/scripts/query_config --compsets for a list of valid compsets.

Grids: "Default" grid is 0.9° × 1.25° (f09_f09_mg17). You can run cime/scripts/query_config --grids for a list of valid grids.

Running CESM2

Michael Brunke is running the control run, so you will be running your sensititivity tests. He will provide you with restart files to start your sensitivity run from.

Create a case: cime/scripts/create_newcase --case /glade/u/home/<username>/CESM2/cases/<case name> --compset F2000climo --res f09_f09_mg17 --mach cheyenne --project UAZN0031

Set up your case: cd cases/<case name> ./case.setup NOTE: You do NOT need to comment any line from any of the XML files now.

Build the executable: ./case.build Before doing this, you will need to copy the file(s) that you want to adapt in SourceMods/src.atm.

Run the model: ./case.submit Before doing this, you will need to change env_run.xml. You can do this by using ./xmlchange or manually in your favorite editor. The changes that you will need to make:

You will also need to decide what output variables you want to analyze. Then, you need to add this to your user_nl_cam in your case directory (cases/<case name>):

fincl2 = <the list of extra variables you want to analyze at a higher frequency>
nhtfrq = 0, -3    ! h0 will be monthly with default output, h1 will be 3-hourly
mfilt = 1, 8       ! h0 will be once monthly, h1 will contain 8 3-hourly periods per day

Finally, you have to put the restarts from my control run into your run directory. They are located in /glade/scratch/brunke/archive/ATMO595C-ctrl/rest/0002-07-01-00000. Copy the TAR file to your run directory: cp ATMO595C-ctrl.0002-07-01-00000.tar /glade/scratch/<user name>/<case name>/run. To untar: tar -xvf ATMO595C-ctrl.0002-07-01-00000.tar.

You can also make the changes to env_run.xml and user_nl_cam as well as copying the restarts and pointers into your run directory before building the executable.

Then, you can submit your initial run.

Searching the CESM2 code

Most physics in CESM2/components/cam/src/physics. Aerosol physics in CESM2/components/cam/src/chemistry.

CESM2 modules are well commented. Use grep to search the code for a process that you're looking for. Say your looking for the part of the code where the autocorrelation rate is defined. At a UNIX prompt, type

grep "autoconversion" *.F90
in CESM2/components/cam/src/physics/cam.

If you want to change any of the CLUBB parameters, those are defined in the default namelist. Therefore, you will have to define the new definition for your sensitivity run in user_nl_cam. For instance, if you want to change the parameter C14 to 0.25, you would add the following line in user_nl_cam:

clubb_c14 = 0.25

For techinical help

E-mail Michael Brunke at brunke-at-arizona-dot-edu if you have any technical questions about forming or running your CESM run.