General Information
Goals for this Course
Implement your own (simple) climate model from scratch. We teach you everything(!) that is necessary.
Get an idea about climate physics.
Get an idea how to describe the physics with ODEs and PDEs.
Learn how to numerically solve ODEs and PDEs.
Learn how to implement the numerical algorithms.
Learn how to set up simple climate simulations.
Learn how to discuss the results and understand the limitations of the modeling.
Use everything learned to extend the model.
Structure of the Course
We have 6 pre-made milestones (sub-projects) with the following structure:
"Theory phase": Lectures that provide all theoretical information necessary to reach the milestone.
"Implementation phase": Hands-on programming in groups. We are here to help: can be used to sit together and work on the milestones, ask questions, discussions, etc.
In the final part of the lecture, there will be the mysterious milestone 7.
For the milestones 1-6 solutions in Julia and Python are available and made accessible.
Below you can find the schedule.
Examination
Milestone 1-6 are not graded. Their purpose is to learn the climate model and prepare for milestone 7.
Milestone 7 is free style and the topic chosen by students with a final (Jupyter/Pluto notebook) presentation at the end of the semester that will be graded (pass/fail). Again, we are here to help: we will guide and supervise the selection of topics for milestone 7, and give advice and support during the hands-on phase.
Admission criterion for oral exam: Pass milestone 7.
Per person oral exam (most likely in the first week of August).
Organization of the course
All announcements and internal communications will be done via ILIAS!
Make sure that you can log in there and check "general information".
If you have a question, please post in ILIAS questions/comments section.
Created by Gregor Gassner and Andrés Rueda-Ramírez with contributions by Simone Chiocchetti, Daniel Bach, Sophia Horak, Philipp Baasch, Benjamin Bolm, Erik Faulhaber, and Luca Sommer. Last modified: April 02, 2026. Website built with Franklin.jl and the Julia programming language.