H31C-1420
Implementing Quality Assurance for the Numerical Research Software Dune / PDELab / DuMux

Wednesday, 16 December 2015
Poster Hall (Moscone South)
Bernd Flemisch1, Peter Bastian2, Dominic Kempf2, Timo Koch1 and Rainer Helmig3, (1)University of Stuttgart, Stuttgart, Germany, (2)University of Heidelberg, Heidelberg, Germany, (3)University of Stuttgart, Dept. of Hydromechanics and Modelling of Hydrosystems, Stuttgart, Germany
Abstract:
Quality assurance and, in particular, automated testing, should be one of the key elements of modern software development. However, applying common techniques from software engineering to numerical frameworks, such as Dune, may be challenging since the requirements for a test might be very different to standard software. This talk gives an overview of our work in describing system tests for numerical software and developing test tools to ensure that qualitative and quantitative properties of PDE discretizations are preserved. The developed tools are employed in the Dune discretization module Dune-PDELab and the porous-media simulator DuMux.

The newly developed module dune-testtools provides the following components:

  • A domain specific language for feature modelling, which is naturally integrated into the workflow of numerical simulation.
  • Tools to test whether a given PDE discretization does still yield the correct result without performance (or scalability) regressions.
  • Integration of the above tools into a CMake based build system.
  • Extensions to the Dune core modules to support the development of system tests.