summaryrefslogtreecommitdiff
path: root/src/python/doc/installation.rst
diff options
context:
space:
mode:
Diffstat (limited to 'src/python/doc/installation.rst')
-rw-r--r--src/python/doc/installation.rst76
1 files changed, 31 insertions, 45 deletions
diff --git a/src/python/doc/installation.rst b/src/python/doc/installation.rst
index 1c672ce3..3a853cd9 100644
--- a/src/python/doc/installation.rst
+++ b/src/python/doc/installation.rst
@@ -5,16 +5,22 @@
Installation
############
+Conda
+*****
+The easiest way to install the Python version of GUDHI is using
+`conda <https://gudhi.inria.fr/licensing/>`_.
+
Compiling
*********
The library uses c++11 and requires `Boost <https://www.boost.org/>`_ ≥ 1.56.0,
-`CMake <https://www.cmake.org/>`_ ≥ 3.1 to generate makefiles, and
-`python <https://www.python.org/>`_ to compile the GUDHI Python module.
+`CMake <https://www.cmake.org/>`_ ≥ 3.1 to generate makefiles,
+`NumPy <http://numpy.org>`_ and `Cython <https://www.cython.org/>`_ to compile
+the GUDHI Python module.
It is a multi-platform library and compiles on Linux, Mac OSX and Visual
Studio 2015.
On `Windows <https://wiki.python.org/moin/WindowsCompilers>`_ , only Python
-3.5 and 3.6 are available because of the required Visual Studio version.
+≥ 3.5 are available because of the required Visual Studio version.
On other systems, if you have several Python/python installed, the version 2.X
will be used by default, but you can force it by adding
@@ -86,12 +92,15 @@ You shall have something like:
.. code-block:: none
Python version 2.7.15
- python version 0.26.1
+ Cython version 0.26.1
+ Numpy version 1.14.1
Eigen3 version 3.1.1
- Installed modules are: off_reader;simplex_tree;rips_complex;cubical_complex;periodic_cubical_complex;
- persistence_graphical_tools;reader_utils;witness_complex;strong_witness_complex;alpha_complex;
+ Installed modules are: off_reader;simplex_tree;rips_complex;
+ cubical_complex;periodic_cubical_complex;reader_utils;witness_complex;
+ strong_witness_complex;alpha_complex;
+ Missing modules are: bottleneck_distance;nerve_gic;subsampling;
+ tangential_complex;persistence_graphical_tools;
euclidean_witness_complex;euclidean_strong_witness_complex;
- Missing modules are: bottleneck_distance;nerve_gic;subsampling;tangential_complex;persistence_graphical_tools;
CGAL version 4.7.1000
GMP_LIBRARIES = /usr/lib/x86_64-linux-gnu/libgmp.so
GMPXX_LIBRARIES = /usr/lib/x86_64-linux-gnu/libgmpxx.so
@@ -99,7 +108,7 @@ You shall have something like:
Here, you can see that bottleneck_distance, nerve_gic, subsampling and
tangential_complex are missing because of the CGAL version.
-persistence_graphical_tools is not available as numpy and matplotlib are not
+persistence_graphical_tools is not available as matplotlib is not
available.
Unitary tests cannot be run as pytest is missing.
@@ -113,9 +122,11 @@ A complete configuration would be :
Matplotlib version 2.2.2
Numpy version 1.14.5
Eigen3 version 3.3.4
- Installed modules are: off_reader;simplex_tree;rips_complex;cubical_complex;periodic_cubical_complex;
- persistence_graphical_tools;reader_utils;witness_complex;strong_witness_complex;persistence_graphical_tools;
- bottleneck_distance;nerve_gic;subsampling;tangential_complex;alpha_complex;euclidean_witness_complex;
+ Installed modules are: off_reader;simplex_tree;rips_complex;
+ cubical_complex;periodic_cubical_complex;persistence_graphical_tools;
+ reader_utils;witness_complex;strong_witness_complex;
+ persistence_graphical_tools;bottleneck_distance;nerve_gic;subsampling;
+ tangential_complex;alpha_complex;euclidean_witness_complex;
euclidean_strong_witness_complex;
CGAL header only version 4.11.0
GMP_LIBRARIES = /usr/lib/x86_64-linux-gnu/libgmp.so
@@ -144,12 +155,10 @@ Optional third-party library
CGAL
====
-The :doc:`Alpha complex </alpha_complex_user>`,
-:doc:`Tangential complex </tangential_complex_user>` and
-:doc:`Witness complex </witness_complex_user>` data structures, and
-:doc:`Bottleneck distance </bottleneck_distance_user>` requires CGAL, which is a
-C++ library which provides easy access to efficient and reliable geometric
-algorithms.
+Some GUDHI modules (cf. :doc:`modules list </index>`), and few examples
+require CGAL, a C++ library that provides easy access to efficient and
+reliable geometric algorithms.
+
The procedure to install this library
according to your operating system is detailed
@@ -166,17 +175,15 @@ The following examples requires CGAL version ≥ 4.11.0:
* :download:`euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py>`
* :download:`euclidean_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_witness_complex_diagram_persistence_from_off_file_example.py>`
-Eigen3
-======
+Eigen
+=====
-The :doc:`Alpha complex </alpha_complex_user>`,
-:doc:`Tangential complex </tangential_complex_user>` and
-:doc:`Witness complex </witness_complex_user>` data structures and few
-examples requires `Eigen3 <http://eigen.tuxfamily.org/>`_, a C++ template
+Some GUDHI modules (cf. :doc:`modules list </index>`), and few examples
+require `Eigen <http://eigen.tuxfamily.org/>`_, a C++ template
library for linear algebra: matrices, vectors, numerical solvers, and related
algorithms.
-The following examples require the `Eigen3 <http://eigen.tuxfamily.org/>`_:
+The following examples require `Eigen <http://eigen.tuxfamily.org/>`_ version ≥ 3.1.0:
.. only:: builder_html
@@ -208,27 +215,6 @@ The following examples require the `Matplotlib <http://matplotlib.org>`_:
* :download:`euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py>`
* :download:`euclidean_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_witness_complex_diagram_persistence_from_off_file_example.py>`
-NumPy
-=====
-
-The :doc:`persistence graphical tools </persistence_graphical_tools_user>`
-module requires `NumPy <http://numpy.org>`_, a fundamental package for
-scientific computing with Python.
-
-The following examples require the `NumPy <http://numpy.org>`_:
-
-.. only:: builder_html
-
- * :download:`alpha_complex_diagram_persistence_from_off_file_example.py <../example/alpha_complex_diagram_persistence_from_off_file_example.py>`
- * :download:`gudhi_graphical_tools_example.py <../example/gudhi_graphical_tools_example.py>`
- * :download:`periodic_cubical_complex_barcode_persistence_from_perseus_file_example.py <../example/periodic_cubical_complex_barcode_persistence_from_perseus_file_example.py>`
- * :download:`rips_complex_diagram_persistence_from_off_file_example.py <../example/rips_complex_diagram_persistence_from_off_file_example.py>`
- * :download:`rips_persistence_diagram.py <../example/rips_persistence_diagram.py>`
- * :download:`rips_complex_diagram_persistence_from_distance_matrix_file_example.py <../example/rips_complex_diagram_persistence_from_distance_matrix_file_example.py>`
- * :download:`tangential_complex_plain_homology_from_off_file_example.py <../example/tangential_complex_plain_homology_from_off_file_example.py>`
- * :download:`euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py>`
- * :download:`euclidean_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_witness_complex_diagram_persistence_from_off_file_example.py>`
-
SciPy
=====