Quickstart¶
Dependencies¶
Htool-DDM’s Python interface is based on pybind11 and Htool-DDM C++ header-only library. It requires
C++ compiler with standard 14,
Python 3,
MPI implementation for distributed parallelism,
BLAS, to perform algebraic dense operations,
pybind11 to define the python interface,
cmake to build the python interface,
HPDDM and its dependencies (BLAS, LAPACK) to use iterative solvers and DDM preconditioners,
Note
Htool-DDM C++ header-only library, HPDDM and pybind11 are git submodules of Htool-DDM python interface. Thus, users do not need to install them.
It also requires the following python packages
And optionnally,
matplotlib for visualisation.
Compilation¶
First, you need to clone this repository with its submodules:
git clone --recurse-submodules https://github.com/htool-ddm/htool_python.git && cd htool_python
In the folder of this repository, do:
pip install .
In case you need to pass cmake variables, you can use
CMAKE_ARGS="-DCMAKE_VAR=VALUE1 -DCMAKE_VAR_2=VALUE2" pip install .