DuMux builds and runs on Linux and Mac operating systems. Installation on Windows is possible but it is definitely not something to try if you are a beginner. If you use Windows, we recommend the Ubuntu bash on Windows. Alternatively, you can try to employ MinGW, Cygwin or a Linux Virtual Machine.
In order to build DuMux you need at least the following software:
The following software is recommend but optional:
We provide you with a shell-script that facilitates setting up a DUNE/DuMux directory tree and configures all modules with CMake. Download installdumux.sh and place it in a directory where you want to install DUNE/DuMux. Run the script by typing
For more detailed explanation on installation and building of DuMux, please have a look at the handbook of the latest release or see below.
DuMux depends on DUNE.
You can obtain the required DUNE modules in form of binary packages for Debian, Ubuntu and openSUSE, see the
DUNE binary packages.
The DUNE releases can also be obtained as tarballs.
Alternatively, you can use Git and download the modules by, e.g., typing inside a freshly created directory
for MOD in common geometry grid localfunctions istl; do
git clone -b releases/2.6 https://gitlab.dune-project.org/core/dune-$MOD.git;
DuMux releases of a certain version are made available as tarballs. It is also possible to download the releases and the current master branch from the git-repository.To download a .tar.gz-file of DuMux, click below to the version-number you are going to install:
Our Git repository offers anonymous read access. You can clone it by
git clone https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git
To clone and directly switch to the branch of the 3.1 release, you can type
git clone -b releases/3.1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git
|DuMux version(s)||compatible DUNE version(s)|
|3.1, 3.2, 3.3-git||2.6*, 2.7, 2.8-git**|
|2.9, 2.10, 2.11, 2.12||2.4, 2.5, 2.6*|
|2.6, 2.7, 2.8||2.3, 2.4|
*Please use the most recent corresponding Git branches releases/2.6 instead of the 2.6.0 tarballs.
**Compatibility with Dune 2.8-git is tested automatically only for DuMux 3.3-git.
DuMux is built like any other DUNE module. If the DUNE core modules and
DuMux are folders in the same directory, you can build everything by
./dune-common/bin/dunecontrol --opts=dumux/cmake.opts all
Releases 2.X used dumux/debug.opts or dumux/optim.opts instead of dumux/cmake.opts. More details on the DUNE build system can be found in the DUNE installation notes.
DUNE and DuMux rely heavily on compiler optimization. The speed difference between running a compiler-optimized versus a non-optimized DuMux executable can easily exceed a factor of 10. Use -DCMAKE_BUILD_TYPE=Release instead of -DCMAKE_BUILD_TYPE=Debug in the cmake.opts for an optimized build.
All numerical models of DuMux are compiled in a build-folder (default: build-cmake) and
tested in the test subfolder.
For example, to run the fully-implicit immiscible two-phase test,
Besides console output, DuMux produces VTK output files that can be visualized by, e.g., Paraview.