This document provides instructions for configuring and running the kmELM reference simulation on the several machines (Frontier, Perlmutter, and Baseline). This README outlines the steps necessary to set up a high-resolution reference case using the TESSFA branch of the kmELM code.
- Access to the CCSI/ORNL Linux environment.
- SSH client to log into the machine.
- Git installed to clone the repository.
Use SSH to log into the Baseline system:
ssh wangd@baseline.ccs.ornl.govCreate a directory for the kmELM source code:
mkdir -p /gpfs/wolf2/cades/cli185/proj-shared/wangd/kmELM
cd /gpfs/wolf2/cades/cli185/proj-shared/wangd/kmELMCheckout the kmELM code from GitHub:
git clone git@github.com:daliwang/kmELM.git
cd kmELM
git submodule update --init --recursiveNote: Type
yeswhen prompted to initialize submodules.
Switch to the TESSFA branch:
git fetch origin
git checkout -b my-dev origin/TESSFAIf you are running kmELM on a different HPC system, you will need to modify the configuration files in the kmELM/cime_config/machines directory. You may need to edit:
config_machines.xmlconfig_batch.xmlconfig_pioconfig_workflowcmake_macros
Refer to the sections for CCSI-Baseline, SummitPlus, or Frontier for guidance on how to adjust these settings for your environment.
Go to the appropriate case generation directory for your machine (e.g., ORNL_baseline or Frontier):
cd kmELM/case_gene/<machines>Examine the case generation script, uELM_caseGEN_TVA.sh, to understand its functionality.
You will need to modify the uELM_caseGEN_TVA.sh script with the appropriate paths:
E3SM_SRCROOT="/gpfs/wolf2/cades/cli185/proj-shared/wangd/kmELM"
CASEDIR="/gpfs/wolf2/cades/cli185/proj-shared/wangd/e3sm_cases/uELM_${EXPID}_I1850uELMCNPRDCTCBC"Run the case generation script:
sh uELM_caseGEN_TVA.shThis script will create the necessary case directories.
Once the case has been created, you can build and run it:
./case.build
./case.submitFollowing these steps will enable you to set up and run the kmELM reference simulation on the selected HPC systems. Adjust paths and configurations as needed based on your specific environment and requirements.
For any further assistance, refer to the E3SM documentation or contact the kmELM development team.