[Documentation] Add information about targets and parallel builds

parent 7a33d11b
......@@ -159,6 +159,36 @@ If you installed [Anaconda](https://conda.io/docs/user-guide/install/download.ht
to the `CMAKE_FLAGS` in the call to `dunecontrol` above.
### Richards and Transport builds
DORiE can solve the solute transport equation together with the Richards equation. However, for users that do not require this feature, it is possible to build a standalone solver for the Richards equation by using the make taget `richards`. This will half the compilation time. Notice that the other way around is not possible: transport model always require the solution of the richards equation.
| Target | Dependencies | Detail |
| ---------- | ------------- | ------ |
| `richards` | `richards-impl` | Executable for Richards models
| `transport` | `richards-impl`, `transport-impl` | Executable for solute transport models
| `richards-impl` | | Internal Richards library
| `transport-impl` | | Internal solute transport library
| `dorie` | `richards`, `transport` | Full DORiE compilation
For doing so, dune modules have to be built in more steps. Make sure you have completed the first 5 steps in the step-by-step instructions, and follow the instructions below:
6.1. Building all DUNE dependencies for DORiE:
CMAKE_FLAGS="-DDUNE_PYTHON_VIRTUALENV_SETUP=True -DDUNE_PYTHON_ALLOW_GET_PIP=True" ./dune-common/bin/dunecontrol --module=dune-pdelab,dune-uggrid,dune-randomfield all
If you have installed `dune-testtools`, add it to the list of modules
6.2 Configure DORiE:
CMAKE_FLAGS="-DDUNE_PYTHON_VIRTUALENV_SETUP=True -DDUNE_PYTHON_ALLOW_GET_PIP=True" ./dune-common/bin/dunecontrol --only=dorie configure
6.3 Build a DORiE target, `<dorie-target>`:
CMAKE_FLAGS="-DDUNE_PYTHON_VIRTUALENV_SETUP=True -DDUNE_PYTHON_ALLOW_GET_PIP=True" ./dune-common/bin/dunecontrol --only=dorie make <dorie-target>
### Parallel compilation
DUNE, and hence, DORiE supports compilation of targets in parallel using the environmental variable `MAKE_FLAGS="-j X"`, where `X` is the number of processes. Some care has to be taken when setting this number. We estimate that each process will use about 2GB of memory RAM. If the memory RAM is overflown during compilation, build process may take much longer due to use of swap memory. Hence, make sure take this into account when assigning a higher number of processors.
### Experimental Features
The local operator implementing Richards equation's discretization supports
multiple scheme settings. Setting these via the config file is disabled by
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment