Skip to content

Installing CUPID

will wieder edited this page Feb 19, 2026 · 44 revisions

Installing CUPiD

This page follows the CUPiD Installation Documentation, with some tweaks specific to the NCAR super computer.

TOC

1) Checkout CTSM with CUPiD

cd /glade/work/$USER
git clone --origin escomp -b CUPiD https://github.com/ESCOMP/CTSM.git ctsm_cupid_2026
cd ctsm_cupid_2026
./bin/git-fleximod update

You will see something like this:

                 rtm up to date.
              mosart up to date.
                cism up to date.
Recursively checking out submodules of cism
          ccs_config up to date.
          mpi-serial up to date.
               share up to date.
               cdeps up to date.
Recursively checking out submodules of cdeps
               cmeps up to date.
               cupid updated to 6b12f0b093e2f9f0d91061960975270b63cfad5a
Recursively checking out submodules of cupid
           mizuRoute up to date.
Recursively checking out submodules of mizuRoute
          parallelio up to date.
               fates up to date.
Recursively checking out submodules of fates
                cime up to date.
Recursively checking out submodules of cime

2) Install CUPiD Environments

CUPiD is available from the NCAR organization on github.com. And comes with the version of CTSM that you checked out above (in the tools/CUPiD subdirectory). It requires conda to manage a few different python environments. The NCAR system administrators provide conda through a module, which you can access by running

module load conda

Checkpoint #1

At this point you should have an open terminal in JupyterHub and the current working directory should be your ctsm_cupid_2026 workshop directory.

TODO add instructions for getting onto jupyterhub and navigating into the right directory.

The rest of this tutorial will refer to the location with CUPiD in the CTSM checkout as ${CUPID_ROOT}. To be able to copy and paste blocks of commands directly, we need to add the variable to your environment.

This tutorial assumes you're using a bash shell, which most of you are using by default Linux and Unix computers. We'll the environment variable CUPID_ROOT

cd tools/CUPiD
export CUPID_ROOT=`pwd -P`

Note: This environment variable only exists in this specific terminal. It will need to exported again if you open a separate terminal, unless you modify your start files (see the NCAR documentation for this process for more information).

2.2) Install two conda environments for CUPiD

CUPiD needs a python environment with specific packages installed to run the CUPiD tools, while the diagnostic notebooks provided with CUPiD need a different set of packages.

To run CUPiD itself we use the (cupid-infrastructure) environment, then CUPiD runs the diagnostics notebooks with (cupid-analysis). We will use mamba to install these environments and the --yes option to avoid mamba waiting for approval before continuing with the install:

Install (cupid-infrastructure) and (cupid-analysis)

cd ${CUPID_ROOT}
mamba env create -f environments/cupid-infrastructure.yml --yes && \
mamba env create -f environments/cupid-analysis.yml --yes

Notes:

This is two separate commands separated by &&; the second command (installing (cupid-analysis)) will only run if the first command (installing (cupid-infrastructure) finishes successfully). Also, the \ is a line continuation operator - without it, the command would be on a single line and very long.

If you remove the --yes flag, mamba will ask you to confirm the installation after it determines what packages will be installed.

Congratulations!

You've cloned CTSM enabled with CUPiD and created the conda environments. Let's learn a bit about CUPID before you start your analyses!



Next to the CUPiD overview page

Back to the Main LMWG-CUPiD Tutorial Page

Clone this wiki locally