Skip to content
Snippets Groups Projects
README.md 1.99 KiB
Newer Older
Nikolai Andrianov's avatar
Nikolai Andrianov committed
<img src="dumux/doc/logo/dumux_logo_hires_whitebg.png" alt="dumux logo" width="400"/>

# DuMuX

This project contains a self-contained version of [DuMuX][0] with the following additional modules:

Nikolai Andrianov's avatar
Nikolai Andrianov committed
* [Discrete Fracture-Matrix (DFM) oil-water model](./dfm-ow/README.md)
* [DFM oil-water model where water is represented by two components](./dfm-ow3c/README.md)
Nikolai Andrianov's avatar
Nikolai Andrianov committed
* [DFM oil-water model where water is represented by $`\displaystyle N`$ components](./dfm-ownc/README.md)
Nikolai Andrianov's avatar
Nikolai Andrianov committed
* [DFM single-phase model](./dfm-1p/README.md)
* [DFM single-phase model for permeability upscaling](./dfm-1p-upscaling/README.md)
Nikolai Andrianov's avatar
Nikolai Andrianov committed

# Installation

1. Prerequisites

Recent versions of the following software packages are required:
Nikolai Andrianov's avatar
Nikolai Andrianov committed

  * `gcc`
  * `cmake`
  * `pkg-config`
  * `gfortran` 
Nikolai Andrianov's avatar
Nikolai Andrianov committed
  * `libsuitesparse-dev` and `libsuitesparse-doc`
Nikolai Andrianov's avatar
Nikolai Andrianov committed
  
All of the above packages can be installed with `sudo apt install <package name>`.

Nikolai Andrianov's avatar
Nikolai Andrianov committed
The [dfn-ownc](./dfm-ownc/README.md) model uses a modified version of the geochemical reaction module [PhreeqcRM](https://www.usgs.gov/software/phreeqc-version-3), which can be downloaded [here](./PHREEQCRM.zip). The modified PhreeqcRM version contains several functions to access the the data, which is not available through the standard PhreeqcRM interface. The installation instructions are the same as for the standard version.


2. Clone the project  
Nikolai Andrianov's avatar
Nikolai Andrianov committed

```bash
git clone https://git.iws.uni-stuttgart.de/andrian/dumux.git
```

3. Configure the release version of the code
Nikolai Andrianov's avatar
Nikolai Andrianov committed

    ```bash  
    cd dumux/
    ./dune-common/bin/dunecontrol --opts=cmake_O3.opts --builddir=build-cmake-O3 all  
    ```  
For a debug version, replace `cmake_O3.opts` with `debug.opts` and change the build directory accordingly.

Nikolai Andrianov's avatar
Nikolai Andrianov committed
If PhreeqcRM is not installed on your machine,  remove the linker option `-lphreeqcrm` from the corresponding `.opts` file.
4. Compile the DFM oil-water model
Nikolai Andrianov's avatar
Nikolai Andrianov committed

    ```bash
    cd dfm-ow/build-cmake-O3/src/
    make dfm-ow
    ```   
(for other models, replace `dfm-ow` with either `dfm-ow3c` or `dfm-ownc`).
Nikolai Andrianov's avatar
Nikolai Andrianov committed

[0]: https://dumux.org