summaryrefslogtreecommitdiff
path: root/src/python
diff options
context:
space:
mode:
authorROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-08-18 14:38:31 +0200
committerROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-08-18 14:38:31 +0200
commitddb2118f0af865588d7c14b88171dc04bb27c529 (patch)
tree74825f2f0c4e353511bbe09979ff8ae9aabe431d /src/python
parenta1cd7e9ead030654a1fdb6cfd50408103c458529 (diff)
reset_filtration from a dimension (instead of 'until')
Diffstat (limited to 'src/python')
-rw-r--r--src/python/gudhi/simplex_tree.pyx17
-rwxr-xr-xsrc/python/test/test_simplex_tree.py9
2 files changed, 14 insertions, 12 deletions
diff --git a/src/python/gudhi/simplex_tree.pyx b/src/python/gudhi/simplex_tree.pyx
index b7682693..657d55be 100644
--- a/src/python/gudhi/simplex_tree.pyx
+++ b/src/python/gudhi/simplex_tree.pyx
@@ -328,7 +328,7 @@ cdef class SimplexTree:
return self.get_ptr().prune_above_filtration(filtration)
def expansion(self, max_dim):
- """Expands the Simplex_tree containing only its one skeleton
+ """Expands the simplex tree containing only its one skeleton
until dimension max_dim.
The expanded simplicial complex until dimension :math:`d`
@@ -338,7 +338,7 @@ cdef class SimplexTree:
The filtration value assigned to a simplex is the maximal filtration
value of one of its edges.
- The Simplex_tree must contain no simplex of dimension bigger than
+ The simplex tree must contain no simplex of dimension bigger than
1 when calling the method.
:param max_dim: The maximal dimension.
@@ -358,15 +358,16 @@ cdef class SimplexTree:
"""
return self.get_ptr().make_filtration_non_decreasing()
- def reset_filtration(self, filtration, max_dim):
- """This function resets filtration value until a given dimension.
+ def reset_filtration(self, filtration, min_dim):
+ """This function resets filtration value from a given dimension.
+ Resets all the simplex tree when `min_dim = 0`.
:param filtration: New threshold value.
:type filtration: float.
- :param max_dim: The maximal dimension.
+ :param max_dim: The minimal dimension.
:type max_dim: int.
"""
- self.get_ptr().reset_filtration(filtration, max_dim)
+ self.get_ptr().reset_filtration(filtration, min_dim)
def extend_filtration(self):
""" Extend filtration for computing extended persistence. This function only uses the
@@ -376,14 +377,14 @@ cdef class SimplexTree:
.. note::
Note that after calling this function, the filtration
- values are actually modified within the Simplex_tree.
+ values are actually modified within the simplex tree.
The function :func:`extended_persistence`
retrieves the original values.
.. note::
Note that this code creates an extra vertex internally, so you should make sure that
- the Simplex_tree does not contain a vertex with the largest possible value (i.e., 4294967295).
+ the simplex tree does not contain a vertex with the largest possible value (i.e., 4294967295).
"""
self.get_ptr().compute_extended_filtration()
diff --git a/src/python/test/test_simplex_tree.py b/src/python/test/test_simplex_tree.py
index 6f1d01cc..ac2b59c7 100755
--- a/src/python/test/test_simplex_tree.py
+++ b/src/python/test/test_simplex_tree.py
@@ -367,15 +367,16 @@ def test_reset_filtration():
assert st.insert([3, 4, 5], 3.) == True
assert st.insert([0, 1, 6, 7], 4.) == True
+ # Guaranteed by construction
for simplex in st.get_simplices():
- assert st.filtration(simplex[0]) >= 0.
+ assert st.filtration(simplex[0]) >= 2.
# dimension until 5 even if simplex tree is of dimension 3 to test the limits
- for dimension in range(0, 6):
+ for dimension in range(5, -1, -1):
st.reset_filtration(0., dimension)
for simplex in st.get_skeleton(3):
print(simplex)
- if len(simplex[0]) > (dimension + 1):
- assert st.filtration(simplex[0]) >= 1.
+ if len(simplex[0]) < (dimension) + 1:
+ assert st.filtration(simplex[0]) >= 2.
else:
assert st.filtration(simplex[0]) == 0.