Open Source

The UG4 Simulation Framework

UG4 is an open-source simulation framework for solving differential equations on unstructured hybrid grids, developed by Prof. Gabriel Wittum and collaborators. It is the computational foundation on which TechSim's numerical models and simulations are built. Designed for scientific rigour and industrial scale, UG4 runs on systems ranging from laptops to massively parallel supercomputers.

Key Capabilities

A selection of UG4's core technical features.

Unstructured Hybrid Grids

UG4 solves differential equations on unstructured hybrid grids in 1, 2 and 3 dimensions. Supported element types include vertices, edges, triangles, quadrilaterals, tetrahedra, hexahedra, prisms and pyramids, enabling accurate representation of complex geometries.

1D / 2D / 3DHybrid GridsAdaptive Meshes

Parallel Scalability

The parallelisation layer is based on MPI and allows efficient communication on distributed hierarchical graphs. Scalability has been demonstrated for up to 256,000 parallel processes, from standard workstations to massively parallel supercomputers.

MPIHPCUp to 256k processes

Advanced Solvers

UG4 includes a comprehensive suite of numerical solvers: iterative solvers, preconditioners, geometric and algebraic multigrid methods, and sparse LU decomposition. These are precisely the robust, parallel and adaptive multigrid solvers at the core of TechSim's work.

MultigridSparse LUIterative Solvers

Flexible Discretisation

A modular discretisation framework allows equations, input and output parameters to be coupled freely, even at scripting level. Finite element, finite volume and finite difference methods are supported on adaptive meshes.

FEMFVMFDM

Scripting & Python Support

UG4 extends the Lua scripting language to control entire simulations from readable scripts. Python bindings are also available, enabling modern workflow integration and interactive use via Jupyter notebooks.

LuaPythonJupyter

Extensible Plugin System

A well-designed plugin architecture allows users to extend UG4 without modifying its core. Plugins export functions and classes that become immediately available in scripts and the graphical interface.

PluginsModularOpen API

Origin & Development

UG4 was initiated by Prof. Gabriel Wittum and has been developed over many years at the Goethe Center for Scientific Computing (G-CSC) at Goethe University Frankfurt. It continues to be actively developed and maintained as an open-source project on GitHub.

The codebase is jointly owned by Goethe University Frankfurt and TechSim. It is distributed under the GNU Lesser General Public License (LGPL) and is fully and freely available via GitHub.

The framework is written in C++ and is designed to be both flexible and fast, striving for a robust simulation environment that scales from interactive desktop use to large-scale parallel computation. It is cross-platform, supporting Linux, macOS and Windows.

UG4 is equipped with supporting tools for meshing (ProMesh), matrix inspection (ConnectionViewer), and visualisation via VTK-based tools such as ParaView.

UG4 and TechSim

All simulation and modelling projects described on this website have been implemented using UG4. It provides the numerical backbone for TechSim's work across computational medicine, environmental science, structural mechanics, financial mathematics and other domains.

In particular, UG4's robust parallel multigrid solvers form the foundation for TechSim's ability to tackle large-scale problems in partial differential equations, problems that are intractable with standard approaches.

As an open-source framework, UG4 can be freely used, inspected and extended. We encourage scientific collaborators and industrial partners to explore the codebase and documentation.

Explore UG4 on GitHub

Source code, documentation, plugins and tutorials are freely available.