ideal.II: a Galerkin Space-Time Extension to the Finite Element Library deal.II
Jan Philipp Thiele
TL;DR
ideal.II extends deal.II to support space-time tensor-product finite elements, enabling all-at-once and slab-based formulations while preserving the library-like workflow. It provides a cohesive set of wrappers, data structures, and classes (e.g., DG_FiniteElement, FEValues, TimeIteratorCollection) that integrate with deal.II without reinventing core design, and supports arbitrary numbers of temporal intervals per slab to interpolate between time-stepping and all-at-once approaches. Through numerical experiments on the heat equation and Navier–Stokes flow, the framework demonstrates robust convergence behavior and compatibility with existing solvers, while enabling adjoint-oriented extensibility and dynamic triangulation in the future. The work delivers a practical, open-source toolkit for easy implementation of space-time PDEs with tensor-product discretizations and lays the groundwork for adaptive space-time refinement and advanced error controls in engineering applications.
Abstract
The C++ library deal.II provides classes and functions to solve stationary problems with finite elements on one- to threedimensional domains. It also supports the typical way to solve time-dependent problems using time-stepping schemes, either with an implementation by hand or through the use of external libraries like SUNDIALS. A different approach is the usage of finite elements in time as well, which results in space-time finite element schemes. The library ideal.II (short for instationary deal.II) aims to extend deal.II to simplify implementations of the second approach.
