Skip to content

About

Educational notebooks covering regional climate modeling, atmospheric science, Python workflows, NetCDF, xarray, visualization, and scientific computing for climate research.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

17 Commits

Folders and files

Repository files navigation

🌍 Deep Dive into ICON-CLM – From User to Developer

Welcome to a hands-on, structured course designed to help you go from simply running the ICON-CLM climate model to confidently understanding, modifying, and extending it as a developer.

This course is especially useful for:

  • Climate and atmospheric science researchers (e.g. ICON-CLM users)
  • HPC and numerical modelers working with ICON-LAM or COSMO-CLM
  • Postdocs and graduate students transitioning from user to developer roles

📚 Course Structure

The course is divided into 8 chapters, each focusing on a core skill or concept relevant to ICON:

Chapter Title
1️⃣ What is ICON? – Model family, design, and philosophy
2️⃣ ICON Folder & File Structure – Where the code lives
3️⃣ Fortran Modules in ICON – Naming, navigation, and coding style
4️⃣ MPI & Parallelism in ICON – Patches, tiles, halo exchange
5️⃣ Physics Parameterizations – How ICON simulates the atmosphere
6️⃣ ICON I/O – NetCDF handling, outputs, and adding diagnostics
7️⃣ Running Experiments – Namelists, scripts, and experiment folders
8️⃣ Capstone Project – Custom diagnostics and a full simulation workflow

📦 Each chapter will include:

  • Explanations and visuals
  • Hands-on exercises and code snippets
  • Real paths and files from ICON

💻 Technologies & Tools Covered

  • Fortran 2008 (modern modular structure)
  • MPI (parallelization inside ICON)
  • ICON’s folder structure, source files, and runtime logs
  • NetCDF, CDO/NCO tools
  • SLURM job scripts
  • Real experiments on HPC clusters

🛠️ What You'll Learn to Do

✅ Trace a variable from initialization → physics → output ✅ Add a diagnostic variable to NetCDF output ✅ Navigate mo_ modules and understand ICON logic ✅ Understand how MPI is used internally (patches, halo) ✅ Modify ICON namelists and conduct custom simulations


🔐 Note

This repository is currently private as the course is being developed and tested. Eventually, it may be adapted for workshop use or shared with specific collaborators.


🔗 Key References


⚙️ Model & Environment Info

This course is based on the following ICON-CLM setup:

Item Details
Model ICON-CLM – Climate & Land Modeling system
Version 2025.04-2 (latest public release)
Branch release-2025.04-public
Source Repo gitlab.dkrz.de/icon/icon-model.git
Commit Hash 289490d6c166f27c280df246c6df2da9446c8c9b
Environment macOS (tested on MacBook), using Homebrew-installed toolchain
MPI Setup MPICH + gfortran via mpif90
Model Physics Dry dynamics + basic ICON-CLM physics (no moist convection by default)

✅ This matches the official public ICON release maintained by DKRZ and MPI-M.


✍️ Author

This course is developed and maintained by M. M. Karadan, a researcher in Ocean and Atmospheric Sciences), with hands-on experience using ICON-CLM in research workflows.


📢 Feedback

Feel free to open an issue or start a private discussion if you’re collaborating on this repo.


About

Educational notebooks covering regional climate modeling, atmospheric science, Python workflows, NetCDF, xarray, visualization, and scientific computing for climate research.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages