def truncated_simplex_tree(simplexTree: np.ndarray, int_trunc: int = 100) -> tuple: """ **This function return a truncated simplex tree.** A sparse representation of the persistence diagram in the form of a truncated persistence tree. Speeds up computation on large scale data sets. + param **simplexTree**: simplex tree, type `np.ndarray`. + param **int_trunc**: number of persistent interval kept per dimension, default is `100`, type `int`. + return **simplexTreeTruncatedPersistence**: truncated simplex tree, type `np.ndarray`. """ simplexTree.persistence() dimension = simplexTree.dimension() simplexTreeTruncatedPersistence = [] for i in range(dimension): dPersistence = simplexTree.persistence_intervals_in_dimension( dimension) j = len(dPersistence) if j > int_trunc: dPersistenceTruncated = [ dPersistence[i] for i in range(j - int_trunc, j) ] else: dPersistenceTruncated = dPersistence simplexTreeTruncatedPersistence = simplexTreeTruncatedPersistence + [ (i, (l[0], l[1])) for l in dPersistenceTruncated ] return simplexTreeTruncatedPersistence