Package: dumux
What is DuMux?DuMuxis a simulation toolbox mainly aimed at flow and transport
processes in porous media. DuMuxis based on theDUNEframework and aims to provide a multitude of numerical models as well
as flexible discretization methods for complex non-linear phenomena,
such as CO2 sequestration, soil remediation, drug delivery in cancer
therapy and more. Have a look at our publications
(see below:How to cite)
for a more detailed description of the goals and motivations behind DuMux.InstallationHave a look at theinstallation guideor use theDuMuxhandbook,
Chapter 2.DocumentationThe following resources are useful to get started with DuMux:Getting started guideon theDuMuxwebsiteHandbook, a detailed DuMuxmanual,DuMuxcourse materials,Examples, with detailed description of code and results,Class documentationgenerated from the source code,Mailing list,Changelog, where all changes between different release versions are listed and explained.Some helpful code snippets are available in theWiki.LicenseDuMuxis 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 beread onlineor in theLICENSE.mdfile
provided in the topmost directory of the DuMuxsource code tree.Please note that DuMux' license, unlike DUNE's, doesnotfeature a
template exception to the GNU General Public License. This means that
you must publish any source code which uses any of the DuMuxheader
files if you want to redistribute your program to third parties. If
this is unacceptable to you, pleasecontact usfor a commercial
license.See the fileLICENSE.mdfor full copying permissions.How to citeDuMuxis research software and developed at research institutions.
If you are using DuMuxin scientific publications and in
the academic context, please cite (at least one)
of our publications:Koch, T., Gläser, D., Weishaupt, K., Ackermann, S., Beck, M., Becker, B.,
Burbulla, S., Class, H., Coltman, E., Emmert, S., Fetzer, T., Grüninger, C.,
Heck, K., Hommel, J., Kurz, T., Lipp, M., Mohammadi, F., Scherrer, S.,
Schneider, M., Seitz, G., Stadler, L., Utz, M., Weinhardt, F.
& Flemisch, B. (2020).DuMux3 – an open-source simulator for solving flow
and transport problems in porous media with a focus on model coupling.Computers & Mathematics with Applications,
https://doi.org/10.1016/j.camwa.2020.02.012Flemisch, B., Darcis, M., Erbertseder, K., Faigle, B., Lauser, A.,
Mosthaf, K., Müthing, S., Nuske, P., Tatomir, A., Wolff, M.,
& Helmig, R. (2011).DuMux: DUNE for multi-{phase,component,scale,physics,…}
flow and transport in porous media.Advances in Water Resources, 34(9), 1102–1112.
https://doi.org/10.1016/j.advwatres.2011.03.007You can also cite specific releases published on Zenodo:Automated TestingDuMux3.3 / Dune 2.7:DuMuxmaster / Dune 2.7:DuMuxmaster / Dune master:DuMuxfeatures many tests (some unit tests and test problems) that can
be run manually. We have experimental support for automated testing with buildbot.
Clickhere (buildbot)to see the latest builds (clicking on a build
number will show a detailed overview of the build).A weekly coverage report of the test suite is created by gcovr/gcov. The report
currently doesn't include non-instantiated code, so the real coverage is likely lower. However,
only a few lines of code are never instatiated in the comprehensive test suite.ContributingContributions are highly welcome. Please ask questions over themailing list.
Please review thecontribution guidelinesbefore opening issues and merge requests. For bug reports contact us
over the mailing list, or file anissue. For bug fixes,
feature implementations open amerge requestor send us formatted patches.Backwards CompatibilityFor a detailed description of the backwards compatibility policy,
please seecontribution guidelines.DuMuxreleases are split into major(e.g. 2.0, 3.0) and minor (e.g. 3.1, 3.2, 3.3) releases.
Major releases are not required to maintain backwards compatibility (see below),
but would provide a detailed guide on how to update dependent modules.
For each minor release, maintaining backwards compatibility is strongly encouraged and recommended.Despite the goal of maintaining backwards compatibility across minor releases,
for more complicated changes, this is decided upon on a case to case basis, due to limited developer resources.
In the case that implementing full backwards compatibility for an update is not feasible, or would require unreasonable resources,
the degree of backwards compatibility be decided by a vote in one of the monthly core developer meetings.Major version update, 2.12 to 3.0With the version update to version 3, many features have been added and a lot has been improved in DuMux. See thechangelogfor a list of changes.
If you decide to update from version 2.12, please have a look at our smallguideon how to update an application to the new version.