
1. Introduction to CESM#
Tutorials at the 2025 paleoCAMP | June 16–June 30, 2025
Jiang Zhu
jiangzhu@ucar.edu
Climate & Global Dynamics Laboratory
NSF National Center for Atmospheric Research
Learning Objectives#
Know the basic structure of CESM as a software, including the workspaces
Time to learn: 20 minutes
NOTE: Hands-on exercise is in the next module. You don’t need to do anything yet.
The Community Earth System Model (CESM)#
CESM is a fully coupled global Earth system model developed primaily by NSF National Center for Atmospheric Research (NCAR) in collaboration with colleagues in the research community. CESM provides state of the art computer simulations of Earth’s past, present, and future Earth-system states.
CESM as a software#
~5 million lines of FORTRAN* source code and scripts (Minecraft is estimated to have 1.8-4.8 million)
You need to build the source code to create and run the executable on a supercomputer.
Read more about CESM here
*NOTE: Why FORTRAN?
CESM Workspaces (assuming you run a company that builds new electric vehicles)#
CESM Code, “Headquarter”
FORTRAN, Python, & XML (Extensible Markup Language) files
contains your intellectual properties, e.g., research/designing of EVs
Inputdata Directory, “Supply Warehouse”
NetCDF data for boundary/initial conditions
contains the raw materials, e.g., steel and batteries
Case Directory, “Production Control Room”
Text, script, XML files
where you give instructions, e.g., to hire 100 workers and produce 5 EVs per day
Build/Run Directory, “Factory”
Library, executables, NetCDF files, …
where workers assemble the EVs
Archive Directory, “Storage”
NetCDF files, log files in text, …
where you store the assembled EVs and work log

Figure: CESM2 Workspaces
Get the CESM code#
CESM code development and release is on Github: ESCOMP/CESM.git
If you would like to get a copy of the code in the future
git clone -b release-cesm2.1.5 ESCOMP/CESM.git cesm2.1.5
./manage_externals/checkout_externals
*NOTE: for this tutorial, if you decide to run CESM, please use the code in my workspace: /glade/work/jiangzhu/paleocamp/cesm2.1.5
Summary#
CESM is a software primarily in FORTRAN and you need to build the executable.
Like managing an EV company, you deal with multiple workplaces. What are they?
CESM code is managed on GitHub.
Optional advanced resources#
Check out the full annual CESM Tutorial here
Apply for the Annual CESM Tutorial for free