Companion code for the newsletter A Journey Through Climate Modelling: climate models built from the ground up, one piece of physics at a time.
Climate models can feel like black boxes. Here we open them up. We start with the simplest models (heat conduction in soil, a basic energy balance) and add one process at a time, so you can see how a single equation grows into a full climate model.
Every post follows the same template, and every post has a runnable model in this repository:
- The idea: the physical process and why it matters for climate
- The equations: derived step by step
- The code: a minimal implementation in Julia
- The results: plots and animations
- The limits: what the model cannot explain, which motivates the next one
No expertise needed: curiosity, basic maths and a bit of code reading are enough.
git clone https://github.com/hadronnez/AJourneyThroughClimateModelling.git
cd AJourneyThroughClimateModelling
julia --project=. -e 'using Pkg; Pkg.instantiate()'
julia include("run_experiment.jl")A run is controlled by three YAML files in cfgs/:
Change a parameter, run again, and compare.
Each run writes to experiments/<id>/:
cfgs/: the three configs exactly as used (defaults filled in). Copy them back intocfgs/to reproduce the run.data/: results in NetCDFplots/: figures and animationslog/: run log
New posts and the code that goes with them appear on the Substack. Questions and suggestions are welcome as issues. …]()
