summaryrefslogtreecommitdiff
path: root/src/cython
diff options
context:
space:
mode:
authorVincent Rouvreau <VincentRouvreau@users.noreply.github.com>2019-06-06 11:16:38 +0200
committerGitHub <noreply@github.com>2019-06-06 11:16:38 +0200
commitb858862d63ffcdcaed0e0a4913f5d9d42bc0dcbb (patch)
tree9f09a820a819fe2886d7050c71cf41a4aa35a3d5 /src/cython
parentb9ddc3b6f1501fc15e84a8bea5927adae6623e5a (diff)
parentef5fcf9e54e0c14f7c2e7eebb5c24fb91018606a (diff)
Merge pull request #66 from VincentRouvreau/small_fixes
Small fixes
Diffstat (limited to 'src/cython')
-rw-r--r--src/cython/cython/simplex_tree.pyx8
-rw-r--r--src/cython/doc/alpha_complex_sum.inc40
-rw-r--r--src/cython/doc/bottleneck_distance_sum.inc27
-rwxr-xr-xsrc/cython/doc/conf.py2
-rw-r--r--src/cython/doc/cubical_complex_sum.inc27
-rw-r--r--src/cython/doc/fileformats.rst29
-rw-r--r--src/cython/doc/index.rst79
-rw-r--r--src/cython/doc/nerve_gic_complex_sum.inc16
-rw-r--r--src/cython/doc/nerve_gic_complex_sum.rst15
-rw-r--r--src/cython/doc/nerve_gic_complex_user.rst5
-rw-r--r--src/cython/doc/persistence_graphical_tools_sum.inc24
-rw-r--r--src/cython/doc/persistent_cohomology_sum.inc51
-rw-r--r--src/cython/doc/rips_complex_sum.inc31
-rw-r--r--src/cython/doc/simplex_tree_sum.inc25
-rw-r--r--src/cython/doc/tangential_complex_sum.inc27
-rw-r--r--src/cython/doc/witness_complex_sum.inc34
-rw-r--r--src/cython/include/Simplex_tree_interface.h22
17 files changed, 236 insertions, 226 deletions
diff --git a/src/cython/cython/simplex_tree.pyx b/src/cython/cython/simplex_tree.pyx
index 0ab97f80..ea99c940 100644
--- a/src/cython/cython/simplex_tree.pyx
+++ b/src/cython/cython/simplex_tree.pyx
@@ -405,7 +405,8 @@ cdef class SimplexTree:
"""This function ensures that each simplex has a higher filtration
value than its faces by increasing the filtration values.
- :returns: The filtration modification information.
+ :returns: True if any filtration value was modified,
+ False if the filtration was already non-decreasing.
:rtype: bool
@@ -513,10 +514,9 @@ cdef class SimplexTree:
return intervals_result
def persistence_pairs(self):
- """This function returns the persistence pairs of the simplicial
- complex.
+ """This function returns a list of persistence birth and death simplices pairs.
- :returns: The persistence intervals.
+ :returns: A list of persistence simplices intervals.
:rtype: list of pair of list of int
:note: persistence_pairs function requires
diff --git a/src/cython/doc/alpha_complex_sum.inc b/src/cython/doc/alpha_complex_sum.inc
index 1680a712..806988bb 100644
--- a/src/cython/doc/alpha_complex_sum.inc
+++ b/src/cython/doc/alpha_complex_sum.inc
@@ -1,22 +1,20 @@
-================================================================= =================================== ===================================
-:Author: Vincent Rouvreau :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-:Requires: CGAL :math:`\geq` 4.7.0 Eigen3
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| .. figure:: | Alpha_complex is a simplicial complex constructed from the finite |
-| ../../doc/Alpha_complex/alpha_complex_representation.png | cells of a Delaunay Triangulation. |
-| :alt: Alpha complex representation | |
-| :figclass: align-center | The filtration value of each simplex is computed as the square of the |
-| | circumradius of the simplex if the circumsphere is empty (the simplex |
-| Alpha complex representation | is then said to be Gabriel), and as the minimum of the filtration |
-| | values of the codimension 1 cofaces that make it not Gabriel |
-| | otherwise. All simplices that have a filtration value strictly |
-| | greater than a given alpha squared value are not inserted into the |
-| | complex. |
-| | |
-| | This package requires having CGAL version 4.7 or higher (4.8.1 is |
-| | advised for better performance). |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| :doc:`alpha_complex_user` | :doc:`alpha_complex_ref` |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
+ +----------------------------------------------------------------+------------------------------------------------------------------------+-----------------------------------------------+
+ | .. figure:: | Alpha complex is a simplicial complex constructed from the finite | :Author: Vincent Rouvreau |
+ | ../../doc/Alpha_complex/alpha_complex_representation.png | cells of a Delaunay Triangulation. | |
+ | :alt: Alpha complex representation | | :Introduced in: GUDHI 2.0.0 |
+ | :figclass: align-center | The filtration value of each simplex is computed as the square of the | |
+ | | circumradius of the simplex if the circumsphere is empty (the simplex | :Copyright: GPL v3 |
+ | | is then said to be Gabriel), and as the minimum of the filtration | |
+ | | values of the codimension 1 cofaces that make it not Gabriel | :Requires: Eigen3 and CGAL :math:`\geq` 4.7.0 |
+ | | otherwise. All simplices that have a filtration value strictly | |
+ | | greater than a given alpha squared value are not inserted into the | |
+ | | complex. | |
+ | | | |
+ | | This package requires having CGAL version 4.7 or higher (4.8.1 is | |
+ | | advised for better performance). | |
+ +----------------------------------------------------------------+------------------------------------------------------------------------+-----------------------------------------------+
+ | * :doc:`alpha_complex_user` | * :doc:`alpha_complex_ref` |
+ +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/bottleneck_distance_sum.inc b/src/cython/doc/bottleneck_distance_sum.inc
index 030fad9e..41b9c5a3 100644
--- a/src/cython/doc/bottleneck_distance_sum.inc
+++ b/src/cython/doc/bottleneck_distance_sum.inc
@@ -1,15 +1,14 @@
-================================================================= =================================== ===================================
-:Author: François Godi :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-:Requires: CGAL :math:`\geq` 4.8.0
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+-----------------------------------------------------------------+----------------------------------------------------------------------+
-| .. figure:: | Bottleneck distance measures the similarity between two persistence |
-| ../../doc/Bottleneck_distance/perturb_pd.png | diagrams. It's the shortest distance b for which there exists a |
-| :figclass: align-center | perfect matching between the points of the two diagrams (+ all the |
-| | diagonal points) such that any couple of matched points are at |
-| Bottleneck distance is the length of | distance at most b. |
-| the longest edge | |
-+-----------------------------------------------------------------+----------------------------------------------------------------------+
-| :doc:`bottleneck_distance_user` | |
-+-----------------------------------------------------------------+----------------------------------------------------------------------+
+ +-----------------------------------------------------------------+----------------------------------------------------------------------+-----------------------------------------------+
+ | .. figure:: | Bottleneck distance measures the similarity between two persistence | :Author: François Godi |
+ | ../../doc/Bottleneck_distance/perturb_pd.png | diagrams. It's the shortest distance b for which there exists a | |
+ | :figclass: align-center | perfect matching between the points of the two diagrams (+ all the | :Introduced in: GUDHI 2.0.0 |
+ | | diagonal points) such that any couple of matched points are at | |
+ | Bottleneck distance is the length of | distance at most b. | :Copyright: GPL v3 |
+ | the longest edge | | |
+ | | | :Requires: CGAL :math:`\geq` 4.8.0 |
+ +-----------------------------------------------------------------+----------------------------------------------------------------------+-----------------------------------------------+
+ | * :doc:`bottleneck_distance_user` | |
+ +-----------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/conf.py b/src/cython/doc/conf.py
index 4a54d4fd..ce08f679 100755
--- a/src/cython/doc/conf.py
+++ b/src/cython/doc/conf.py
@@ -125,7 +125,7 @@ html_theme_options = {
"sidebarbgcolor": "#A1ADCD",
"sidebartextcolor": "black",
"sidebarlinkcolor": "#334D5C",
- "body_max_width": "1200px",
+ "body_max_width": "100%",
}
# Add any paths that contain custom themes here, relative to this directory.
diff --git a/src/cython/doc/cubical_complex_sum.inc b/src/cython/doc/cubical_complex_sum.inc
index 280ad0e0..6dcf8e48 100644
--- a/src/cython/doc/cubical_complex_sum.inc
+++ b/src/cython/doc/cubical_complex_sum.inc
@@ -1,15 +1,14 @@
-================================================================= =================================== ===================================
-:Author: Pawel Dlotko :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+--------------------------------------------------------------------------+----------------------------------------------------------------------+
-| .. figure:: | The cubical complex is an example of a structured complex useful in |
-| ../../doc/Bitmap_cubical_complex/Cubical_complex_representation.png | computational mathematics (specially rigorous numerics) and image |
-| :alt: Cubical complex representation | analysis. |
-| :figclass: align-center | |
-| | |
-| Cubical complex representation | |
-+--------------------------------------------------------------------------+----------------------------------------------------------------------+
-| :doc:`cubical_complex_user` | * :doc:`cubical_complex_ref` |
-| | * :doc:`periodic_cubical_complex_ref` |
-+--------------------------------------------------------------------------+----------------------------------------------------------------------+
+ +--------------------------------------------------------------------------+----------------------------------------------------------------------+-----------------------------+
+ | .. figure:: | The cubical complex is an example of a structured complex useful in | :Author: Pawel Dlotko |
+ | ../../doc/Bitmap_cubical_complex/Cubical_complex_representation.png | computational mathematics (specially rigorous numerics) and image | |
+ | :alt: Cubical complex representation | analysis. | :Introduced in: GUDHI 2.0.0 |
+ | :figclass: align-center | | |
+ | | | :Copyright: GPL v3 |
+ | | | |
+ +--------------------------------------------------------------------------+----------------------------------------------------------------------+-----------------------------+
+ | * :doc:`cubical_complex_user` | * :doc:`cubical_complex_ref` |
+ | | * :doc:`periodic_cubical_complex_ref` |
+ +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/fileformats.rst b/src/cython/doc/fileformats.rst
index e205cc8b..345dfdba 100644
--- a/src/cython/doc/fileformats.rst
+++ b/src/cython/doc/fileformats.rst
@@ -5,6 +5,35 @@
File formats
############
+OFF file format
+***************
+
+OFF files must be conform to format described here:
+http://www.geomview.org/docs/html/OFF.html
+
+OFF files are mainly used as point cloud inputs. Here is an example of 7 points
+in a 3-dimensional space. As edges and faces are not used for point set, there
+is no need to specify them (just set their numbers to 0):
+
+.. literalinclude:: ../../data/points/alphacomplexdoc.off
+
+.. centered:: ../../points/alphacomplexdoc.off
+
+For dimensions bigger than 3, the dimension can be set like here::
+
+ # Dimension is no more 3
+ nOFF
+ # dimension 4 - 7 vertices - 0 face - 0 edge
+ 4 7 0 0
+ # Point set:
+ 1.0 1.0 0.0 0.0
+ 7.0 0.0 0.0 0.0
+ 4.0 6.0 0.0 0.0
+ 9.0 6.0 0.0 0.0
+ 0.0 14.0 0.0 0.0
+ 2.0 19.0 0.0 0.0
+ 9.0 17.0 0.0 0.0
+
Persistence Diagram
*******************
diff --git a/src/cython/doc/index.rst b/src/cython/doc/index.rst
index 15cbe267..e379bc23 100644
--- a/src/cython/doc/index.rst
+++ b/src/cython/doc/index.rst
@@ -6,80 +6,73 @@ GUDHI Python module documentation
:alt: Gudhi banner
:figclass: align-center
-Introduction
-************
-
-The Python interface for the Gudhi library (Geometry Understanding in Higher
-Dimensions) is a generic open source
-`Python module <http://gudhi.gforge.inria.fr/python/latest/>`_, for
-Computational Topology and Topological Data Analysis
-(`TDA <https://en.wikipedia.org/wiki/Topological_data_analysis>`_).
-The GUDHI library intends to help the development of new algorithmic solutions
-in TDA and their transfer to applications. It provides robust, efficient,
-flexible and easy to use implementations of state-of-the-art algorithms and
-data structures.
-
-The current release of the GUDHI library includes:
+Complexes
+*********
-* Data structures to represent, construct and manipulate simplicial complexes.
-* Simplification of simplicial complexes by edge contraction.
-* Algorithms to compute persistent homology and bottleneck distance.
+Cubical complexes
+=================
-We refer to :cite:`gudhilibrary_ICMS14` for a detailed description of the
-design of the library.
+.. include:: cubical_complex_sum.inc
-Data structures
-***************
+Simplicial complexes
+====================
Alpha complex
-=============
+-------------
.. include:: alpha_complex_sum.inc
-Cover complexes
-===============
+Rips complex
+-------------
+
+.. include:: rips_complex_sum.inc
-.. include:: nerve_gic_complex_sum.rst
+Witness complex
+---------------
-Cubical complex
+.. include:: witness_complex_sum.inc
+
+Cover complexes
===============
-.. include:: cubical_complex_sum.inc
+.. include:: nerve_gic_complex_sum.inc
-Rips complex
-============
+Data structures and basic operations
+************************************
-.. include:: rips_complex_sum.inc
+Data structures
+===============
Simplex tree
-============
+------------
.. include:: simplex_tree_sum.inc
+Topological descriptors computation
+***********************************
+
+Persistence cohomology
+======================
+
+.. include:: persistent_cohomology_sum.inc
+
+Manifold reconstruction
+***********************
+
Tangential complex
==================
.. include:: tangential_complex_sum.inc
-Witness complex
-===============
-
-.. include:: witness_complex_sum.inc
-
-Toolbox
-*******
+Topological descriptors tools
+*****************************
Bottleneck distance
===================
.. include:: bottleneck_distance_sum.inc
-Persistence cohomology
-======================
-
-.. include:: persistent_cohomology_sum.inc
-
Persistence graphical tools
===========================
diff --git a/src/cython/doc/nerve_gic_complex_sum.inc b/src/cython/doc/nerve_gic_complex_sum.inc
new file mode 100644
index 00000000..0e606fe1
--- /dev/null
+++ b/src/cython/doc/nerve_gic_complex_sum.inc
@@ -0,0 +1,16 @@
+.. table::
+ :widths: 30 50 20
+
+ +----------------------------------------------------------------+------------------------------------------------------------------------+------------------------------------+
+ | .. figure:: | Nerves and Graph Induced Complexes are cover complexes, i.e. | :Author: Mathieu Carrière |
+ | ../../doc/Nerve_GIC/gicvisu.jpg | simplicial complexes that provably contain topological information | |
+ | :alt: Graph Induced Complex of a point cloud. | about the input data. They can be computed with a cover of the data, | :Introduced in: GUDHI 2.3.0 |
+ | :figclass: align-center | that comes i.e. from the preimage of a family of intervals covering | |
+ | | the image of a scalar-valued function defined on the data. | :Copyright: GPL v3 |
+ | | | |
+ | | | :Requires: CGAL :math:`\geq` 4.8.1 |
+ | | | |
+ | | | |
+ +----------------------------------------------------------------+------------------------------------------------------------------------+------------------------------------+
+ | * :doc:`nerve_gic_complex_user` | * :doc:`nerve_gic_complex_ref` |
+ +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/nerve_gic_complex_sum.rst b/src/cython/doc/nerve_gic_complex_sum.rst
deleted file mode 100644
index 523c119f..00000000
--- a/src/cython/doc/nerve_gic_complex_sum.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-================================================================= =================================== ===================================
-:Author: Mathieu Carrière :Introduced in: GUDHI 2.3.0 :Copyright: GPL v3
-:Requires: CGAL :math:`\geq` 4.8.1
-================================================================= =================================== ===================================
-
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| .. figure:: | Nerves and Graph Induced Complexes are cover complexes, i.e. |
-| ../../doc/Nerve_GIC/gicvisu.jpg | simplicial complexes that provably contain topological information |
-| :alt: Graph Induced Complex of a point cloud. | about the input data. They can be computed with a cover of the data, |
-| :figclass: align-center | that comes i.e. from the preimage of a family of intervals covering |
-| | the image of a scalar-valued function defined on the data. |
-| Graph Induced Complex of a point cloud. | |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| :doc:`nerve_gic_complex_user` | :doc:`nerve_gic_complex_ref` |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
diff --git a/src/cython/doc/nerve_gic_complex_user.rst b/src/cython/doc/nerve_gic_complex_user.rst
index 44f30e1a..9101f45d 100644
--- a/src/cython/doc/nerve_gic_complex_user.rst
+++ b/src/cython/doc/nerve_gic_complex_user.rst
@@ -7,14 +7,13 @@ Cover complexes user manual
Definition
----------
-.. include:: nerve_gic_complex_sum.rst
+.. include:: nerve_gic_complex_sum.inc
Visualizations of the simplicial complexes can be done with either
neato (from `graphviz <http://www.graphviz.org/>`_),
`geomview <http://www.geomview.org/>`_,
`KeplerMapper <https://github.com/MLWave/kepler-mapper>`_.
-Input point clouds are assumed to be
-`OFF files <http://www.geomview.org/docs/html/OFF.html>`_.
+Input point clouds are assumed to be OFF files (cf. :doc:`fileformats`).
Covers
------
diff --git a/src/cython/doc/persistence_graphical_tools_sum.inc b/src/cython/doc/persistence_graphical_tools_sum.inc
index 5577cf99..b412de56 100644
--- a/src/cython/doc/persistence_graphical_tools_sum.inc
+++ b/src/cython/doc/persistence_graphical_tools_sum.inc
@@ -1,12 +1,14 @@
-================================================================= =================================== ===================================
-:Author: Vincent Rouvreau :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-:Requires: matplotlib numpy scipy
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+-----------------------------------------------------------------+-----------------------------------------------------------------------+
-| .. figure:: | These graphical tools comes on top of persistence results and allows |
-| img/graphical_tools_representation.png | the user to build easily persistence barcode, diagram or density. |
-| | |
-+-----------------------------------------------------------------+-----------------------------------------------------------------------+
-| :doc:`persistence_graphical_tools_user` | :doc:`persistence_graphical_tools_ref` |
-+-----------------------------------------------------------------+-----------------------------------------------------------------------+
+ +-----------------------------------------------------------------+-----------------------------------------------------------------------+-----------------------------------------------+
+ | .. figure:: | These graphical tools comes on top of persistence results and allows | :Author: Vincent Rouvreau |
+ | img/graphical_tools_representation.png | the user to build easily persistence barcode, diagram or density. | |
+ | | | :Introduced in: GUDHI 2.0.0 |
+ | | | |
+ | | | :Copyright: GPL v3 |
+ | | | |
+ | | | :Requires: matplotlib, numpy and scipy |
+ +-----------------------------------------------------------------+-----------------------------------------------------------------------+-----------------------------------------------+
+ | * :doc:`persistence_graphical_tools_user` | * :doc:`persistence_graphical_tools_ref` |
+ +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/persistent_cohomology_sum.inc b/src/cython/doc/persistent_cohomology_sum.inc
index a26df1dc..20ca073c 100644
--- a/src/cython/doc/persistent_cohomology_sum.inc
+++ b/src/cython/doc/persistent_cohomology_sum.inc
@@ -1,27 +1,26 @@
-================================================================= =================================== ===================================
-:Author: Clément Maria :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+-----------------------------------------------------------------+-----------------------------------------------------------------------+
-| .. figure:: | The theory of homology consists in attaching to a topological space |
-| ../../doc/Persistent_cohomology/3DTorus_poch.png | a sequence of (homology) groups, capturing global topological |
-| :figclass: align-center | features like connected components, holes, cavities, etc. Persistent |
-| | homology studies the evolution -- birth, life and death -- of these |
-| Rips Persistent Cohomology on a 3D | features when the topological space is changing. Consequently, the |
-| Torus | theory is essentially composed of three elements: topological spaces, |
-| | their homology groups and an evolution scheme. |
-| | |
-| | Computation of persistent cohomology using the algorithm of |
-| | :cite:`DBLP:journals/dcg/SilvaMV11` and |
-| | :cite:`DBLP:journals/corr/abs-1208-5018` and the Compressed |
-| | Annotation Matrix implementation of |
-| | :cite:`DBLP:conf/esa/BoissonnatDM13`. |
-| | |
-+-----------------------------------------------------------------+-----------------------------------------------------------------------+
-| :doc:`persistent_cohomology_user` | Please refer to each data structure that contains persistence |
-| | feature for reference: |
-| | |
-| | * :doc:`simplex_tree_ref` |
-| | * :doc:`cubical_complex_ref` |
-| | * :doc:`periodic_cubical_complex_ref` |
-+-----------------------------------------------------------------+-----------------------------------------------------------------------+
+ +-----------------------------------------------------------------+-----------------------------------------------------------------------+-----------------------------------------------+
+ | .. figure:: | The theory of homology consists in attaching to a topological space | :Author: Clément Maria |
+ | ../../doc/Persistent_cohomology/3DTorus_poch.png | a sequence of (homology) groups, capturing global topological | |
+ | :figclass: align-center | features like connected components, holes, cavities, etc. Persistent | :Introduced in: GUDHI 2.0.0 |
+ | | homology studies the evolution -- birth, life and death -- of these | |
+ | Rips Persistent Cohomology on a 3D | features when the topological space is changing. Consequently, the | :Copyright: GPL v3 |
+ | Torus | theory is essentially composed of three elements: topological spaces, | |
+ | | their homology groups and an evolution scheme. | |
+ | | | |
+ | | Computation of persistent cohomology using the algorithm of | |
+ | | :cite:`DBLP:journals/dcg/SilvaMV11` and | |
+ | | :cite:`DBLP:journals/corr/abs-1208-5018` and the Compressed | |
+ | | Annotation Matrix implementation of | |
+ | | :cite:`DBLP:conf/esa/BoissonnatDM13`. | |
+ | | | |
+ +-----------------------------------------------------------------+-----------------------------------------------------------------------+-----------------------------------------------+
+ | * :doc:`persistent_cohomology_user` | Please refer to each data structure that contains persistence |
+ | | feature for reference: |
+ | | |
+ | | * :doc:`simplex_tree_ref` |
+ | | * :doc:`cubical_complex_ref` |
+ | | * :doc:`periodic_cubical_complex_ref` |
+ +-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/rips_complex_sum.inc b/src/cython/doc/rips_complex_sum.inc
index ea26769a..e8e505e2 100644
--- a/src/cython/doc/rips_complex_sum.inc
+++ b/src/cython/doc/rips_complex_sum.inc
@@ -1,17 +1,16 @@
-===================================================================== =========================== ===================================
-:Author: Clément Maria, Pawel Dlotko, Vincent Rouvreau, Marc Glisse :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-===================================================================== =========================== ===================================
+.. table::
+ :widths: 30 50 20
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| .. figure:: | Rips complex is a simplicial complex constructed from a one skeleton |
-| ../../doc/Rips_complex/rips_complex_representation.png | graph. |
-| :figclass: align-center | |
-| | The filtration value of each edge is computed from a user-given |
-| Rips complex representation | distance function and is inserted until a user-given threshold |
-| | value. |
-| | |
-| | This complex can be built from a point cloud and a distance function, |
-| | or from a distance matrix. |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| :doc:`rips_complex_user` | :doc:`rips_complex_ref` |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
+ +----------------------------------------------------------------+------------------------------------------------------------------------+----------------------------------------------------------------------+
+ | .. figure:: | Rips complex is a simplicial complex constructed from a one skeleton | :Authors: Clément Maria, Pawel Dlotko, Vincent Rouvreau, Marc Glisse |
+ | ../../doc/Rips_complex/rips_complex_representation.png | graph. | |
+ | :figclass: align-center | | :Introduced in: GUDHI 2.0.0 |
+ | | The filtration value of each edge is computed from a user-given | |
+ | | distance function and is inserted until a user-given threshold | :Copyright: GPL v3 |
+ | | value. | |
+ | | | |
+ | | This complex can be built from a point cloud and a distance function, | |
+ | | or from a distance matrix. | |
+ +----------------------------------------------------------------+------------------------------------------------------------------------+----------------------------------------------------------------------+
+ | * :doc:`rips_complex_user` | * :doc:`rips_complex_ref` |
+ +----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/simplex_tree_sum.inc b/src/cython/doc/simplex_tree_sum.inc
index fb0e54c1..086c69d5 100644
--- a/src/cython/doc/simplex_tree_sum.inc
+++ b/src/cython/doc/simplex_tree_sum.inc
@@ -1,14 +1,13 @@
-================================================================= =================================== ===================================
-:Author: Clément Maria :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| .. figure:: | The simplex tree is an efficient and flexible data structure for |
-| ../../doc/Simplex_tree/Simplex_tree_representation.png | representing general (filtered) simplicial complexes. |
-| :alt: Simplex tree representation | |
-| :figclass: align-center | The data structure is described in |
-| | :cite:`boissonnatmariasimplextreealgorithmica` |
-| Simplex tree representation | |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| :doc:`simplex_tree_user` | :doc:`simplex_tree_ref` |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
+ +----------------------------------------------------------------+------------------------------------------------------------------------+-----------------------------+
+ | .. figure:: | The simplex tree is an efficient and flexible data structure for | :Author: Clément Maria |
+ | ../../doc/Simplex_tree/Simplex_tree_representation.png | representing general (filtered) simplicial complexes. | |
+ | :alt: Simplex tree representation | | :Introduced in: GUDHI 2.0.0 |
+ | :figclass: align-center | The data structure is described in | |
+ | | :cite:`boissonnatmariasimplextreealgorithmica` | :Copyright: GPL v3 |
+ | | | |
+ +----------------------------------------------------------------+------------------------------------------------------------------------+-----------------------------+
+ | * :doc:`simplex_tree_user` | * :doc:`simplex_tree_ref` |
+ +----------------------------------------------------------------+------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/tangential_complex_sum.inc b/src/cython/doc/tangential_complex_sum.inc
index 72b4d7ba..0f03ffb3 100644
--- a/src/cython/doc/tangential_complex_sum.inc
+++ b/src/cython/doc/tangential_complex_sum.inc
@@ -1,15 +1,14 @@
-================================================================= =================================== ===================================
-:Author: Clément Jamin :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-:Requires: CGAL :math:`\geq` 4.8.0 Eigen3
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| .. figure:: | A Tangential Delaunay complex is a simplicial complex designed to |
-| ../../doc/Tangential_complex/tc_examples.png | reconstruct a :math:`k`-dimensional manifold embedded in :math:`d`- |
-| :figclass: align-center | dimensional Euclidean space. The input is a point sample coming from |
-| | an unknown manifold. The running time depends only linearly on the |
-| Tangential complex representation | extrinsic dimension :math:`d` and exponentially on the intrinsic |
-| | dimension :math:`k`. |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
-| :doc:`tangential_complex_user` | :doc:`tangential_complex_ref` |
-+----------------------------------------------------------------+------------------------------------------------------------------------+
+ +----------------------------------------------------------------+------------------------------------------------------------------------+------------------------------------+
+ | .. figure:: | A Tangential Delaunay complex is a simplicial complex designed to | :Author: Clément Jamin |
+ | ../../doc/Tangential_complex/tc_examples.png | reconstruct a :math:`k`-dimensional manifold embedded in :math:`d`- | |
+ | :figclass: align-center | dimensional Euclidean space. The input is a point sample coming from | :Introduced in: GUDHI 2.0.0 |
+ | | an unknown manifold. The running time depends only linearly on the | |
+ | | extrinsic dimension :math:`d` and exponentially on the intrinsic | :Copyright: GPL v3 |
+ | | dimension :math:`k`. | |
+ | | | :Requires: CGAL :math:`\geq` 4.8.0 |
+ +----------------------------------------------------------------+------------------------------------------------------------------------+------------------------------------+
+ | * :doc:`tangential_complex_user` | * :doc:`tangential_complex_ref` |
+ +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/doc/witness_complex_sum.inc b/src/cython/doc/witness_complex_sum.inc
index a8a126a0..49577745 100644
--- a/src/cython/doc/witness_complex_sum.inc
+++ b/src/cython/doc/witness_complex_sum.inc
@@ -1,19 +1,17 @@
-================================================================= =================================== ===================================
-:Author: Siargey Kachanovich :Introduced in: GUDHI 2.0.0 :Copyright: GPL v3
-:Euclidean version requires: CGAL :math:`\geq` 4.6.0 Eigen3
-================================================================= =================================== ===================================
+.. table::
+ :widths: 30 50 20
-+-------------------------------------------------------------------+----------------------------------------------------------------------+
-| .. figure:: | Witness complex :math:`Wit(W,L)` is a simplicial complex defined on |
-| ../../doc/Witness_complex/Witness_complex_representation.png | two sets of points in :math:`\mathbb{R}^D`. |
-| :alt: Witness complex representation | |
-| :figclass: align-center | The data structure is described in |
-| | :cite:`boissonnatmariasimplextreealgorithmica`. |
-| | |
-| Witness complex representation | |
-+-------------------------------------------------------------------+----------------------------------------------------------------------+
-| :doc:`witness_complex_user` | * :doc:`witness_complex_ref` |
-| | * :doc:`strong_witness_complex_ref` |
-| | * :doc:`euclidean_witness_complex_ref` |
-| | * :doc:`euclidean_strong_witness_complex_ref` |
-+-------------------------------------------------------------------+----------------------------------------------------------------------+
+ +-------------------------------------------------------------------+----------------------------------------------------------------------+-----------------------------------------------------------------------------+
+ | .. figure:: | Witness complex :math:`Wit(W,L)` is a simplicial complex defined on | :Author: Siargey Kachanovich |
+ | ../../doc/Witness_complex/Witness_complex_representation.png | two sets of points in :math:`\mathbb{R}^D`. | |
+ | :alt: Witness complex representation | | :Introduced in: GUDHI 2.0.0 |
+ | :figclass: align-center | The data structure is described in | |
+ | | :cite:`boissonnatmariasimplextreealgorithmica`. | :Copyright: GPL v3 |
+ | | | |
+ | | | :Requires: Eigen3 and CGAL :math:`\geq` 4.6.0 for Euclidean versions only |
+ +-------------------------------------------------------------------+----------------------------------------------------------------------+-----------------------------------------------------------------------------+
+ | * :doc:`witness_complex_user` | * :doc:`witness_complex_ref` |
+ | | * :doc:`strong_witness_complex_ref` |
+ | | * :doc:`euclidean_witness_complex_ref` |
+ | | * :doc:`euclidean_strong_witness_complex_ref` |
+ +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
diff --git a/src/cython/include/Simplex_tree_interface.h b/src/cython/include/Simplex_tree_interface.h
index 3481eeff..ca98517d 100644
--- a/src/cython/include/Simplex_tree_interface.h
+++ b/src/cython/include/Simplex_tree_interface.h
@@ -45,7 +45,7 @@ class Simplex_tree_interface : public Simplex_tree<SimplexTreeOptions> {
using Simplex_handle = typename Base::Simplex_handle;
using Insertion_result = typename std::pair<Simplex_handle, bool>;
using Simplex = std::vector<Vertex_handle>;
- using Complex = std::vector<std::pair<Simplex, Filtration_value>>;
+ using Filtered_simplices = std::vector<std::pair<Simplex, Filtration_value>>;
public:
bool find_simplex(const Simplex& vh) {
@@ -94,9 +94,9 @@ class Simplex_tree_interface : public Simplex_tree<SimplexTreeOptions> {
Base::initialize_filtration();
}
- Complex get_filtration() {
+ Filtered_simplices get_filtration() {
Base::initialize_filtration();
- Complex filtrations;
+ Filtered_simplices filtrations;
for (auto f_simplex : Base::filtration_simplex_range()) {
Simplex simplex;
for (auto vertex : Base::simplex_vertex_range(f_simplex)) {
@@ -107,8 +107,8 @@ class Simplex_tree_interface : public Simplex_tree<SimplexTreeOptions> {
return filtrations;
}
- Complex get_skeleton(int dimension) {
- Complex skeletons;
+ Filtered_simplices get_skeleton(int dimension) {
+ Filtered_simplices skeletons;
for (auto f_simplex : Base::skeleton_simplex_range(dimension)) {
Simplex simplex;
for (auto vertex : Base::simplex_vertex_range(f_simplex)) {
@@ -119,29 +119,25 @@ class Simplex_tree_interface : public Simplex_tree<SimplexTreeOptions> {
return skeletons;
}
- Complex get_star(const Simplex& simplex) {
- Complex star;
+ Filtered_simplices get_star(const Simplex& simplex) {
+ Filtered_simplices star;
for (auto f_simplex : Base::star_simplex_range(Base::find(simplex))) {
Simplex simplex_star;
for (auto vertex : Base::simplex_vertex_range(f_simplex)) {
- std::cout << vertex << " ";
simplex_star.insert(simplex_star.begin(), vertex);
}
- std::cout << std::endl;
star.push_back(std::make_pair(simplex_star, Base::filtration(f_simplex)));
}
return star;
}
- Complex get_cofaces(const Simplex& simplex, int dimension) {
- Complex cofaces;
+ Filtered_simplices get_cofaces(const Simplex& simplex, int dimension) {
+ Filtered_simplices cofaces;
for (auto f_simplex : Base::cofaces_simplex_range(Base::find(simplex), dimension)) {
Simplex simplex_coface;
for (auto vertex : Base::simplex_vertex_range(f_simplex)) {
- std::cout << vertex << " ";
simplex_coface.insert(simplex_coface.begin(), vertex);
}
- std::cout << std::endl;
cofaces.push_back(std::make_pair(simplex_coface, Base::filtration(f_simplex)));
}
return cofaces;