Installation¶
In order to install and use Dune-MMesh you need a recent C++ compiler (at least C++17 compatible), Python (3.7 or later), CMake (3.13 or later) and Boost (1.66 or later).
There are two ways of installing Dune-MMesh.
Using Pip¶
The easiest way to install Dune-MMesh is using pip and the package uploaded to PyPI.
Activate a virtual environment (strongly recommended).
python3 -m venv dune-env
source dune-env/bin/activate
Download and build Dune-MMesh and its dependencies.
pip install dune-mmesh
Note that this takes some time in order to compile all dependent Dune modules.
From Source¶
You can install Dune-MMesh from source to get full access to the source code. It also enables git support if you want to contribute.
1. Clone the Dune modules dune-common, dune-geometry, dune-grid, dune-istl, dune-localfunctions, dune-alugrid dune-fem and dune-mmesh.
git clone https://gitlab.dune-project.org/core/dune-common.git
git clone https://gitlab.dune-project.org/core/dune-geometry.git
git clone https://gitlab.dune-project.org/core/dune-grid.git
git clone https://gitlab.dune-project.org/core/dune-istl.git
git clone https://gitlab.dune-project.org/core/dune-localfunctions.git
git clone https://gitlab.dune-project.org/extensions/dune-alugrid.git
git clone https://gitlab.dune-project.org/dune-fem/dune-fem.git
git clone https://gitlab.dune-project.org/samuel.burbulla/dune-mmesh.git
In a virtual environment (strongly recommended, see above) build the modules and install the python bindings.
./dune-common/bin/dunecontrol --opts=dune-mmesh/cmake/config.opts all
Activate the DUNE internal virtual environment.
source ./dune-common/build-cmake/dune-env/bin/activate
Remark that a dune-py module will be generated automatically that is necessary to perform the just-in-time compilation of DUNE python modules.