summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/doc/main_page.md30
-rw-r--r--src/common/include/gudhi/graph_simplicial_complex.h8
2 files changed, 38 insertions, 0 deletions
diff --git a/src/common/doc/main_page.md b/src/common/doc/main_page.md
index a33d98cd..462d857e 100644
--- a/src/common/doc/main_page.md
+++ b/src/common/doc/main_page.md
@@ -242,6 +242,36 @@
</tr>
</table>
+#### Edge collapse
+
+<table>
+ <tr>
+ <td width="35%" rowspan=2>
+ \image html "edge_collapse_representation.png"
+ </td>
+ <td width="50%">
+ Edge collapse is able to reduce any flag filtration to a smaller flag filtration with the same persistence, using
+ only the 1-skeletons of a simplicial complex.
+ The reduction is exact and the persistence homology of the reduced sequence is identical to the persistence
+ homology of the input sequence. The resulting method is simple and extremely efficient.
+
+ Computation of edge collapse and persistent homology of a filtered flag complex via edge collapse as described in
+ \cite edgecollapsesocg2020.
+ </td>
+ <td width="15%">
+ <b>Author:</b> Siddharth Pritam<br>
+ <b>Introduced in:</b> GUDHI 2.4.0<br>
+ <b>Copyright:</b> MIT<br>
+ <b>Requires:</b> \ref eigen
+ </td>
+ </tr>
+ <tr>
+ <td colspan=2 height="25">
+ <b>User manual:</b> \ref edge_collapse
+ </td>
+ </tr>
+</table>
+
### Cover Complexes
<table>
<tr>
diff --git a/src/common/include/gudhi/graph_simplicial_complex.h b/src/common/include/gudhi/graph_simplicial_complex.h
index b8508697..3e7720d7 100644
--- a/src/common/include/gudhi/graph_simplicial_complex.h
+++ b/src/common/include/gudhi/graph_simplicial_complex.h
@@ -19,6 +19,9 @@
#include <tuple> // for std::tie
namespace Gudhi {
+/** @file
+ * @brief Graph simplicial complex methods
+ */
/* Edge tag for Boost PropertyGraph. */
struct edge_filtration_t {
@@ -43,9 +46,14 @@ using Proximity_graph = typename boost::adjacency_list < boost::vecS, boost::vec
/** \brief Computes the proximity graph of the points.
*
+ * \fn Gudhi::Proximity_graph<SimplicialComplexForProximityGraph> compute_proximity_graph(const ForwardPointRange&
+ * points, typename SimplicialComplexForProximityGraph::Filtration_value threshold, Distance distance)
+ *
* If points contains n elements, the proximity graph is the graph with n vertices, and an edge [u,v] iff the
* distance function between points u and v is smaller than threshold.
*
+ * \tparam SimplicialComplexForProximityGraph furnishes `Filtration_value` and `Vertex_handle` type definitions.
+ *
* \tparam ForwardPointRange furnishes `.begin()` and `.end()` methods.
*
* \tparam Distance furnishes `operator()(const Point& p1, const Point& p2)`, where