AMDiS
The Adaptive Multi-Dimensional Simulation Toolbox (AMDiS) is implemented as a discretization module on top of the Dune framework.
Installation
We provide a cmake-based configuration and use the dunecontrol
build system.
Simply run
dunecontrol --current all
The dunecontrol
script searches for the required
(and suggested) dune modules this library depends on. These include:
(See the file dune.module
for an up-to-date list of dependencies). The dune modules
can be obtained from https://gitlab.dune-project.org and need to be found in a
subdirectory of DUNE_CONTROL_PATH
. See also https://dune-project.org/doc/installation
for details about the installation of dune modules.
Additionally the following optional libraries can be used:
- MTL4 (use this fork to get up-to-date changes)
- Eigen3 >= 3.3
- SuiteSparse
- libalberta >= 3.0 (For Alberta-Grids)
And a compiler that supports the C++14 standard, e.g. g++ >= 5.0 and clang >= 3.6, and cmake >= 3.1.
By default, the dune-istl
linear-algebra backend is used. To choose one of ISTL
, MTL
, or EIGEN
, you can specify the cmake parameter -DBACKEND=[ISTL,MTL,EIGEN]
.
If your MTL4 installation is not found by default, you have to specify the path,
where the file MTLConfig.cmake
is found, here called MTL_ROOT
. Then simply use
dunecontrol
to configure and cmake
to build:
CMAKE_FLAGS="-DBACKEND=MTL -DMTL_DIR:PATH=[MTL_ROOT]" dunecontrol --current configure
cmake --build build-cmake