The Geophysics and Geodynamics work group (led by Prof. Boris Kaus) focuses on understanding geological processes using numerical modeling as a central tool. Numerical modeling refers to the use of computers to solve mathematical equations that describe physical processes. A key advantage of this approach in the geosciences is the ability to investigate processes at different spatial and temporal scales. This is particularly relevant since the time periods under consideration often span geological dimensions, ranging from seconds to several hundred million years. Additionally, it provides insight into processes occurring deep within the Earth where direct access is not possible.

We have developed a series of open-source software packages to simulate geological processes in 2D and 3D, as well as tools for predicting the chemical evolution of melting and crystallizing rocks. We use these tools to model diverse processes involving small- to large-scale deformation, the coupling between mechanical and thermal effects, and chemical reactions in geological contexts, with particular emphasis on magmatic and plate tectonic processes. Another important focus is the development of new numerical methods. We develop new forward and inverse modeling approaches that run on parallel high-performance computers, with recent emphasis on graphics processing units (GPUs). Additionally, our group has expertise in applied geoscience projects and collaborates with smartTectonics GmbH (a company that emerged from the work group).

Training the next generation of geoscientists in fundamental as well as computational methods is very important to us. In the bachelor’s program, courses in programming and geostatistics provide a solid foundation in scientific computing, data analysis, and numerical thinking, with particular emphasis (in recent years) on the Julia programming language. In the various master’s degree programs, students delve deeper into physical processes such as rock deformation, flow in reservoirs, and geodynamic processes. The important numerical methods for these are the focus. This combination of theory and practical application provides students with a solid foundation in these areas. Students who wish to specialize in geodynamic modeling or scientific computing are invited to contact the work group directly. The broad training through courses and final theses prepares graduates for diverse career paths, including positions in geothermal energy, engineering firms, geological surveys, hydrogeology, data science, and academic research.


  • MOSAIC – A modular, parallel, 3D seismo-thermo-mechanical approach to simulate the feedback between geodynamic and seismic processes (DFG, 2025-2028)

  • TRIGGER: Formation of fractures and changes in permeability in geothermal reservoirs caused by thermally induced stress changes, collaborative project, Federal Ministry for Economic Affairs and Energy (BMWE) (2025-2028)

  • DEGREE: Digital twin for evaluating the exploration potential of GeoREsources: Eifel deep geothermal anomaly, Federal Ministry for Economic Affairs and Energy (BMFTR) (2024-2027)

  • MAGMA – Melting and Geodynamic Models of Ascent, ERC Consolidator Grant project (2018-2023)

Compulsory Module Applied Geology

  • Hydrogeology

Compulsory Module Quantitative Geology

  • Introduction to Geostatistics
  • Introduction to Programming

Elective Module Geostatistics-2 and Applied Numerics

  • Geostatistics-2 and Applied

Elective Module Geodynamical & Petrological
Methods

  • Geophysical Modelling

Elective Module Georesources II

  • Reservoir Flow Modeling
  • Reservoir Geomechanics

Elective Module Applied Computational
Geomechanics

  • Introduction to geomechanical modeling
  • Geomechanics
  • Applied geomechanics project
  • Computational geosciences

Elective Module Major Geosciences (CSRN)

  • Geodynamics
  • Geophysical Modelling
  • Geomechanical Modelling

Elective Module Advanced Geosciences (CSRN)

  • Reservoir Geomechanics
  • Reservoir Flow Modelling

Elective Module Finite Elements [Programming the Finite Element Method]

  • Lecture with practice class “Programming the Finite Element Method”

Interested in BSc/MSc theses in geodynamics? Please contact us. A list of possible topics can be found on the bulletin board. Your own proposals are welcome.



Open-source software is a foundation for reproducible and transparent research. We therefore continuously develop and maintain our codes and make them freely available.

Currently, our focus is on modular, differentiable packages in Julia – a modern scientific programming language. Previously, we developed software in various languages, including C, Fortran90, and MATLAB.

It is important to us not only to develop modern software but also to use it to better understand geoscientific processes. Developing software and using it in the community are two different tasks – both have their own value. Good production software must be user-friendly and powerful, as high resolution and computational performance are crucial for systematic simulations and physical insights. Combining both in a research group is an effective way to advance science.

Below you will find some of the main codes developed in our group.

