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:

    1. "Theory phase": Lectures that provide all theoretical information necessary to reach the milestone.

    2. "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.