summaryrefslogtreecommitdiff
path: root/example/Rips_complex/example_sparse_rips.cpp
diff options
context:
space:
mode:
authorGard Spreemann <gspreemann@gmail.com>2018-06-15 12:34:03 +0200
committerGard Spreemann <gspreemann@gmail.com>2018-06-15 12:34:03 +0200
commit41482b4260b4aff3d6803e340d5c94fbefb9af67 (patch)
tree89eae43dcb3fd4ab040e96f3d5479427d8cd2c7f /example/Rips_complex/example_sparse_rips.cpp
parent41a1b8c2728e212c832c0384c8bb424139a247cf (diff)
parentc524232f734de875d69e2f190f01a6c976024368 (diff)
Merge branch 'upstream/latest' into dfsg/latest
Diffstat (limited to 'example/Rips_complex/example_sparse_rips.cpp')
-rw-r--r--example/Rips_complex/example_sparse_rips.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/example/Rips_complex/example_sparse_rips.cpp b/example/Rips_complex/example_sparse_rips.cpp
new file mode 100644
index 00000000..1c95b48c
--- /dev/null
+++ b/example/Rips_complex/example_sparse_rips.cpp
@@ -0,0 +1,30 @@
+#include <gudhi/Sparse_rips_complex.h>
+#include <gudhi/Simplex_tree.h>
+#include <gudhi/distance_functions.h>
+
+#include <iostream>
+#include <vector>
+
+int main() {
+ using Point = std::vector<double>;
+ using Simplex_tree = Gudhi::Simplex_tree<Gudhi::Simplex_tree_options_fast_persistence>;
+ using Filtration_value = Simplex_tree::Filtration_value;
+ using Sparse_rips = Gudhi::rips_complex::Sparse_rips_complex<Filtration_value>;
+
+ Point points[] = {{1.0, 1.0}, {7.0, 0.0}, {4.0, 6.0}, {9.0, 6.0}, {0.0, 14.0}, {2.0, 19.0}, {9.0, 17.0}};
+
+ // ----------------------------------------------------------------------------
+ // Init from Euclidean points
+ // ----------------------------------------------------------------------------
+ double epsilon = 2; // very rough, no guarantees
+ Sparse_rips sparse_rips(points, Gudhi::Euclidean_distance(), epsilon);
+
+ Simplex_tree stree;
+ sparse_rips.create_complex(stree, 10);
+
+ // ----------------------------------------------------------------------------
+ // Display information about the complex
+ // ----------------------------------------------------------------------------
+ std::cout << "Sparse Rips complex is of dimension " << stree.dimension() << " - " << stree.num_simplices()
+ << " simplices - " << stree.num_vertices() << " vertices." << std::endl;
+}