diff --git a/_toc.yml b/_toc.yml
index e8a8077..16c439a 100644
--- a/_toc.yml
+++ b/_toc.yml
@@ -28,20 +28,20 @@ chapters:
- file: notebooks/basics/basics_overview
sections:
- - file: notebooks/basics/cesm_workspaces
+ - file: notebooks/basics/ctsm_workspaces
- file: notebooks/basics/code_overview
sections:
- file: notebooks/basics/code/git_download_ctsm
- file: notebooks/basics/code/ctsm_code_explore
- - file: notebooks/basics/cesm_workflow
+ - file: notebooks/basics/ctsm_workflow
sections:
- - file: notebooks/basics/cesm_workflow/create_newcase
- - file: notebooks/basics/cesm_workflow/case_setup
- - file: notebooks/basics/cesm_workflow/case_build
- - file: notebooks/basics/cesm_workflow/case_submit
- - file: notebooks/basics/cesm_workflow/model_output
- - file: notebooks/basics/cesm_workflow/checking_jobs_and_status
- - file: notebooks/basics/cesm_workflow/create_clone
+ - file: notebooks/basics/ctsm_workflow/create_newcase
+ - file: notebooks/basics/ctsm_workflow/case_setup
+ - file: notebooks/basics/ctsm_workflow/case_build
+ - file: notebooks/basics/ctsm_workflow/case_submit
+ - file: notebooks/basics/ctsm_workflow/model_output
+ - file: notebooks/basics/ctsm_workflow/checking_jobs_and_status
+ - file: notebooks/basics/ctsm_workflow/create_clone
- file: notebooks/basics/exercises_overview
sections:
- file: notebooks/basics/exercises/first_I1850
diff --git a/notebooks/basics/cesm_workflow.ipynb b/notebooks/basics/cesm_workflow.ipynb
deleted file mode 100644
index c3317de..0000000
--- a/notebooks/basics/cesm_workflow.ipynb
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "# CESM Workflow"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "CLM has been designed to be easy to use. Once you have downloaded the CLM code, a CLM `case` can be run with a set of 4 commands. \n",
- "\n",
- "*Note: In CLM jargon, a case refers to a specific instance of a model simulation.*"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "
\n",
- "\n",
- "1) Create a new case using `create_newcase`\n",
- "2) Set up the case by invoking `case.setup`\n",
- "3) Build the executable using `case.build`\n",
- "4) Run your case using `case.submit`\n",
- " \n",
- "
\n"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "The following sections will go into more detail about these 4 commands and also provide information about how to check your job status or create a clone of a previous case."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## More information"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "While there is not published documentation for CESM3 workflow yet, it is very similar to the CESM2 workflow. And more detailed information on the CESM3 Workflow is documented in the following links. Check these out later to learn more."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "tags": []
- },
- "source": [
- "\n",
- "\n",
- "[CESM2 release](https://escomp.github.io/CESM/release-cesm2/)\n",
- " \n",
- "[CIME](https://esmci.github.io/cime/versions/master/html/index.html)\n",
- "\n",
- "
"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "Bash",
- "language": "bash",
- "name": "bash"
- },
- "language_info": {
- "codemirror_mode": "shell",
- "file_extension": ".sh",
- "mimetype": "text/x-sh",
- "name": "bash"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 4
-}
diff --git a/notebooks/basics/cesm_workflow/create_newcase.ipynb b/notebooks/basics/cesm_workflow/create_newcase.ipynb
deleted file mode 100644
index 09beb9e..0000000
--- a/notebooks/basics/cesm_workflow/create_newcase.ipynb
+++ /dev/null
@@ -1,513 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "id": "f406f992-92bd-4b17-9bd3-b99c5c8abaf3",
- "metadata": {},
- "source": [
- "# Create New Case"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "efcaf0cc-2b3f-49de-8c4e-953464c295ef",
- "metadata": {},
- "source": [
- "The tool that generates a new case is `create_newcase`. This tool is located in the `$SRCROOT` directory under the `cime/scripts` directory. \n",
- "\n",
- "After running `create_newcase`, a `$CASEROOT` directory is created. The directory `$CASEROOT` contains the scripts needed for the following steps (`case.setup`, `case.build` and `case.submit`)\n",
- "\n",
- "TODO, update images and examples for CLM?"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "25ef9ed6-7dea-493f-8ef5-3f1de625a31c",
- "metadata": {},
- "source": [
- "\n",
- "* Figure: Detailed view of the location of create_newcase
*\n",
- "\n",
- "For the current tutorial on Derecho, the paths are:\n",
- "- `$SRCROOT` = `/glade/u/home/$USER/code/my_cesm_code`\n",
- "- `$CASEROOT` = `/glade/u/home/$USER/cases/$CASE`\n",
- "
"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "af956bea-9166-48bf-99df-02f744bd792d",
- "metadata": {},
- "source": [
- "\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "557d4028-7176-4e2a-8a90-7febf2de37ef",
- "metadata": {},
- "source": [
- "___\n",
- "## Command Syntax"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "40696acf-8c56-4c1b-8fab-f9d1b1d3b2d1",
- "metadata": {},
- "source": [
- "\n",
- "\n",
- "Go to the `cime/scripts` directory in the CLM code
\n",
- "```\n",
- "cd /glade/u/home/$USER/code/my_clm_code/cime/scripts/\n",
- "```\n",
- " \n",
- "
\n",
- " \n",
- "Example of basic `./create_newcase` syntax:
\n",
- " \n",
- "```\n",
- "./create_newcase --case /glade/u/home/$USER/cases/CASE --res RES --compset COMPSET\n",
- "```\n",
- " \n",
- "
\n",
- "\n",
- "NOTE: Do not enter the example above at the command line. You will create your first case in the Exercise at the end of this section.
"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "3923b808-2496-4f4d-b5a1-8b4cd44466ba",
- "metadata": {},
- "source": [
- "\n",
- " \n",
- "\n",
- "\n",
- " Click here for example output
\n",
- "\n",
- "
\n",
- " \n",
- "```\n",
- "Compset longname is 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
- "Compset specification file is /glade/u/home/$USER/code/my_clm_code/cime_config/config_compsets.xml\n",
- "Automatically adding SESP to compset\n",
- "Compset forcing is 1850\n",
- "ATM component is Data driven ATM CRUJRA 2024b data set: fills the Greenland snow hole per https://github.com/ESCOMP/CDEPS/issues/382; the previous 2024 version already filled Antarctica \n",
- "LND component is clm6.0:BGC (vert. resol. CN and methane) with prognostic crop:\n",
- "ICE component is Stub ice component\n",
- "OCN component is Stub ocn component\n",
- "ROF component is MOSART: MOdel for Scale Adaptive River Transport\n",
- "GLC component is Data glc model (DGLC) no evolve mode \n",
- "WAV component is Stub wave component\n",
- "ESP component is Stub external system processing (ESP) component\n",
- "Machine is derecho\n",
- "Pes setting: grid match is l%1.9x2.5 \n",
- "Pes setting: machine match is derecho \n",
- "Pes setting: grid is a%1.9x2.5_l%1.9x2.5_oi%null_r%r05_g%gris4_w%null_z%null_m%tx2_3v3 \n",
- "Pes setting: compset is 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV_SESP \n",
- "Pes setting: tasks is {'NTASKS_ATM': -1, 'NTASKS_LND': -12, 'NTASKS_ROF': -12, 'NTASKS_ICE': -12, 'NTASKS_OCN': -12, 'NTASKS_GLC': -12, 'NTASKS_WAV': -12, 'NTASKS_CPL': -12} \n",
- "Pes setting: threads is {'NTHRDS_ATM': 1, 'NTHRDS_LND': 1, 'NTHRDS_ROF': 1, 'NTHRDS_ICE': 1, 'NTHRDS_OCN': 1, 'NTHRDS_GLC': 1, 'NTHRDS_WAV': 1, 'NTHRDS_CPL': 1} \n",
- "Pes setting: rootpe is {'ROOTPE_ATM': 0, 'ROOTPE_LND': -1, 'ROOTPE_ROF': -1, 'ROOTPE_ICE': -1, 'ROOTPE_OCN': -1, 'ROOTPE_GLC': -1, 'ROOTPE_WAV': -1, 'ROOTPE_CPL': -1} \n",
- "Pes setting: pstrid is {} \n",
- "Pes setting: excl_stride is {} \n",
- "Pes other settings: {}\n",
- "Pes other settings append: {}\n",
- "Pes comments: none\n",
- "setting additional fields from config_pes: {}, append {}\n",
- " Compset is: 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV_SESP \n",
- " Grid is: a%1.9x2.5_l%1.9x2.5_oi%null_r%r05_g%gris4_w%null_z%null_m%tx2_3v3 \n",
- " Components in compset are: ['datm', 'clm', 'sice', 'socn', 'mosart', 'dglc', 'swav', 'sesp'] \n",
- "No charge_account info available, using value from PROJECT\n",
- "```\n",
- "\n",
- " \n",
- "
\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "87ae84f9-449b-4051-9dc9-9c53bcb8ac57",
- "metadata": {},
- "source": [
- "**Notes:**\n",
- "- For all user scripts you can run the script name followed by the `--h` or `--help` argument to see help documentation for that script and a list of all command line arguments for that script.\n",
- "- Double dashes `--` are required with command line arguments\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "d7064891-5a5a-41f2-9b3b-d4acb231a2ee",
- "metadata": {},
- "source": [
- "___\n",
- "## Command Arguments"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "b89a4484-e32c-413a-bfec-4051d666a8a8",
- "metadata": {},
- "source": [
- ""
- ]
- },
- {
- "cell_type": "markdown",
- "id": "122cb2ea-b34d-472b-8790-9d3950d8eea4",
- "metadata": {},
- "source": [
- "### Casename"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "0ea36beb-fe98-4289-a15e-37c21ff2f4ad",
- "metadata": {},
- "source": [
- "`--case` is the argument that specifies the **name** and **location** of the case being created. In the example above, the casename is `CASE` and the location of the case is `/glade/u/home/$USER/cases/`. Note that if a path preceding the casename is not specified, then the case is created as a subdirectory of the `$CIMEROOT/scripts` directory.\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "bb90ccd2-b4d4-4ab7-96ec-749a596f25ae",
- "metadata": {},
- "source": [
- "- The path `/glade/u/home/$USER/cases/CASE` is your workspace `CASEROOT`, as described in the [workspaces section](https://ncar.github.io/CESM-Tutorial/notebooks/basics/cesm_workspaces.html#workspace-overview)."
- ]
- },
- {
- "cell_type": "markdown",
- "id": "8f080dc7-3bfb-4e61-b112-af418f52018a",
- "metadata": {},
- "source": [
- "In this tutorial we will use fairly simple names for the cases you create, build, and run. However, most CLM experiments have much longer casenames that provide information about the experiment at a glance. Knowing the and CLM case naming conventions will help you navigate and CLM community experiments. Information about the CESM naming is available at:"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "2216d55d-6705-4d1d-9734-eddfc225420d",
- "metadata": {},
- "source": [
- "\n",
- "\n",
- "[CESM case naming conventions](https://www.cesm.ucar.edu/models/cesm2/naming-conventions)\n",
- "\n",
- "
"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "83b752d0-34c8-42d0-ba5b-efee17ab3386",
- "metadata": {},
- "source": [
- "### Resolution"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "6e3f9220-e60f-456b-93a2-09c4d52f5e22",
- "metadata": {},
- "source": [
- "`--res` is the argument that specifies the **model resolution or grid**. In the example above, the resolution is `RES`. Each model resolution can be specified with the `--res` argument by its alias or its full long name. However, the long name conventions are generally quite lengthy, so it is useful if you become familiar with using the alias version. Because the atmosphere and land share a grid, and the ocean and sea ice share a grid, only two grids are specified by the alias using the following format: `atm/lnd_ocn/ice`."
- ]
- },
- {
- "cell_type": "markdown",
- "id": "4c69afd3-925c-42c8-a54e-017336ef03c6",
- "metadata": {},
- "source": [
- ""
- ]
- },
- {
- "cell_type": "markdown",
- "id": "8143f8da-726e-4db9-99af-ce75e19c4810",
- "metadata": {},
- "source": [
- "#### CESM2 Supported Grid Definitions"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "83f7274d-95fe-4be3-bf08-a6964eebef10",
- "metadata": {},
- "source": [
- " Link for CESM Supported Grids: \n",
- "
\n",
- "[http://www.cesm.ucar.edu/models/cesm2/config/grids.html](http://www.cesm.ucar.edu/models/cesm2/config/grids.html)\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "0ffff371-8ee8-45c8-b452-b225a4464b21",
- "metadata": {},
- "source": [
- "\n",
- "\n",
- "Cime Tool for listing configurations:
\n",
- "\n",
- "```\n",
- "CIMEROOT/scripts/query_config --grids --long\n",
- "```\n",
- "
"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "885ef623-f80d-4173-a8f8-cf4232217549",
- "metadata": {},
- "source": [
- "\n",
- " \n",
- "\n",
- "\n",
- " Click here for example output
\n",
- "\n",
- "
\n",
- " \n",
- "```\n",
- " =========================================\n",
- " GRID naming convention\n",
- " =========================================\n",
- " The notation for the grid longname is\n",
- " a%name_l%name_oi%name_r%name_m%mask_g%name_w%name\n",
- " where\n",
- " a% => atm, l% => lnd, oi% => ocn/ice, r% => river, m% => mask, g% => glc, w% => wav\n",
- "\n",
- " Supported out of the box grid configurations are given via alias specification in\n",
- " the file \"config_grids.xml\". Each grid alias can also be associated with the\n",
- " following optional attributes\n",
- "\n",
- " compset (Regular expression for compset matches that are required for this grid)\n",
- " not_compset (Regular expression for compset matches that are not permitted this grid)\n",
- "\n",
- " Using the alias and the optional \"compset\" and \"not_compset\" attributes a grid longname is created\n",
- " Note that the mask is for information only - and is not an attribute of the grid\n",
- " By default, if the mask is not specified below, it will be set to the ocnice grid\n",
- " And if there is no ocnice grid (such as for single column, the mask is null since it does not mean anything)\n",
- "\n",
- " -------------------------------------------------------------\n",
- " default component grids:\n",
- "\n",
- " component compset value \n",
- " -------------------------------------------------------------\n",
- " atm SATM null \n",
- " lnd SLND null \n",
- " ocnice SOCN null \n",
- " rof SROF null \n",
- " rof DWAV rx1 \n",
- " rof RTM r05 \n",
- " rof MOSART r05 \n",
- " rof MIZUROUTE r05mz \n",
- " rof DROF rx1 \n",
- " rof DROF%CPLHIST r05 \n",
- " rof XROF r05 \n",
- " glc SGLC null \n",
- " glc CISM2 gris4 \n",
- " glc DGLC gris4 \n",
- " glc XGLC gris4 \n",
- " wav SWAV null \n",
- " wav DWAV wgx3v7 \n",
- " wav WW3 wgx3v7 \n",
- " wav XWAV wgx3v7 \n",
- " iac SIAC null \n",
- " -------------------------------------------------------------\n",
- "\n",
- " alias: g16_g16 (only for compsets that are DATM.+DROF )\n",
- "\n",
- " longname: a%gx1v6_l%gx1v6_oi%gx1v6_r%null_g%null_w%null_z%null_m%gx1v6\n",
- " non-default grids are: atm:gx1v6 lnd:gx1v6 ocnice:gx1v6 \n",
- " \n",
- " gx1v6 is displaced Greenland pole v6 1-deg grid: with domain file(s): \n",
- "\n",
- " alias: g17_g17 (only for compsets that are DATM.+DROF only for compsets that are not _MOM )\n",
- "\n",
- " longname: a%gx1v7_l%gx1v7_oi%gx1v7_r%null_g%null_w%null_z%null_m%gx1v7\n",
- " non-default grids are: atm:gx1v7 lnd:gx1v7 ocnice:gx1v7 \n",
- " \n",
- " gx1v7 is displaced Greenland pole 1-deg grid with Caspian as a land feature: with domain file(s): \n",
- "\n",
- "...\n",
- "```\n",
- "\n",
- " \n",
- "
\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "82faa8c6-88d6-41ba-a063-52939e664391",
- "metadata": {},
- "source": [
- "### Compset"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "0ccf426a-57d0-4447-9eb7-c53c18544148",
- "metadata": {},
- "source": [
- "`--compset` is the argument that specifies the **component set**. In the example above, the compset is `COMPSET`. The compset specifies the component models and if they are active or not, forcing scenarios, and physics options for the models. As above, the `--compset` can be specified by its alias or its full long name. However, the long name conventions are generally quite lengthy, so it is useful if you become familiar with using the alias version."
- ]
- },
- {
- "cell_type": "markdown",
- "id": "160dd746-6ec4-4ea2-85f1-92bbbdd5647d",
- "metadata": {},
- "source": [
- ""
- ]
- },
- {
- "cell_type": "markdown",
- "id": "ee1cde34-5742-48c3-964b-6362d32288d0",
- "metadata": {},
- "source": [
- "**Note**:\n",
- "- Compsets are defined by different model components (active or data) and cime.\n",
- "- Some compsets are scientifically supported and/or tested, while some are only defined. The CESM project will not provide comprehensive support for compsets that are only defined.\n",
- "- Compsets determine which grid is required."
- ]
- },
- {
- "cell_type": "markdown",
- "id": "0d522ed3-098c-4194-be32-f219be984248",
- "metadata": {},
- "source": [
- "#### CESM2 Supported Compsets"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "e8b7943e-0be5-4feb-9b3f-cb8d4fe4aac0",
- "metadata": {},
- "source": [
- " Link for CESM2 Supported Compsets: \n",
- "
\n",
- "[http://www.cesm.ucar.edu/models/cesm2/config/compsets.html](http://www.cesm.ucar.edu/models/cesm2/config/compsets.html)"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "e91dff67-7992-48d2-afba-c0acb5528fb8",
- "metadata": {},
- "source": [
- "\n",
- "Cime Tool for listing configurations:
\n",
- "\n",
- "```\n",
- "cd /glade/u/home/$USER/code/my_cesm_code/cime/scripts/\n",
- "./query_config --compsets\n",
- "```\n",
- "
"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "65d58f32-51ff-4dfa-a52d-edc182e6cae4",
- "metadata": {},
- "source": [
- "\n",
- " \n",
- "\n",
- "\n",
- " Click here for example output
\n",
- "\n",
- "
\n",
- " \n",
- "```\n",
- "Active component: allactive\n",
- " --------------------------------------\n",
- " Compset Alias: Compset Long Name \n",
- " --------------------------------------\n",
- " B1850C_MTt4s : 1850C_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " B1850CM : 1850C_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " B1850C_MTso : 1850C_CAM70%MT_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTC_MTso : HISTC_CAM70%MT_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTC_MTt4s : HISTC_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTCM : HISTC_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTC_MTso : HISTC_CAM70%MT_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " B1850C_LTso : 1850C_CAM70%LT_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTC_LTso : HISTC_CAM70%LT_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTC_LT_DART : HISTC_CAM70%LT_CLM60%BGC_CICE_MOM6_MOSART_DGLC%NOEVOLVE_SWAV\n",
- " B1850E_MTt4s : 1850E_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " B1850EM : 1850E_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTE_MTt4s : HISTE_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " BHISTEM : HISTE_CAM70%MT%CT4S2_CLM60%BGC-CROP_CICE_MOM6_MOSART_DGLC%NOEVOLVE_WW3\n",
- " ETEST : 2000_CAM60_CLM50%SP_CICE_DOCN%SOM_MOSART_SGLC_SWAV_TEST\n",
- " E1850TEST : 1850_CAM60_CLM50%SP_CICE_DOCN%SOM_MOSART_SGLC_SWAV_TEST\n",
- "\n",
- "Active component: drv\n",
- " --------------------------------------\n",
- " Compset Alias: Compset Long Name \n",
- " --------------------------------------\n",
- " AA : 2000_DATM%NYF_DLND%LCPL_DICE%SSMI_DOCN%DOM_DROF%NYF_SGLC_DWAV\n",
- " A : 2000_DATM%NYF_SLND_DICE%SSMI_DOCN%DOM_DROF%NYF_SGLC_SWAV\n",
- " ADSOM : 2000_DATM%NYF_SLND_DICE%SSMI_DOCN%SOM_DROF%NYF_SGLC_SWAV_TEST\n",
- " ADSOMAQP : 2000_DATM%NYF_SLND_SICE_DOCN%SOMAQP_SROF_SGLC_SWAV\n",
- " ADAQP3 : 2000_DATM%NYF_SLND_SICE_DOCN%AQP3_SROF_SGLC_SWAV\n",
- " ADAQPFILE : 2000_DATM%NYF_SLND_SICE_DOCN%AQPFILE_SROF_SGLC_SWAV\n",
- " A1850DLND : 1850_SATM_DLND%SCPL_SICE_SOCN_SROF_SGLC_SWAV\n",
- " ADWAV : 2000_SATM_SLND_SICE_SOCN_SROF_SGLC_DWAV%CLIMO\n",
- " ADESP : 2000_DATM%NYF_SLND_SICE_DOCN%SOMAQP_SROF_SGLC_SWAV_DESP%NOOP\n",
- " ADESP_TEST : 2000_DATM%NYF_SLND_SICE_DOCN%SOMAQP_SROF_SGLC_SWAV_DESP%TEST\n",
- " AIAF : 2000_DATM%IAF_SLND_DICE%IAF_DOCN%IAF_DROF%IAF_SGLC_SWAV\n",
- " S : 2000_SATM_SLND_SICE_SOCN_SROF_SGLC_SWAV_SESP\n",
- " X : 2000_XATM_XLND_XICE_XOCN_XROF_XGLC_XWAV\n",
- "\n",
- "...\n",
- "```\n",
- "\n",
- " \n",
- "
\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "61581a4e-86f4-44e4-92d9-d29aefa9ed8b",
- "metadata": {},
- "source": [
- "### Machines"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "5e4e5466-8955-4f61-84f7-6228b1aac32b",
- "metadata": {},
- "source": [
- "The argument `--mach` is not required on CESM supported machines, but is required on other machines."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "94b79d8f-2da5-4a3f-b9b9-0cbb45896c0e",
- "metadata": {},
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "Python 3 (ipykernel)",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.10.13"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 5
-}
diff --git a/notebooks/basics/code/git_download_ctsm.ipynb b/notebooks/basics/code/git_download_ctsm.ipynb
index 847aa87..4f900dd 100644
--- a/notebooks/basics/code/git_download_ctsm.ipynb
+++ b/notebooks/basics/code/git_download_ctsm.ipynb
@@ -22,9 +22,9 @@
"metadata": {},
"source": [
"\n",
- "We will use the CLM6 tutorial tag: `ctsm6.0_Tutorial2026`
\n",
+ "We will use the CLM6 tutorial tag: `clm5.4.063`
\n",
"\n",
- "Note: At the time of the tutorial, the final CLM6 release has not yet been completed. Therefore, we will use a preliminary tutorial tag (`ctsm6.0_Tutorial2026`) that contains the CLM6 code base and configuration needed for the exercises. The exact tag used in the tutorial may differ from the final CLM6 release.\n",
+ "Note: At the time of the tutorial, the final CLM6 release has not yet been completed. Therefore, we will use a preliminary tag (`ctsm5.4.063`) that contains the CLM6 code base and configuration needed for the exercises. The exact tag used in the tutorial may differ from the final CLM6 release.\n",
"
"
]
},
@@ -52,7 +52,7 @@
"\n",
"First, create a location in the **glade** file system where you will store your CLM source code.\n",
"\n",
- "Throughout this tutorial, `$USER` is a placeholder for your NCAR HPC username."
+ "Throughout this tutorial, `$USER` is the environment variable already set for you that is your NCAR HPC username."
]
},
{
@@ -101,9 +101,9 @@
"```\n",
" git clone https://github.com/ESCOMP/CTSM.git my_clm_code\n",
" cd my_clm_code\n",
- " git checkout clm6.0_Tutorial2026\n",
+ " git checkout ctsm5.4.063\n",
"```\n",
- "The directory name `my_clm_code` is only an example. You may choose any directory name you prefer. Outside of this tutorial, many users choose names that identify the CLM version they are working with (for example, `ctsm6.0`, or `clm6.0_Tutorial2026`).\n",
+ "The directory name `my_clm_code` is only an example. You may choose any directory name you prefer. Outside of this tutorial, many users choose names that identify the CLM version they are working with (for example, `ctsm6.0`, `ctsm5.5` or `clm6.0_Tutorial2026`).\n",
"\n",
"- **Verify the Tutorial Tag**\n",
"\n",
@@ -116,7 +116,7 @@
"which should return:\n",
"\n",
"```\n",
- " clm6.0_Tutorial2026\n",
+ " clm5.4.063\n",
"```\n",
""
]
@@ -143,9 +143,9 @@
"- Consistency with community experiments or previous studies.\n",
"- Compatibility with analysis tools and workflows.\n",
"\n",
- "For example, if you plan to compare your simulations with a community project, you should generally use the same CESM version as that project.\n",
+ "For example, if you plan to compare your simulations with a community project, you should generally use the same CESM or CLM version as that project.\n",
"\n",
- "More information can be found on the [CESM Models website](https://www.cesm.ucar.edu/models).\n"
+ "More information can be found on the [CLM github Page](https://github.com/ESCOMP/CTSM.git).\n"
]
},
{
@@ -155,48 +155,11 @@
"source": [
"\n",
" \n",
- "To see available CLM tags that were used in CESM releases, use:\n",
- "\n",
- "\n",
- "```bash\n",
- "git tag --list 'release-cesm*'\n",
- "```\n",
- "\n",
- "\n",
+ "To see available CLM tags that have a release tag (and thus a DOI to go with them) go to the release page on CLM github. It's under the Code tab on the far left of the page, and then \"Tags\" two to the right of the \"master\" pulldown, and then Releases. (https://github.com/ESCOMP/CTSM/releases)\n",
"\n",
"
"
]
},
- {
- "cell_type": "markdown",
- "id": "195d4a4b-514b-446e-9d2b-4c7aeae60aa2",
- "metadata": {},
- "source": [
- "\n",
- " \n",
- "\n",
- "\n",
- " Click here for example output
\n",
- "
\n",
- " \n",
- "```\n",
- "release-cesm2.0.01\n",
- "release-cesm2.0.02\n",
- "release-cesm2.2.01\n",
- "release-cesm2.2.01.asd01\n",
- "release-cesm2.2.01.asd02\n",
- "release-cesm2.2.02\n",
- "release-cesm2.2.03\n",
- "release-cesm2.2.04\n",
- "```\n",
- "\n",
- "**Note** *CESM3 has not yet been officially released at the time of this tutorial. As a result, you will only see CESM2 release tags when listing official releases. The tutorial tag `clm6.0_Tutorial2026` is a pre-release CESM3 tag created specifically for this tutorial and therefore does not appear in the list of official CESM releases.*\n",
- "\n",
- "\n",
- " \n",
- "
\n"
- ]
- },
{
"cell_type": "markdown",
"id": "88bd0742-e990-4fcf-9b40-5c8b21a9ec43",
@@ -207,7 +170,7 @@
"\n",
"The CTSM repository itself does not contain all component model source code. **Individual model components are maintained in separate repositories** and must be downloaded after cloning CLM. \n",
"\n",
- "CESM3 uses `git-fleximod` to manage external repositories. \n",
+ "CESM3/CLM uses `git-fleximod` to manage external repositories. \n",
"\n",
"From your CLM source directory, run: \n",
"\n",
diff --git a/notebooks/basics/ctsm_workflow.ipynb b/notebooks/basics/ctsm_workflow.ipynb
new file mode 100644
index 0000000..8be417e
--- /dev/null
+++ b/notebooks/basics/ctsm_workflow.ipynb
@@ -0,0 +1,92 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# CTSM Workflow"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "CLM has been designed to be easy to use. Once you have downloaded the CLM code, a CLM `case` can be run with a set of 4 commands. \n",
+ "\n",
+ "*Note: In CLM jargon, a case refers to a specific instance of a model simulation.*"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "\n",
+ "\n",
+ "1) Create a new case using `create_newcase`\n",
+ "2) Set up the case by invoking `case.setup`\n",
+ "3) Build the executable using `case.build`\n",
+ "4) Run your case using `case.submit`\n",
+ " \n",
+ "
\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The following sections will go into more detail about these 4 commands and also provide information about how to check your job status or create a clone of a previous case."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## More information"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "While there is not yet fully published documentation for CLM6/CESM3 workflow yet, it is very similar to the CLM5/CESM2 workflow. And we have documentation for the latest model version, with the caveat that it isn't fully accurate or completed yet. Detailed information on the CLM6/CESM2 Workflow is in the following links. Check these out later to learn more."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "tags": []
+ },
+ "source": [
+ "\n",
+ "\n",
+ "- [CTSM latest](https://escomp.github.io/CTSM)\n",
+ "- [CESM2 release](https://escomp.github.io/CESM/release-cesm2/)\n",
+ "- [CIME](https://esmci.github.io/cime/versions/master/html/index.html)\n",
+ "\n",
+ "
"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Bash",
+ "language": "bash",
+ "name": "bash"
+ },
+ "language_info": {
+ "codemirror_mode": "shell",
+ "file_extension": ".sh",
+ "mimetype": "text/x-sh",
+ "name": "bash"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/notebooks/basics/cesm_workflow/case_build.ipynb b/notebooks/basics/ctsm_workflow/case_build.ipynb
similarity index 99%
rename from notebooks/basics/cesm_workflow/case_build.ipynb
rename to notebooks/basics/ctsm_workflow/case_build.ipynb
index 31e76e3..b703749 100644
--- a/notebooks/basics/cesm_workflow/case_build.ipynb
+++ b/notebooks/basics/ctsm_workflow/case_build.ipynb
@@ -29,7 +29,7 @@
"id": "0d8b2ab4-7976-48b7-81e4-e2ae0f28cd97",
"metadata": {},
"source": [
- "\n",
+ "\n",
"* Figure: Detailed view of the location of case.build
*\n",
"\n",
"\n",
diff --git a/notebooks/basics/cesm_workflow/case_setup.ipynb b/notebooks/basics/ctsm_workflow/case_setup.ipynb
similarity index 95%
rename from notebooks/basics/cesm_workflow/case_setup.ipynb
rename to notebooks/basics/ctsm_workflow/case_setup.ipynb
index 46320cb..d095864 100644
--- a/notebooks/basics/cesm_workflow/case_setup.ipynb
+++ b/notebooks/basics/ctsm_workflow/case_setup.ipynb
@@ -95,6 +95,9 @@
"
\n",
" \n",
"```\n",
+ "\n",
+ "WARNING: Macros of the form COMPILER_MACHINE.cmake are deprecated and should be replaced with the form MACHINE_COMPILER.cmake\n",
+ "\n",
"job is case.run USER_REQUESTED_WALLTIME None USER_REQUESTED_QUEUE None WALLTIME_FORMAT %H:%M:%S\n",
"Creating batch scripts\n",
"Writing case.run script from input template /glade/u/home/$USER/code/my_cesm_code/ccs_config/machines/template.case.run\n",
@@ -102,9 +105,9 @@
"Writing case.st_archive script from input template /glade/u/home/$USER/code/my_cesm_code/ccs_config/machines/template.st_archive\n",
"Creating file case.st_archive\n",
"Writing case.cupid script from input template /glade/u/home/$USER/code/my_cesm_code/ccs_config/machines/template.cupid\n",
+ "Could not resolve $CUPID_MEM_PER_TASK using a value of 10\n",
"Creating file case.cupid\n",
"Creating user_nl_xxx files for components and cpl\n",
- "Running cam.case_setup.py\n",
"If an old case build already exists, might want to run 'case.build --clean' before building\n",
"You can now run './preview_run' to get more info on how your case will be run\n",
"```\n",
diff --git a/notebooks/basics/cesm_workflow/case_submit.ipynb b/notebooks/basics/ctsm_workflow/case_submit.ipynb
similarity index 63%
rename from notebooks/basics/cesm_workflow/case_submit.ipynb
rename to notebooks/basics/ctsm_workflow/case_submit.ipynb
index 16d240f..8648653 100644
--- a/notebooks/basics/cesm_workflow/case_submit.ipynb
+++ b/notebooks/basics/ctsm_workflow/case_submit.ipynb
@@ -42,12 +42,6 @@
"- `$RUNDIR` =`/glade/derecho/scratch/$USER/$CASE/run` "
]
},
- {
- "cell_type": "markdown",
- "id": "579cb4c8-03f1-4c9f-913f-de2ffeccfbc5",
- "metadata": {},
- "source": []
- },
{
"cell_type": "markdown",
"id": "d8e6525b-31d9-450d-a3b9-e3b435fc231a",
@@ -95,59 +89,51 @@
"
\n",
" \n",
"```\n",
- " 2026-06-30 21:32:46 atm \n",
- "Create namelist for component cam\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/cam//cime_config/buildnml\n",
- "CAM namelist copy: file1 /glade/u/home/$USER/cases/b1850.basics/Buildconf/camconf/atm_in file2 /glade/derecho/scratch/$USER/b1850.basics/run/atm_in \n",
- " 2026-06-30 21:32:49 lnd \n",
+ " 2026-10-15 01:08:47 atm \n",
+ "Create namelist for component datm\n",
+ " Calling /glade/u/home/$USER/code/my_clm_code//components/cdeps/datm/cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 lnd \n",
"Create namelist for component clm\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/clm//cime_config/buildnml\n",
- " 2026-06-30 21:32:50 ice \n",
- "Create namelist for component cice\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/cice//cime_config/buildnml\n",
- "RUN: /glade/u/home/$USER/my_cesm_code/components/cice/bld/generate_cice_decomp.pl -ccsmroot /glade/u/home/$USER/my_cesm_code -res tx2_0v1 -nx 180 -ny 128 -nproc 256 -thrds 1 -output all \n",
- "FROM: /glade/u/home/$USER/cases/b1850.basics\n",
- " output: 180 128 5 4 5 sectrobin square-ice\n",
- "\n",
- " 2026-06-30 21:32:51 ocn \n",
- "Create namelist for component mom\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/mom//cime_config/buildnml\n",
- " 2026-06-30 21:32:52 rof \n",
+ " Calling /glade/u/home/$USER/code/my_clm_code/cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 ice \n",
+ "Create namelist for component sice\n",
+ " Calling /glade/u/home/$USER/code/my_clm_code/cime/CIME/non_py/src/components/stub_comps_nuopc/sice/cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 ocn \n",
+ "Create namelist for component socn\n",
+ " Calling /glade/u/home/$USER/code/my_clm_code/cime/CIME/non_py/src/components/stub_comps_nuopc/socn/cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 rof \n",
"Create namelist for component mosart\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/mosart//cime_config/buildnml\n",
- " 2026-06-30 21:32:52 glc \n",
+ " Calling /glade/u/home/$USER/code/my_clm_code/components/mosart//cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 glc \n",
"Create namelist for component dglc\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/cdeps/dglc/cime_config/buildnml\n",
- " 2026-06-30 21:32:52 wav \n",
- "Create namelist for component ww3\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/ww3//cime_config/buildnml\n",
- " Running /glade/u/home/$USER/my_cesm_code/components/ww3//cime_config/buildnml \n",
- " 2026-06-30 21:33:04 esp \n",
+ " Calling /glade/u/home/$USER/code/my_clm_code/components/cdeps/dglc/cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 wav \n",
+ "Create namelist for component swav\n",
+ " Calling /glade/u/home/$USER/code/my_clm_code/cime/CIME/non_py/src/components/stub_comps_nuopc/swav/cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 esp \n",
"Create namelist for component sesp\n",
- " Calling /glade/u/home/$USER/my_cesm_code/cime/CIME/non_py/src/components/stub_comps_nuopc/sesp/cime_config/buildnml\n",
- " 2026-06-30 21:33:04 cpl \n",
+ " Calling /glade/u/home/$USER/code/my_clm_code/cime/CIME/non_py/src/components/stub_comps_nuopc/sesp/cime_config/buildnml\n",
+ " 2026-10-15 01:08:47 cpl \n",
"Create namelist for component drv\n",
- " Calling /glade/u/home/$USER/my_cesm_code/components/cmeps/cime_config/buildnml\n",
- "Writing nuopc_runconfig for components ['CPL', 'ATM', 'LND', 'ICE', 'OCN', 'ROF', 'GLC', 'WAV']\n",
+ " Calling /glade/u/home/$USER/code/my_clm_code//answer_changes/components/cmeps/cime_config/buildnml\n",
+ "Writing nuopc_runconfig for components ['CPL', 'ATM', 'LND', 'ROF', 'GLC']\n",
"Checking that inputdata is available as part of case submission\n",
"Loading input file list: 'Buildconf/ctsm.input_data_list'\n",
"Loading input file list: 'Buildconf/cpl.input_data_list'\n",
- "Loading input file list: 'Buildconf/mom.input_data_list'\n",
- "Loading input file list: 'Buildconf/ww3.input_data_list'\n",
- "Loading input file list: 'Buildconf/cice.input_data_list'\n",
+ "Loading input file list: 'Buildconf/datm.input_data_list'\n",
"Loading input file list: 'Buildconf/mosart.input_data_list'\n",
- "Loading input file list: 'Buildconf/cam.input_data_list'\n",
"Loading input file list: 'Buildconf/dglc.input_data_list'\n",
"Check case OK\n",
"submit_jobs case.run\n",
+ "Could not resolve $CUPID_MEM_PER_TASK using a value of 10\n",
"Submit job case.run\n",
- "Submitting job script qsub -q main -l walltime=12:00:00 -A P93300606 -l job_priority=regular -v ARGS_FOR_SCRIPT='--resubmit' /glade/u/home/$USER/cases/b1850.basics/.case.run\n",
- "Submitted job id is 6606898.desched1\n",
+ "Submitting job script qsub -q main -l walltime=12:00:00 -A P93300606 -l job_priority=regular -M $USER@ucar.edu -m a -v ARGS_FOR_SCRIPT='--resubmit' /glade/u/home/$USER/cases/i1850_sp.basics/.case.run\n",
+ "Submitted job id is 7827012.desched1\n",
"Submit job case.st_archive\n",
- "Submitting job script qsub -q develop -l walltime=00:20:00 -A P93300606 -l job_priority=regular -W depend=afterok:6606898.desched1 -v ARGS_FOR_SCRIPT='--resubmit' /glade/u/home/$USER/cases/b1850.basics/case.st_archive\n",
- "Submitted job id is 6606899.desched1\n",
- "Submitted job case.run with id 6606898.desched1\n",
- "Submitted job case.st_archive with id 6606899.desched1\n",
+ "Submitting job script qsub -q develop -l walltime=00:20:00 -A P93300606 -l job_priority=regular -W depend=afterok:7827012.desched1 -M $USER@ucar.edu -m a -v ARGS_FOR_SCRIPT='--resubmit' /glade/u/home/$USER/cases/i1850_sp.basics/case.st_archive\n",
+ "Submitted job id is 7827013.desched1\n",
+ "Submitted job case.run with id 7827012.desched1\n",
+ "Submitted job case.st_archive with id 7827013.desched1\n",
"```\n",
"\n",
"\n",
diff --git a/notebooks/basics/cesm_workflow/checking_jobs_and_status.ipynb b/notebooks/basics/ctsm_workflow/checking_jobs_and_status.ipynb
similarity index 100%
rename from notebooks/basics/cesm_workflow/checking_jobs_and_status.ipynb
rename to notebooks/basics/ctsm_workflow/checking_jobs_and_status.ipynb
diff --git a/notebooks/basics/cesm_workflow/create_clone.ipynb b/notebooks/basics/ctsm_workflow/create_clone.ipynb
similarity index 100%
rename from notebooks/basics/cesm_workflow/create_clone.ipynb
rename to notebooks/basics/ctsm_workflow/create_clone.ipynb
diff --git a/notebooks/basics/ctsm_workflow/create_newcase.ipynb b/notebooks/basics/ctsm_workflow/create_newcase.ipynb
new file mode 100644
index 0000000..1d83d1a
--- /dev/null
+++ b/notebooks/basics/ctsm_workflow/create_newcase.ipynb
@@ -0,0 +1,645 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "f406f992-92bd-4b17-9bd3-b99c5c8abaf3",
+ "metadata": {},
+ "source": [
+ "# Create New Case"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "efcaf0cc-2b3f-49de-8c4e-953464c295ef",
+ "metadata": {},
+ "source": [
+ "The tool that generates a new case is `create_newcase`. This tool is located in the `$SRCROOT` directory under the `cime/scripts` directory. \n",
+ "\n",
+ "After running `create_newcase`, a `$CASEROOT` directory is created. The directory `$CASEROOT` contains the scripts needed for the following steps (`case.setup`, `case.build` and `case.submit`)\n",
+ "\n",
+ "TODO, update images and examples for CLM?"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "25ef9ed6-7dea-493f-8ef5-3f1de625a31c",
+ "metadata": {},
+ "source": [
+ "\n",
+ "* Figure: Detailed view of the location of create_newcase
*\n",
+ "\n",
+ "For the current tutorial on Derecho, the paths are:\n",
+ "- `$SRCROOT` = `/glade/u/home/$USER/code/my_cesm_code`\n",
+ "- `$CASEROOT` = `/glade/u/home/$USER/cases/$CASE`\n",
+ "
"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "af956bea-9166-48bf-99df-02f744bd792d",
+ "metadata": {},
+ "source": [
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "557d4028-7176-4e2a-8a90-7febf2de37ef",
+ "metadata": {},
+ "source": [
+ "___\n",
+ "## Command Syntax"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "40696acf-8c56-4c1b-8fab-f9d1b1d3b2d1",
+ "metadata": {},
+ "source": [
+ "\n",
+ "\n",
+ "Go to the `cime/scripts` directory in the CLM code
\n",
+ "```\n",
+ "cd /glade/u/home/$USER/code/my_clm_code/cime/scripts/\n",
+ "```\n",
+ " \n",
+ "
\n",
+ " \n",
+ "Example of basic `./create_newcase` syntax:
\n",
+ " \n",
+ "```\n",
+ "./create_newcase --case /glade/u/home/$USER/cases/CASE --res RES --compset COMPSET\n",
+ "```\n",
+ " \n",
+ "
\n",
+ "\n",
+ "NOTE: Do not enter the example above at the command line. You will create your first case in the Exercise at the end of this section.
"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "3923b808-2496-4f4d-b5a1-8b4cd44466ba",
+ "metadata": {},
+ "source": [
+ "\n",
+ " \n",
+ "\n",
+ "\n",
+ " Click here for example output
\n",
+ "\n",
+ "
\n",
+ " \n",
+ "```\n",
+ "Compset longname is 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ "Compset specification file is /glade/u/home/$USER/code/my_clm_code/cime_config/config_compsets.xml\n",
+ "Automatically adding SESP to compset\n",
+ "Compset forcing is 1850\n",
+ "ATM component is Data driven ATM CRUJRA 2024b data set: fills the Greenland snow hole per https://github.com/ESCOMP/CDEPS/issues/382; the previous 2024 version already filled Antarctica \n",
+ "LND component is clm6.0:BGC (vert. resol. CN and methane) with prognostic crop:\n",
+ "ICE component is Stub ice component\n",
+ "OCN component is Stub ocn component\n",
+ "ROF component is MOSART: MOdel for Scale Adaptive River Transport\n",
+ "GLC component is Data glc model (DGLC) no evolve mode \n",
+ "WAV component is Stub wave component\n",
+ "ESP component is Stub external system processing (ESP) component\n",
+ "Machine is derecho\n",
+ "Pes setting: grid match is l%1.9x2.5 \n",
+ "Pes setting: machine match is derecho \n",
+ "Pes setting: grid is a%1.9x2.5_l%1.9x2.5_oi%null_r%r05_g%gris4_w%null_z%null_m%tx2_3v3 \n",
+ "Pes setting: compset is 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV_SESP \n",
+ "Pes setting: tasks is {'NTASKS_ATM': -1, 'NTASKS_LND': -12, 'NTASKS_ROF': -12, 'NTASKS_ICE': -12, 'NTASKS_OCN': -12, 'NTASKS_GLC': -12, 'NTASKS_WAV': -12, 'NTASKS_CPL': -12} \n",
+ "Pes setting: threads is {'NTHRDS_ATM': 1, 'NTHRDS_LND': 1, 'NTHRDS_ROF': 1, 'NTHRDS_ICE': 1, 'NTHRDS_OCN': 1, 'NTHRDS_GLC': 1, 'NTHRDS_WAV': 1, 'NTHRDS_CPL': 1} \n",
+ "Pes setting: rootpe is {'ROOTPE_ATM': 0, 'ROOTPE_LND': -1, 'ROOTPE_ROF': -1, 'ROOTPE_ICE': -1, 'ROOTPE_OCN': -1, 'ROOTPE_GLC': -1, 'ROOTPE_WAV': -1, 'ROOTPE_CPL': -1} \n",
+ "Pes setting: pstrid is {} \n",
+ "Pes setting: excl_stride is {} \n",
+ "Pes other settings: {}\n",
+ "Pes other settings append: {}\n",
+ "Pes comments: none\n",
+ "setting additional fields from config_pes: {}, append {}\n",
+ " Compset is: 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV_SESP \n",
+ " Grid is: a%1.9x2.5_l%1.9x2.5_oi%null_r%r05_g%gris4_w%null_z%null_m%tx2_3v3 \n",
+ " Components in compset are: ['datm', 'clm', 'sice', 'socn', 'mosart', 'dglc', 'swav', 'sesp'] \n",
+ "No charge_account info available, using value from PROJECT\n",
+ "```\n",
+ "\n",
+ " \n",
+ "
\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "87ae84f9-449b-4051-9dc9-9c53bcb8ac57",
+ "metadata": {},
+ "source": [
+ "**Notes:**\n",
+ "- For all user scripts you can run the script name followed by the `--h` or `--help` argument to see help documentation for that script and a list of all command line arguments for that script.\n",
+ "- Double dashes `--` are required with command line arguments\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "d7064891-5a5a-41f2-9b3b-d4acb231a2ee",
+ "metadata": {},
+ "source": [
+ "___\n",
+ "## Command Arguments"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "b89a4484-e32c-413a-bfec-4051d666a8a8",
+ "metadata": {},
+ "source": [
+ ""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "122cb2ea-b34d-472b-8790-9d3950d8eea4",
+ "metadata": {},
+ "source": [
+ "### Casename"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0ea36beb-fe98-4289-a15e-37c21ff2f4ad",
+ "metadata": {},
+ "source": [
+ "`--case` is the argument that specifies the **name** and **location** of the case being created. In the example above, the casename is `CASE` and the location of the case is `/glade/u/home/$USER/cases/`. Note that if a path preceding the casename is not specified, then the case is created as a subdirectory of the `$CIMEROOT/scripts` directory.\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "bb90ccd2-b4d4-4ab7-96ec-749a596f25ae",
+ "metadata": {},
+ "source": [
+ "- The path `/glade/u/home/$USER/cases/CASE` is your workspace `CASEROOT`, as described in the [workspaces section](https://ncar.github.io/CESM-Tutorial/notebooks/basics/cesm_workspaces.html#workspace-overview)."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "8f080dc7-3bfb-4e61-b112-af418f52018a",
+ "metadata": {},
+ "source": [
+ "In this tutorial we will use fairly simple names for the cases you create, build, and run. However, most CLM experiments have much longer casenames that provide information about the experiment at a glance. Knowing CESM/CLM case naming conventions will help you navigate CESM and CLM community experiments. Information about the CESM naming is available below. Also below are the CESM and LMWG experiments github pages that give information on the latest CESM and CLM production experiments:"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "2216d55d-6705-4d1d-9734-eddfc225420d",
+ "metadata": {},
+ "source": [
+ "\n",
+ "\n",
+ "- [CESM case naming conventions](https://www.cesm.ucar.edu/models/cesm2/naming-conventions)\n",
+ "- [CESM development experiments](https://github.comr/NCAR/CESM_dev)\n",
+ "- [LMWG CLM development experiments](https://github.comr/NCAR/LMWG_dev)\n",
+ "\n",
+ "
"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "83b752d0-34c8-42d0-ba5b-efee17ab3386",
+ "metadata": {},
+ "source": [
+ "### Resolution"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "6e3f9220-e60f-456b-93a2-09c4d52f5e22",
+ "metadata": {},
+ "source": [
+ "`--res` is the argument that specifies the **model resolution or grid**. In the example above, the resolution is `RES`. Each model resolution can be specified with the `--res` argument by its alias or its full long name. However, the long name conventions are generally quite lengthy, so it is useful if you become familiar with using the alias version. Because the atmosphere and land share a grid, and the ocean and sea ice share a grid, only two grids are specified by the alias using the following format: `atm/lnd_ocn/ice`."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "4c69afd3-925c-42c8-a54e-017336ef03c6",
+ "metadata": {},
+ "source": [
+ ""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "8143f8da-726e-4db9-99af-ce75e19c4810",
+ "metadata": {},
+ "source": [
+ "#### CESM2 Supported Grid Definitions"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "83f7274d-95fe-4be3-bf08-a6964eebef10",
+ "metadata": {},
+ "source": [
+ " Link for CESM Supported Grids: \n",
+ "
\n",
+ "[http://www.cesm.ucar.edu/models/cesm2/config/grids.html](http://www.cesm.ucar.edu/models/cesm2/config/grids.html)\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0ffff371-8ee8-45c8-b452-b225a4464b21",
+ "metadata": {},
+ "source": [
+ "\n",
+ "\n",
+ "Cime Tool for listing configurations:
\n",
+ "\n",
+ "```\n",
+ "CIMEROOT/scripts/query_config --grids --long\n",
+ "```\n",
+ "
"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "885ef623-f80d-4173-a8f8-cf4232217549",
+ "metadata": {},
+ "source": [
+ "\n",
+ " \n",
+ "\n",
+ "\n",
+ " Click here for example output
\n",
+ "\n",
+ "
\n",
+ " \n",
+ "Below we show the header and some of the grids that are are useful for CLM simulations.\n",
+ "\n",
+ "```\n",
+ "Schema validity test fails for /glade/u/home/$USER/my_cesm_code/ccs_config/config_grids_nuopc.xml\n",
+ "\n",
+ " =========================================\n",
+ " GRID naming convention\n",
+ " =========================================\n",
+ " The notation for the grid longname is\n",
+ " a%name_l%name_oi%name_r%name_m%mask_g%name_w%name\n",
+ " where\n",
+ " a% => atm, l% => lnd, oi% => ocn/ice, r% => river, m% => mask, g% => glc, w% => wav\n",
+ "\n",
+ " Supported out of the box grid configurations are given via alias specification in\n",
+ " the file \"config_grids.xml\". Each grid alias can also be associated with the\n",
+ " following optional attributes\n",
+ "\n",
+ " compset (Regular expression for compset matches that are required for this grid)\n",
+ " not_compset (Regular expression for compset matches that are not permitted this grid)\n",
+ "\n",
+ " Using the alias and the optional \"compset\" and \"not_compset\" attributes a grid longname is created\n",
+ " Note that the mask is for information only - and is not an attribute of the grid\n",
+ " By default, if the mask is not specified below, it will be set to the ocnice grid\n",
+ " And if there is no ocnice grid (such as for single column, the mask is null since it does not mean anything)\n",
+ " \n",
+ " -------------------------------------------------------------\n",
+ " default component grids:\n",
+ "\n",
+ " component compset value \n",
+ " -------------------------------------------------------------\n",
+ " atm SATM null \n",
+ " lnd SLND null \n",
+ " ocnice SOCN null \n",
+ " rof SROF null \n",
+ " rof DWAV rx1 \n",
+ " rof RTM r05 \n",
+ " rof MOSART r05 \n",
+ " rof MIZUROUTE r05mz \n",
+ " rof DROF rx1 \n",
+ " rof DROF%CPLHIST r05 \n",
+ " rof XROF r05 \n",
+ " glc SGLC null \n",
+ " glc CISM2 gris4 \n",
+ " glc DGLC gris4 \n",
+ " glc XGLC gris4 \n",
+ " wav SWAV null \n",
+ " wav DWAV wgx3v7 \n",
+ " wav WW3 wgx3v7 \n",
+ " wav XWAV wgx3v7 \n",
+ " iac SIAC null \n",
+ " -------------------------------------------------------------\n",
+ ".\n",
+ ".\n",
+ ".\n",
+ " alias: CLM_USRDAT (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%CLM_USRDAT_l%CLM_USRDAT_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:CLM_USRDAT lnd:CLM_USRDAT rof:null \n",
+ "\n",
+ " alias: 1x1_numaIA (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_numaIA_l%1x1_numaIA_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_numaIA lnd:1x1_numaIA rof:null \n",
+ "\n",
+ " alias: 1x1_brazil (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_brazil_l%1x1_brazil_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_brazil lnd:1x1_brazil rof:null \n",
+ "\n",
+ " alias: 1x1_smallvilleIA (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_smallvilleIA_l%1x1_smallvilleIA_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_smallvilleIA lnd:1x1_smallvilleIA rof:null \n",
+ "\n",
+ " alias: 1x1_cidadinhoBR (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_cidadinhoBR_l%1x1_cidadinhoBR_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_cidadinhoBR lnd:1x1_cidadinhoBR rof:null \n",
+ "\n",
+ " alias: 1x1_camdenNJ (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_camdenNJ_l%1x1_camdenNJ_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_camdenNJ lnd:1x1_camdenNJ rof:null \n",
+ "\n",
+ " alias: 1x1_mexicocityMEX (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_mexicocityMEX_l%1x1_mexicocityMEX_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_mexicocityMEX lnd:1x1_mexicocityMEX rof:null \n",
+ "\n",
+ " alias: 1x1_vancouverCAN (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_vancouverCAN_l%1x1_vancouverCAN_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_vancouverCAN lnd:1x1_vancouverCAN rof:null \n",
+ "\n",
+ " alias: 1x1_urbanc_alpha (only for compsets that are DATM.+CLM|DATM.+SLND )\n",
+ "\n",
+ " longname: a%1x1_urbanc_alpha_l%1x1_urbanc_alpha_oi%null_r%null_g%null_w%null_z%null_m%null\n",
+ " non-default grids are: atm:1x1_urbanc_alpha lnd:1x1_urbanc_alpha rof:null \n",
+ ".\n",
+ ".\n",
+ ".\n",
+ " alias: nldas2_rnldas2_mnldas2 (only for compsets that are DATM.+CLM )\n",
+ "\n",
+ " longname: a%0.125nldas2_l%0.125nldas2_oi%0.125nldas2_r%0.125nldas2_g%null_w%null_z%null_m%0.125nldas2\n",
+ " non-default grids are: atm:0.125nldas2 lnd:0.125nldas2 ocnice:0.125nldas2 rof:0.125nldas2 \n",
+ " mask is: 0.125nldas2\n",
+ ".\n",
+ ".\n",
+ ".\n",
+ " alias: f09_f09_mt233 (only for compsets that are not _MOM )\n",
+ "\n",
+ " longname: a%0.9x1.25_l%0.9x1.25_oi%0.9x1.25_r%null_g%null_w%null_z%null_m%tx2_3v3\n",
+ " non-default grids are: atm:0.9x1.25 lnd:0.9x1.25 ocnice:0.9x1.25 \n",
+ " mask is: tx2_3v3\n",
+ ".\n",
+ ".\n",
+ ".\n",
+ " alias: f19_f19_mt233 (only for compsets that are not _MOM )\n",
+ "\n",
+ " longname: a%1.9x2.5_l%1.9x2.5_oi%1.9x2.5_r%null_g%null_w%null_z%null_m%tx2_3v3\n",
+ " non-default grids are: atm:1.9x2.5 lnd:1.9x2.5 ocnice:1.9x2.5 \n",
+ " mask is: tx2_3v3\n",
+ "\n",
+ ".\n",
+ ".\n",
+ ".\n",
+ " alias: ne30pg3_ne30pg3_mt233 (only for compsets that are not _MOM )\n",
+ "\n",
+ " longname: a%ne30np4.pg3_l%ne30np4.pg3_oi%ne30np4.pg3_r%null_g%null_w%null_z%null_m%tx2_3v3\n",
+ " non-default grids are: atm:ne30np4.pg3 lnd:ne30np4.pg3 ocnice:ne30np4.pg3 \n",
+ " mask is: tx2_3v3\n",
+ "\n",
+ "...\n",
+ "```\n",
+ "\n",
+ " \n",
+ "
\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "82faa8c6-88d6-41ba-a063-52939e664391",
+ "metadata": {},
+ "source": [
+ "### Compset"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0ccf426a-57d0-4447-9eb7-c53c18544148",
+ "metadata": {},
+ "source": [
+ "`--compset` is the argument that specifies the **component set**. In the example above, the compset is `COMPSET`. The compset specifies the component models and if they are active or not, forcing scenarios, and physics options for the models. As above, the `--compset` can be specified by its alias or its full long name. However, the long name conventions are generally quite lengthy, so it is useful if you become familiar with using the alias version."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "160dd746-6ec4-4ea2-85f1-92bbbdd5647d",
+ "metadata": {},
+ "source": [
+ ""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ee1cde34-5742-48c3-964b-6362d32288d0",
+ "metadata": {},
+ "source": [
+ "**Note**:\n",
+ "- Compsets are defined by different model components (active or data) and cime.\n",
+ "- Some compsets are scientifically supported and/or tested, while some are only defined. The CESM project will not provide comprehensive support for compsets that are only defined.\n",
+ "- Compsets determine which grid is required."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "e91dff67-7992-48d2-afba-c0acb5528fb8",
+ "metadata": {},
+ "source": [
+ "\n",
+ "Cime Tool for listing CLM configurations:
\n",
+ "\n",
+ "```\n",
+ "cd /glade/u/home/$USER/code/my_cesm_code/cime/scripts/\n",
+ "./query_config --compsets clm\n",
+ "```\n",
+ "
"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "65d58f32-51ff-4dfa-a52d-edc182e6cae4",
+ "metadata": {},
+ "source": [
+ "\n",
+ " \n",
+ "\n",
+ "\n",
+ " Click here for example output
\n",
+ "\n",
+ "
\n",
+ " \n",
+ "```\n",
+ "\n",
+ "Active component: clm\n",
+ " --------------------------------------\n",
+ " Compset Alias: Compset Long Name \n",
+ " --------------------------------------\n",
+ " I1PtClm60BgcRsGs : 2000_DATM%1PT_CLM60%BGC_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1PtClm60FatesRsGs : 2000_DATM%1PT_CLM60%FATES_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " IHist1PtClm60BgcRsGs : HIST_DATM%1PT_CLM60%BGC_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " IHist1PtClm60FatesRsGs : HIST_DATM%1PT_CLM60%FATES_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1PtClm60SpRsGs : 2000_DATM%1PT_CLM60%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1PtClm50SpRsGs : 2000_DATM%1PT_CLM50%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm50Sp : 2000_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50SpRsGs : 2000_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60SpRsGs : 2000_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60SpCrujraRsGs : 2000_DATM%CRUJRA2024b_CLM60%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60Sp : 2000_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60SpCrujra : 2000_DATM%CRUJRA2024b_CLM60%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60SpMiz : 2000_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MIZUROUTE_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60SpMizGs : 2000_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MIZUROUTE_SGLC_SWAV\n",
+ " I2000Clm60SpMizNldasGs : 2000_DATM%NLDAS2_CLM60%SP_SICE_SOCN_MIZUROUTE_SGLC_SWAV\n",
+ " I2010Clm50Sp : 2010_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50Bgc : 2000_DATM%GSWP3v1_CLM50%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50BgcCru : 2000_DATM%CRUv7_CLM50%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50BgcCropRtm : 2000_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_RTM_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50BgcCrop : 2000_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60BgcCrop : 2000_DATM%GSWP3v1_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60BgcCropCrujra : 2000_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60BgcCropCrujraRsGs : 2000_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60Bgc : 2000_DATM%GSWP3v1_CLM60%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60BgcCrujra : 2000_DATM%CRUJRA2024b_CLM60%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm50Sp : 1850_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60SpCrujra : 1850_DATM%CRUJRA2024b_CLM60%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm50BgcCrop : 1850_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm50BgcCropRsGs : 1850_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1850Clm60BgcCrop : 1850_DATM%GSWP3v1_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCropCrujra : 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60Sp : 1850_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCropCrujraRsGs : 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1850Clm60Bgc : 1850_DATM%GSWP3v1_CLM60%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCrujra : 1850_DATM%CRUJRA2024b_CLM60%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm50BgcCropCmip6 : 1850_DATM%GSWP3v1_CLM50%BGC-CROP-CMIP6DECK_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCropCmip6 : 1850_DATM%GSWP3v1_CLM60%BGC-CROP-CMIP6DECK_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCropCrujraCmip6 : 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP-CMIP6DECK_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm50BgcCropCmip6waccm : 1850_DATM%GSWP3v1_CLM50%BGC-CROP-CMIP6WACCMDECK_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCropCmip6waccm : 1850_DATM%GSWP3v1_CLM60%BGC-CROP-CMIP6WACCMDECK_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCropCrujraCmip6waccm : 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP-CMIP6WACCMDECK_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60BgcCropQianRsGs : 2000_DATM%QIA_CLM60%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm50BgcCropQianRsGs : 2000_DATM%QIA_CLM50%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm50FatesQian : 2000_DATM%QIA_CLM50%FATES_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50BgcCruRsGs : 2000_DATM%CRUv7_CLM50%BGC_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm50SpRtmFl : 2000_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_RTM%FLOOD_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60Fates : 2000_DATM%GSWP3v1_CLM60%FATES_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50Fates : 2000_DATM%GSWP3v1_CLM50%FATES_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm50FatesCruRsGs : 2000_DATM%CRUv7_CLM50%FATES_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60FatesSpCrujraRsGs : 2000_DATM%CRUJRA2024b_CLM60%FATES-SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60FatesSpCrujra : 2000_DATM%CRUJRA2024b_CLM60%FATES-SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Clm60FatesSpRsGs : 2000_DATM%GSWP3v1_CLM60%FATES-SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm50FatesRsGs : 2000_DATM%GSWP3v1_CLM50%FATES_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60FatesRsGs : 2000_DATM%GSWP3v1_CLM60%FATES_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Clm60FatesCrujraRsGs : 2000_DATM%CRUJRA2024b_CLM60%FATES_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1850Clm50Bgc : 1850_DATM%GSWP3v1_CLM50%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcNoAnthroRtm : 1850_DATM%GSWP3v1_CLM60%BGC-NOANTHRO_SICE_SOCN_RTM_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCrujraNoAnthroRtm : 1850_DATM%CRUJRA2024b_CLM60%BGC-NOANTHRO_SICE_SOCN_RTM_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60SpNoAnthroRtm : 1850_DATM%GSWP3v1_CLM60%SP-NOANTHRO_SICE_SOCN_RTM_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60SpCrujraNoAnthroRtm : 1850_DATM%CRUJRA2024b_CLM60%SP-NOANTHRO_SICE_SOCN_RTM_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm50BgcNoAnthroRtm : 1850_DATM%GSWP3v1_CLM50%BGC-NOANTHRO_SICE_SOCN_RTM_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm50SpNoAnthroRtm : 1850_DATM%GSWP3v1_CLM50%SP-NOANTHRO_SICE_SOCN_RTM_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm50BgcCrop : HIST_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm60Sp : HIST_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm60SpCrujra : HIST_DATM%CRUJRA2024b_CLM60%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm60SpRsGs : HIST_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " IHistClm60SpCrujraRsGs : HIST_DATM%CRUJRA2024b_CLM60%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " IHistClm60Bgc : HIST_DATM%GSWP3v1_CLM60%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm60BgcCrop : HIST_DATM%GSWP3v1_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm60BgcCropCrujra : HIST_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm50Sp : HIST_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm50Bgc : HIST_DATM%GSWP3v1_CLM50%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm50BgcQian : HIST_DATM%QIA_CLM50%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm50BgcQianRsGs : HIST_DATM%QIA_CLM50%BGC_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " IHistClm60BgcQianRsGs : HIST_DATM%QIA_CLM60%BGC_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " ISSP585Clm50BgcCrop : SSP585_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP585Clm60BgcCropCrujra : SSP585_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP126Clm50BgcCrop : SSP126_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP119Clm50BgcCrop : SSP119_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP245Clm50BgcCrop : SSP245_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP245Clm60BgcCropCrujra : SSP245_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP370Clm50BgcCrop : SSP370_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP370Clm60BgcCropCrujra : SSP370_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP434Clm50BgcCrop : SSP434_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP460Clm50BgcCrop : SSP460_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP534Clm50BgcCrop : SSP534_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " ISSP585Clm60BgcCrop : SSP585_DATM%GSWP3v1_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " IHistClm50BgcCropQianRsGs : HIST_DATM%QIA_CLM50%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " IHistClm60BgcCropQianRsGs : HIST_DATM%QIA_CLM60%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " IHistClm50BgcCropRsGs : HIST_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1850Clm50BgcSpinup : 1850_DATM%CPLHIST-CESM3_CLM50%BGC_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I1850Clm60BgcCropSpinup : 1850_DATM%CPLHIST-CESM3_CLM60%BGC-CROP_SICE_SOCN_MOSART_DGLC%NOEVOLVE_SWAV\n",
+ " I2000Ctsm50NwpSpGswpGs : 2000_DATM%GSWP3v1_CLM50%NWP-SP_SICE_SOCN_MOSART_SGLC_SWAV\n",
+ " I2000Ctsm50NwpSpNldasGs : 2000_DATM%NLDAS2_CLM50%NWP-SP_SICE_SOCN_MOSART_SGLC_SWAV\n",
+ " I2000Ctsm50NwpSpNldasRsGs : 2000_DATM%NLDAS2_CLM50%NWP-SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1850Clm50SpG : 1850_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm50SpGa : 1850_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_CISM2%AIS-EVOLVE_SWAV\n",
+ " I1850Clm50SpGag : 1850_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_CISM2%AIS-EVOLVE%GRIS-EVOLVE_SWAV\n",
+ " IHistClm50SpG : HIST_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm50BgcCropG : 1850_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " IHistClm50BgcCropG : HIST_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm60SpG : 1850_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm60SpGa : 1850_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MOSART_CISM2%AIS-EVOLVE_SWAV\n",
+ " I1850Clm60SpGag : 1850_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_MOSART_CISM2%AIS-EVOLVE%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm60BgcCropG : 1850_DATM%GSWP3v1_CLM60%BGC-CROP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm60BgcCropCrujraG : 1850_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " IHistClm60BgcCropCrujraG : HIST_DATM%CRUJRA2024b_CLM60%BGC-CROP_SICE_SOCN_MOSART_CISM2%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm50SpRsGag : 1850_DATM%GSWP3v1_CLM50%SP_SICE_SOCN_SROF_CISM2%AIS-EVOLVE%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm60SpRsGag : 1850_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_SROF_CISM2%AIS-EVOLVE%GRIS-EVOLVE_SWAV\n",
+ " I1850Clm60SpRsGs : 1850_DATM%GSWP3v1_CLM60%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I1850Clm60SpCrujraRsGs : 1850_DATM%CRUJRA2024b_CLM60%SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ " I2000Ctsm50NwpSpAsRsGs : 2000_SATM_CLM50%NWP-SP_SICE_SOCN_SROF_SGLC_SWAV\n",
+ "...\n",
+ "```\n",
+ "\n",
+ " \n",
+ "
\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "61581a4e-86f4-44e4-92d9-d29aefa9ed8b",
+ "metadata": {},
+ "source": [
+ "### Machines"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "5e4e5466-8955-4f61-84f7-6228b1aac32b",
+ "metadata": {},
+ "source": [
+ "The argument `--mach` is not required on CESM supported machines, but is required on other machines."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "94b79d8f-2da5-4a3f-b9b9-0cbb45896c0e",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.10.13"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/notebooks/basics/cesm_workflow/model_output.ipynb b/notebooks/basics/ctsm_workflow/model_output.ipynb
similarity index 92%
rename from notebooks/basics/cesm_workflow/model_output.ipynb
rename to notebooks/basics/ctsm_workflow/model_output.ipynb
index f6a5a13..8099669 100644
--- a/notebooks/basics/cesm_workflow/model_output.ipynb
+++ b/notebooks/basics/ctsm_workflow/model_output.ipynb
@@ -16,7 +16,7 @@
"id": "d8e6525b-31d9-450d-a3b9-e3b435fc231a",
"metadata": {},
"source": [
- "If the model run is successful, the CESM netCDF history files are automatically moved to a short term archive (`$DOUT_S_ROOT`) by `case.st_archive`."
+ "If the model run is successful, the CLM netCDF history files are automatically moved to a short term archive (`$DOUT_S_ROOT`) by `case.st_archive`."
]
},
{
diff --git a/notebooks/basics/cesm_workspaces.ipynb b/notebooks/basics/ctsm_workspaces.ipynb
similarity index 95%
rename from notebooks/basics/cesm_workspaces.ipynb
rename to notebooks/basics/ctsm_workspaces.ipynb
index 93f3adb..c219cc2 100644
--- a/notebooks/basics/cesm_workspaces.ipynb
+++ b/notebooks/basics/ctsm_workspaces.ipynb
@@ -88,7 +88,7 @@
"metadata": {},
"source": [
"- ### Create CLM Code Directory\n",
- "Create a workspace location to put your CLM code on Derecho. In all exercises in this tutorial `$USER` is a placeholder and it refers to NCAR HPC login name. (In the exercises: replace `$USER` with your login name)\n"
+ "Create a workspace location to put your CLM code on Derecho. In all exercises in this tutorial `$USER` is an environment variable preset for you that refers to your NCAR HPC login name.\n"
]
},
{
@@ -150,7 +150,7 @@
"id": "4e972986-5267-43a8-917b-1e36c7117323",
"metadata": {},
"source": [
- "You do not need to create the input data directory (`$DIN_LOC_ROOT`) on NCAR systems, as these datasets are already available in a shared location. This location is shared by all CESM users to save space on the NCAR supercomputer. \n",
+ "You do not need to create the input data directory (`$DIN_LOC_ROOT`) on NCAR systems, as these datasets are already available in a shared location. This location is shared by all CESM/CLM users to save space on the NCAR supercomputer. \n",
"\n",
"Similarly, the build (`$EXEROOT`), run (`$RUNDIR`), and archive (`$DOUT_S_ROOT`) directories are created automatically when you create a CLM case."
]
diff --git a/notebooks/basics/exercises_overview.ipynb b/notebooks/basics/exercises_overview.ipynb
index d52b1ac..b78fcc6 100644
--- a/notebooks/basics/exercises_overview.ipynb
+++ b/notebooks/basics/exercises_overview.ipynb
@@ -11,7 +11,7 @@
"## Learning Goals:\n",
"\n",
"- The student will successfully set up and run their first (short) CLM simulation.\n",
- "- This lab exercise is designed to build off the one-time setup section and uses the CESM workflow information presented. \n",
+ "- This lab exercise is designed to build off the one-time setup section and uses the CLM workflow information presented. \n",
"\n",
"## Exercise overview:\n",
"\n",
diff --git a/notebooks/resources/unix.ipynb b/notebooks/resources/unix.ipynb
index 461dfca..81aa5c5 100644
--- a/notebooks/resources/unix.ipynb
+++ b/notebooks/resources/unix.ipynb
@@ -13,7 +13,7 @@
"id": "011c91f1-75f0-496e-a329-45ed70297e86",
"metadata": {},
"source": [
- "Most CESM users and developers use the UNIX environment to set up CESM experiments and do preliminary analysis of their CESM model output data. We strongly suggest those using CESM become familiar with working in a command line environment."
+ "Most CESM/CLM users and developers use the UNIX environment to set up CLM experiments and do preliminary analysis of their CLM model output data. We strongly suggest those using CLM become familiar with working in a command line environment."
]
},
{