ClimaAtmos.jl
ClimaAtmos.jl is a Julia library for building atmospheric circulation models. It supports global configurations, Cartesian geometries (e.g., doubly periodic boxes used for large-eddy simulations), and single-column configurations. It runs on CPUs and GPUs and is designed to work with data assimilation and machine learning tools.
Quickstart
import ClimaAtmos as CA
simulation = CA.AtmosSimulation{Float32}(; t_end = "1days")
CA.solve_atmos!(simulation)This runs a 1-day global simulation with default settings (cubed-sphere grid, decaying temperature profile, IMEX timestepping).
Capabilities
- Global simulations on cubed-sphere grids with topography
- Single-column models for BOMEX, DYCOMS, RICO, and other standard cases
- GPU acceleration via CUDA
- ERA5 and GCM-driven initial conditions and forcing
- EDMF turbulence (prognostic and diagnostic)
- Microphysics (0-moment, 1-moment, 2-moment)
- Configurable diagnostics with NetCDF and HDF5 output
- Restarts and checkpointing for long simulations
Finding your way around
Each section of these docs answers a different need – head for the one that matches what you're doing:
- Getting Started – new to ClimaAtmos? Start here.
- Installation – install the package, or run from a clone
- Your First Simulation – run and customize a simulation
- Script vs Config Interface – the two ways to configure a run
- How-to Guides – task recipes for running and configuring simulations.
- Running simulations: single-column cases, radiative equilibrium, restarts, REPL debugging
- Configuration: custom configurations, parameters
- Computing and saving diagnostics
- Explanation – the science and numerics behind the model.
- Dynamics & numerics: governing equations, implicit solver, integer time (ITime)
- Physics & parameterizations: microphysics, EDMF (prognostic, diagnostic), gravity-wave drag, ocean surface albedo, topography
- Reference – look-up material.
- Developer Guide – contributing and the Buildkite longrun jobs
New here? Start with Installation and Your First Simulation, then pick the workflow that suits you in Script vs Config Interface. For column experiments, see Single Column Models.