Tutorials
The G-ADOPT tutorial series is designed to guide you from first steps to advanced applications in geodynamics and beyond.
We currently provide tutorials in three main areas:
- Mantle Convection – from simple box models to full spherical Earth simulations.
- Glacial Isostatic Adjustment (GIA) – from 2-D Maxwell models to adjoint-based inversions of ice history and rheology.
- Generic Functionality – including multi-material simulations and PDE-constrained optimisation, applicable across a wide range of problems.
All tutorials are rendered directly from Jupyter notebooks that are included in the G-ADOPT source code (under the demos/
directory).
To run them, you'll need a working installation of Firedrake and G-ADOPT, along with a Jupyter kernel for Firedrake. See the install page for detailed setup instructions.
Getting Started
If you're new to this ecosystem, we recommend the following sequence:
-
Firedrake tutorials
Begin with the introductory Firedrake tutorials to learn the basics of the finite element framework on which G-ADOPT is built. -
Mantle Convection
Start with the simplest 2-D convection models and build up to spherical Earth simulations. This series introduces the essential concepts and workflows in G-ADOPT. If your main interest is in GIA, you can skip this section. -
Glacial Isostatic Adjustment (GIA)
Explore viscoelastic Earth deformation under surface loads, advancing towards adjoint-based inversions for ice history and rheology. If your main interest is in mantle convection, you can skip this section. -
Generic Functionality
Once comfortable with the physics-based tutorials, branch out into cross-cutting capabilities such as multi-material modelling and PDE-constrained optimisation.
By following this pathway, you'll progress from core Firedrake skills, through G-ADOPT's foundational physics examples, to advanced workflows for tackling state-of-the-art research problems.