The open-source simulator DuMux aims at providing a sustainable and consistent framework for the implementation of model concepts for porous-media applications. Starting from 2007, DuMux has been developed continuously (the last major release was version 3.0 at the end of 2018) and it was applied successfully in more than 100 peer-reviewed publications and 20 PhD theses. Since 2015, all bachelor, master or doctoral students at the LH2 are expected to publish their code in the form a public git repository (dumux-pub) in order to facilitate the reproduction of their numerical results.
DuMux is based on the Distributed and Unified Numerics Environment DUNE (dune-project.org), a heavily templated C++ framework, and only runs natively on Linux and macOS systems, thus requiring a certain proficiency with command line operations and advanced C++ coding. This poses an initial hurdle for first-time users and scientists trying to build and run the code published as pub module. Furthermore, many simulation parameters such as the discretization method, the type of fluids and components considered, or the linear solver employed cannot be chosen at runtime as changing any of these parameters requires recompilation.
The goal of this project is to improve the usability, sustainability and archivability of the research software DuMux with the help of the infrastructure services ViPLab and DaRUS, all located at the University of Stuttgart. To this end, we will develop representative DuMux executables which are highly configurable at runtime, allowing the user to change a multitude of parameters without the need to recompile the application. An automated way of creating containerized environments for each publication using DuMux will be developed. These containers will then be stored in DaRUS, the institutional publication repository of the University of Stuttgart, and linked to ViPLab, the virtual programming lab of the University of Stuttgart, which allows to run the code through a web frontend.
apl. Prof. Dr. rer. nat. Bernd Flemisch
01/2019 - 01/2022