FESTUNG 1.0: Overview, usage, and example applications of the MATLAB/GNU Octave toolbox for discontinuous Galerkin methods. (1st January 2021) - Reuter, Balthasar; Hajduk, Hennes; Rupp, Andreas; Frank, Florian; Aizinger, Vadym; Knabner, Peter
Abstract: The present work documents the current state of development for our MATLAB/GNU Octave-based open source toolbox FESTUNG ( F inite E lement S imulation T oolbox for UN structured G rids). The goal of this project is to design a user-friendly, research-oriented, yet computationally efficient software tool for solving partial differential equations (PDEs). Since the release of its first version, FESTUNG has been actively used for research and teaching purposes such as the design of novel algorithms and discretization schemes, benchmark studies, or just providing students with an easy-to-learn software package to study advanced numerical techniques and good programming practices. For spatial discretization, the package employs various discontinuous Galerkin (DG) methods, while different explicit, implicit, or semi-implicit Runge–Kutta schemes can be used for time stepping. The current publication discusses the most important aspects of our toolbox such as the code design concepts and various discretization procedures illustrated in some detail using a standard advection–diffusion–reaction equation. Moreover, we present selected applications already supported in FESTUNG including solvers for the two-dimensional shallow-water equations, the Cahn–Hilliard equation, and a coupled multi-physics model of free surface / subsurface flow.