Skip to content
Snippets Groups Projects
Commit e7573f43 authored by Praetorius, Simon's avatar Praetorius, Simon
Browse files

Update README.md

parent 59f0c65c
Branches
No related tags found
No related merge requests found
Preparing the Sources
=========================
The project *dune-amdis* requires a modern compiler supporting c++14 standard
and an up-to-date cmake >= 3.1 installed on the system.
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
Installation using dune-docker
------------------------------
```
dunecontrol --current all
```
The easyest way to compile and run the code is to use the prepared docker images.
Therefore, 1. install *docker*, 2. clone the project *dune-docker*, 3. create the
image `dune:git`, 4. run this docker image with interactive shell.
(See also the `README.md` in the *dune-docker* project for details).
The `dunecontrol` script searches for the required
(and suggested) dune modules this library depends on. These include:
- [dune-common](https://gitlab.dune-project.org/core/dune-common)
- [dune-geometry](https://gitlab.dune-project.org/core/dune-geometry)
- [dune-grid](https://gitlab.dune-project.org/core/dune-grid)
- [dune-localfunctions](https://gitlab.dune-project.org/core/dune-localfunctions)
- [dune-typetree](https://gitlab.dune-project.org/staging/dune-typetree)
- [dune-functions](https://gitlab.dune-project.org/staging/dune-functions)
- [dune-istl](https://gitlab.dune-project.org/core/dune-istl)
Prepare for installation
------------------------
(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.
In order to resolve external dependencies, run the script `contrib/ci-setup`. This
will download the latest MTL4 library (and maybe more).
Additionally we require the following libraries to be found:
- [MTL4](https://gitlab.math.tu-dresden.de/spraetor/mtl4) (use this fork to get up-to-date changes)
- [SuiteSparse](http://faculty.cse.tamu.edu/davis/suitesparse.html) (optional)
Compile and link the library and examples
-----------------------------------------
And a compiler that supports the C++14 standard, e.g. g++ >= 4.9 and clang >= 3.6, and cmake >= 3.1.
Simply run
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:
```
dunecontrol --opts=/duneci/opts.gcc --current all
CMAKE_FLAGS="-DMTL_DIR:PATH=[MTL_ROOT]" dunecontrol --current configure
cmake --build build-cmake
```
to build the library and to compile and link the examples from the `src/` directory.
\ No newline at end of file
This compiles the library and all examples in the `src/` directory.
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment