What is DuMux?
DuMux is a simulation framework with a focus on
finite volume discretization methods, model coupling for multi-physics applications,
and flow and transport applications in porous media.
DuMux is based on the DUNE framework from which it uses
the versatile grid interface, vector and matrix types, geometry and local basis functions, and linear solvers.
DuMux then provides
- Finite volume discretizations (Tpfa, Mpfa, Staggered) and control-volume finite element discretization schemes
- A flexible system matrix assembler and approximation of the Jacobian matrix by numeric differentation
- A customizable Newton method implementation including line search and various stopping criteria
- Many pre-implemented models (Darcy-scale porous media flow, Navier-Stokes, Geomechanics, Pore network models, Shallow water equations) and constitutive models
- A multi-domain framework for model coupling suited to couple subproblems with different discretizations/domains/physics/dimensions/... and create monolithic solvers
DuMux has been applied to model complex and non-linear phenomena,
such as CO2 sequestration, soil remediation, reactive transport and precipitation phenomena,
drug delivery in cancer therapy, flow in micro-fluidics, root-soil interaction,
flow in fractured porous media, atmosphere-soil flow interaction, evaporation, and more.
Please have a look at our journal publications
(see below: How to cite)
for a more detailed description of the goals the development history
and motivations behind DuMux.

Overview
The following resources are useful to get started with DuMux:
Some helpful code snippets are available in the Wiki.
Automated testing of installation: 
License

DuMux is licensed under the terms and conditions of the GNU General
Public License (GPL) version 3 or - at your option - any later
version. The GPL can be read online or in the LICENSE.md file
provided in the topmost directory of the DuMux source code tree.
Please note that DuMux' license, unlike DUNE's, does not feature a
template exception to the GNU General Public License. This means that
you must publish any source code that uses any of the DuMux header
files if you want to redistribute your program to third parties. If
this is unacceptable, please contact us for a commercial
license.
See the file LICENSE.md for copying permissions.
For a curated list of contributors, see AUTHORS.md.
If you notice that a contributor is missing on the list,
please contact us or open a merge request adding the name.
How to cite
DuMux is research software and developed at research institutions.
You can cite specific releases via DaRUS (from 3.6) or Zenodo:
. You can also cite individual code files or even lines via Software Heritage: 
If you are using DuMux in scientific publications and in the academic context, please cite (at least one of)
our publications:
DuMux 3 – an open-source simulator for solving flow and transport problems in porous media with a focus on model coupling.
Computers & Mathematics with Applications, 81, 423-443, (2021).
PDF
@article{Koch2021,
doi = {10.1016/j.camwa.2020.02.012},
year = {2021}, volume = {81}, pages = {423--443},
publisher = {Elsevier {BV}},
author = {Timo Koch and Dennis Gläser and Kilian Weishaupt and others},
title = {{DuMux} 3 {\textendash} an open-source simulator for solving flow and transport problems in porous media with a focus on model coupling},
journal = {Computers \& Mathematics with Applications}}
DuMux: DUNE for multi-{phase,component,scale,physics,…} flow and transport in porous media.
Advances in Water Resources, 34(9), 1102–1112, (2011)
PDF
@article{Flemisch2011,
doi = {10.1016/j.advwatres.2011.03.007},
year = {2011}, volume = {34}, number = {9}, pages = {1102--1112},
publisher = {Elsevier {BV}},
author = {B. Flemisch and others},
title = {{DuMux}: {DUNE} for multi-$\lbrace$phase, component, scale, physics, {\ldots}$\rbrace$ flow and transport in porous media},
journal = {Advances in Water Resources}}
Contributing
Contributions are highly welcome. Please ask questions over the mailing list.
Please review the contribution guidelines
before opening issues and merge requests.