ClimaCalibrate.jl
ClimaCalibrate runs the calibration loop around a forward model: it launches an ensemble of models in parallel, collects their output, hands it to EnsembleKalmanProcesses.jl to produce the next set of parameters, and picks up where it left off if the run is interrupted. EKP chooses the parameters adaptively to minimize the mismatch between the model output and observations, while ClimaCalibrate runs your model with them and returns the results.
The calibration code runs on a laptop or desktop, across Julia worker processes, or as one scheduler job per ensemble member on an HPC cluster. You choose by swapping the backend.
Installation
julia> ] add ClimaCalibrateJulia 1.10 or newer is required.
What it provides
- A backend system covering single-process runs, Distributed.jl workers, and the Slurm and PBS job schedulers on several HPC systems
- Checkpointing, so an interrupted calibration resumes without rerunning completed forward models
- Recipes for turning ClimaAnalysis.jl
OutputVars into observations with estimated noise covariances - A builder that assembles the ensemble output matrix from
OutputVars, so you do not have to track index ranges by hand - Residual diagnostics that report how much of the unfitted residual is structured rather than noise-like, and Makie plots of ensemble output against observations
Where to start
- How a calibration works describes the loop, where your code is called, and what ends up in the output directory.
- Getting Started walks through the pieces a calibration needs and how to put them together.
- The Calibration Tutorial is a complete example you can run locally.
Then, as you need them:
- Backends and writing submission scripts explain how to move a working calibration onto more hardware.
- Observations covers turning data into observations, with pages on building samples, building observations, and building the G ensemble matrix.
- Visualization plots the ensemble against the observations.
- Troubleshooting is for when a calibration fails or fails to converge, and the how-to guide collects shorter answers.
- The API is the full reference.