Welcome to Underworld3

Computational Geodynamics Made Accessible

Underworld3 is a Python library for computational geodynamics, providing finite element modeling for Earth science research.

Underworld3 visualization examples
Getting Started

For new users

Learn Underworld3 fundamentals through interactive tutorials and hands-on examples.

  • Install and configure Underworld3

  • Create your first geodynamic model

  • Work through progressive tutorials

  • Understand meshes, variables, and solvers

Getting Started
Advanced Usage

For researchers

Master parallel computing, optimization, and complex physics for research-grade simulations.

  • Write parallel-safe code using UW3 API

  • Understand collective operations in PETSc

  • Optimize simulation performance

  • Implement complex rheologies

Developer Guide

For contributors

Understand the architecture, implementation details, and contribute to Underworld3 development.

  • Architecture and design patterns

  • Create new solvers and features

  • Follow coding standards

  • Contribute effectively

Developer Documentation

Quick Navigation

By Experience Level

By Topic

About Underworld3

Underworld3 is a Python library for computational geodynamics, built on:

  • PETSc for scalable parallel finite element methods

  • SymPy for mathematical self-description

  • Particle-in-cell methods for Lagrangian tracking

  • Natural mathematical syntax for intuitive model development

Getting Help

Found a typo or broken link? Click the speech bubble icon (💬) in the page footer to report it—the issue will be pre-filled with this page’s URL. You can also click the GitHub icon to browse the repository, or use “Edit on GitHub” (top right) to propose changes directly.

Try It Now

Launch interactive tutorials directly in your browser:

Binder