summaryrefslogtreecommitdiff
path: root/src/python/test/test_weighted_rips.py
diff options
context:
space:
mode:
authoryuichi-ike <yuichi.ike.1990@gmail.com>2020-05-21 11:02:00 +0900
committeryuichi-ike <yuichi.ike.1990@gmail.com>2020-05-21 11:02:00 +0900
commit0c47b28201093851140ab499331017ef42312ce7 (patch)
treee0f4d09d0fc5cf36705b09f919081917d5195f63 /src/python/test/test_weighted_rips.py
parent97e889f34e929f3c2306803b6c37b57926bd1245 (diff)
DTM Rips added (straightforward way)
Diffstat (limited to 'src/python/test/test_weighted_rips.py')
-rw-r--r--src/python/test/test_weighted_rips.py63
1 files changed, 0 insertions, 63 deletions
diff --git a/src/python/test/test_weighted_rips.py b/src/python/test/test_weighted_rips.py
deleted file mode 100644
index 7ef48333..00000000
--- a/src/python/test/test_weighted_rips.py
+++ /dev/null
@@ -1,63 +0,0 @@
-""" This file is part of the Gudhi Library - https://gudhi.inria.fr/ - which is released under MIT.
- See file LICENSE or go to https://gudhi.inria.fr/licensing/ for full license details.
- Author(s): Yuichi Ike and Masatoshi Takenouchi
-
- Copyright (C) 2020 Inria
-
- Modification(s):
- - YYYY/MM Author: Description of the modification
-"""
-
-from gudhi.weighted_rips_complex import WeightedRipsComplex
-from gudhi.point_cloud.dtm import DistanceToMeasure
-import numpy as np
-from math import sqrt
-from scipy.spatial.distance import cdist
-import pytest
-
-def test_non_dtm_rips_complex():
- dist = [[], [1]]
- weights = [1, 100]
- w_rips = WeightedRipsComplex(distance_matrix=dist, weights=weights)
- st = w_rips.create_simplex_tree(max_dimension=2)
- assert st.filtration([0,1]) == pytest.approx(200.0)
-
-def test_compatibility_with_rips():
- distance_matrix = [[0], [1, 0], [1, sqrt(2), 0], [sqrt(2), 1, 1, 0]]
- w_rips = WeightedRipsComplex(distance_matrix=distance_matrix,max_filtration=42)
- st = w_rips.create_simplex_tree(max_dimension=1)
- assert list(st.get_filtration()) == [
- ([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], sqrt(2)),
- ([0, 3], sqrt(2)),
- ]
-
-def test_compatibility_with_filtered_rips():
- distance_matrix = [[0], [1, 0], [1, sqrt(2), 0], [sqrt(2), 1, 1, 0]]
- w_rips = WeightedRipsComplex(distance_matrix=distance_matrix,max_filtration=1.0)
- st = w_rips.create_simplex_tree(max_dimension=1)
-
- assert st.__is_defined() == True
- assert st.__is_persistence_defined() == False
-
- assert st.num_simplices() == 8
- assert st.num_vertices() == 4
-
-def test_dtm_rips_complex():
- pts = np.array([[2.0, 2.0], [0.0, 1.0], [3.0, 4.0]])
- dist = cdist(pts,pts)
- dtm = DistanceToMeasure(2, q=2, metric="precomputed")
- r = dtm.fit_transform(dist)
- w_rips = WeightedRipsComplex(distance_matrix=dist, weights=r)
- st = w_rips.create_simplex_tree(max_dimension=2)
- st.persistence()
- persistence_intervals0 = st.persistence_intervals_in_dimension(0)
- assert persistence_intervals0 == pytest.approx(np.array([[3.16227766, 5.39834564],[3.16227766, 5.39834564], [3.16227766, float("inf")]]))
-