diff options
Diffstat (limited to 'src/python/doc/installation.rst')
-rw-r--r-- | src/python/doc/installation.rst | 76 |
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 ===== |