summaryrefslogtreecommitdiff
path: root/src/cython/test
diff options
context:
space:
mode:
authorvrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2017-02-16 14:58:11 +0000
committervrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2017-02-16 14:58:11 +0000
commit518acce63202c7b89fa3f76467e50eee7630cf62 (patch)
treed9877e63720c6a6fa2cef113182fe1178c049cb1 /src/cython/test
parentdf173dbefd275c54d8f5e33794d51709b887d2d3 (diff)
Remove pandas examples and use of OFF files interfaces to be more consistent (pandas interface is not that hard to be done)
Add of distance matrix in Rips git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/ST_cythonize@2081 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: 3a3b24f0824eed2710edb5bf17d120039973bf62
Diffstat (limited to 'src/cython/test')
-rwxr-xr-xsrc/cython/test/test_rips_complex.py47
1 files changed, 45 insertions, 2 deletions
diff --git a/src/cython/test/test_rips_complex.py b/src/cython/test/test_rips_complex.py
index 687e8529..464c69e5 100755
--- a/src/cython/test/test_rips_complex.py
+++ b/src/cython/test/test_rips_complex.py
@@ -1,4 +1,5 @@
from gudhi import RipsComplex
+from math import sqrt
"""This file is part of the Gudhi Library. The Gudhi library
(Geometric Understanding in Higher Dimensions) is a generic C++
@@ -31,7 +32,7 @@ def test_empty_rips():
rips_complex = RipsComplex()
assert rips_complex.__is_defined() == True
-def test_rips():
+def test_rips_from_points():
point_list = [[0, 0], [1, 0], [0, 1], [1, 1]]
rips_complex = RipsComplex(points=point_list, max_edge_length=42)
@@ -55,7 +56,7 @@ def test_rips():
[([0, 1], 1.0), ([0, 2], 1.0),
([0, 3], 1.4142135623730951)]
-def test_filtered_rips():
+def test_filtered_rips_from_points():
point_list = [[0, 0], [1, 0], [0, 1], [1, 1]]
filtered_rips = RipsComplex(points=point_list, max_edge_length=1.0)
@@ -66,3 +67,45 @@ def test_filtered_rips():
assert simplex_tree.num_simplices() == 8
assert simplex_tree.num_vertices() == 4
+
+def test_rips_from_distance_matrix():
+ distance_matrix = [[0],
+ [1, 0],
+ [1, sqrt(2), 0],
+ [sqrt(2), 1, 1, 0]]
+ rips_complex = RipsComplex(distance_matrix=distance_matrix, max_edge_length=42)
+
+ simplex_tree = rips_complex.create_simplex_tree(max_dimension=1)
+
+ assert simplex_tree.__is_defined() == True
+ assert simplex_tree.__is_persistence_defined() == False
+
+ assert simplex_tree.num_simplices() == 10
+ assert simplex_tree.num_vertices() == 4
+
+ assert simplex_tree.get_filtered_tree() == \
+ [([0], 0.0), ([1], 0.0), ([2], 0.0), ([3], 0.0),
+ ([0, 1], 1.0), ([0, 2], 1.0), ([1, 3], 1.0),
+ ([2, 3], 1.0), ([1, 2], 1.4142135623730951),
+ ([0, 3], 1.4142135623730951)]
+ assert simplex_tree.get_star_tree([0]) == \
+ [([0], 0.0), ([0, 1], 1.0), ([0, 2], 1.0),
+ ([0, 3], 1.4142135623730951)]
+ assert simplex_tree.get_coface_tree([0], 1) == \
+ [([0, 1], 1.0), ([0, 2], 1.0),
+ ([0, 3], 1.4142135623730951)]
+
+def test_filtered_rips_from_distance_matrix():
+ distance_matrix = [[0],
+ [1, 0],
+ [1, sqrt(2), 0],
+ [sqrt(2), 1, 1, 0]]
+ filtered_rips = RipsComplex(distance_matrix=distance_matrix, max_edge_length=1.0)
+
+ simplex_tree = filtered_rips.create_simplex_tree(max_dimension=1)
+
+ assert simplex_tree.__is_defined() == True
+ assert simplex_tree.__is_persistence_defined() == False
+
+ assert simplex_tree.num_simplices() == 8
+ assert simplex_tree.num_vertices() == 4