LaMEM

LaMEM (Lithosphere and Mantle Evolution Model) is a parallel 3D C code with staggered finite differences used to simulate geoscientific problems across a wide range of scales (from water flow through porous rock to the collision of tectonic plates). The code has been developed in various forms since 2007 and can be deployed on systems ranging from laptops to massively parallel computers. It features visco-elasto-plastic rheologies, Newton solvers for handling nonlinearities, and multigrid preconditioners.

JustRelax.jl

JustRelax.jl is a collection of accelerated pseudo-transient solvers based on staggered finite differences that can be used to model various geodynamic problems. These include crustal deformation as well as magmatic or mantle-related processes. Unlike LaMEM, which covers similar application areas, JustRelax.jl enables simulations to run on multiple GPUs and is more modular in design. It uses other packages developed in the group, such as JustPIC.jl and GeoParams.jl, to improve usability and extensibility.

MAGEMin

MAGEMin is a state-of-the-art C code for parallel thermodynamic calculations that is gaining increasing popularity in petrology and geodynamics. It uses a Gibbs energy minimization approach to calculate stable phase equilibria as a function of pressure, temperature, and chemical composition. Work is currently underway to expand the program’s applicability by adding additional databases and providing a Julia interface (MAGEMin_C.jl) and a web-based graphical user interface (MAGEMinApp.jl).

MagmaThermoKinematics.jl

MagmaThermoKinematics.jl simulates the thermal evolution of magmatic systems following the intrusion of dikes and sill bodies, making it relevant to a wide range of geoscientists. It supports 2D, 2D axisymmetric, and 3D geometries, runs on parallel CPUs and GPUs, and uses a finite difference discretization combined with semi-Lagrangian advection and tracers. Dike intrusion is treated kinematically, with displacement of the host rock modeled using analytical solutions for lens-shaped cracks, among other methods. Cooling, crystallization, and latent heat effects are taken into account, and the thermal evolution of tracers can be used to simulate zircon age distributions.

MVEP2

MVEP2 is a MATLAB-based 2D finite element program for simulating the evolution of the lithosphere and mantle. It was used between 2009 and 2017 in a variety of projects to simulate the dynamics of the lithosphere, mantle, and crust under the most diverse conditions. Part of its success was due to its ease of use for geoscientists with little programming experience and its applicability to new problems.

LaMEM.jl

LaMEM.jl is the Julia interface to LaMEM, which automatically installs the program along with the required dependencies (MPI, PETSc) on all modern operating systems, so it can be used directly for research or teaching purposes.

PETSc.jl

PETSc.jl serves as an interface to the PETSc software, a suite of MPI-compatible solvers used to solve partial differential equations on very large clusters. Although we are not involved in the development of PETSc itself, we maintain this Julia wrapper, which enables very easy installation of PETSc using precompiled versions of the library and takes advantage of the Julia programming environment and its features.

GeoParams.jl

GeoParams.jl is a Julia package developed for handling constitutive and material parameters, a complex aspect of geoscientific applications due to the nonlinearity of visco-elasto-plastic constitutive relationships. These calculations are typically performed pointwise, making them equally suitable for finite difference and finite element discretizations. GeoParams.jl bundles these pointwise calculation routines together with a robust database of rheological properties, all optimized for GPU performance.

JustPIC.jl

JustPIC.jl is our project for developing particle-in-cell advection schemes for GPUs and CPUs for geodynamic simulations, written entirely in the Julia programming language.

GeophysicalModelGenerator.jl

GMG is a Julia package that allows users to import 2D and 3D data from geophysics and geology of a geographic region and merge them on a common surface for joint visualization. It is also used to generate initial conditions for numerical models and to compare results with natural data.

FiniteDiffWENO5.jl

FiniteDiffWENO5.jl implements a fifth-order Weighted Essentially Non-Oscillatory (WENO-Z) finite difference scheme for advection terms in partial differential equations (PDEs) and supports 1D, 2D, and 3D problems on regular grids. Both non-conservative and conservative forms of advection terms are supported, on collocated and staggered grids, respectively. The package is written in pure Julia and supports both CPU and GPU.

InteractiveGeodynamics.jl

InteractiveGeodynamics.jl is a Julia package designed to enable students to model some simple, predefined geodynamic problems via a graphical user interface. It is used in teaching.