Filtration Interface

Ripserer.AbstractFiltrationType
AbstractFiltration

A filtration is used to find the edges in filtration and to determine diameters of simplices.

Interface

source
Ripserer.edgesMethod
edges(filtration::AbstractFiltration)

Get edges in distance matrix in filtration, sorted by decresing length and increasing combinatorial index. Edges should be of type simplex_type(filtration, 1)`.

source
Ripserer.diamMethod
diam(::AbstractFiltration, vertices)

Get the diameter of a simplex with the vertex set vertices. Should return missing if vertices do not form a valid simplex.

source
Ripserer.diamMethod
diam(::AbstractFiltration, simplex, vertices, new_vertex)

Get the diameter of coface of a Simplex that is formed by adding new_vertex to vertices. Should return missing if new simplex is not valid.

This functions is used with the coboundary function for IndexedSimplex

source
PersistenceDiagrams.thresholdMethod
threshold(::AbstractFiltration)

Get the threshold of filtration. This is the maximum diameter a simplex in the filtration can have. Used only for placing the infinity line in plotting. Defaults to missing.

source
Ripserer.postprocess_intervalFunction
postprocess_diagram(::AbstractFiltration, interval)

This function is called on each resulting persistence interval. The default implementation does nothing.

source
Ripserer.AbstractRipsFiltrationType
AbstractRipsFiltration{I<:Signed, T} <: AbstractFiltration

An abstract Vietoris-Rips filtration. Its subtypes can overload dist(::AbstractRipsFiltration{T}, u, v)::Union{T, Missing} instead of diam.

diam(::AbstractRipsFiltration, ...) then defaults to maximum [dist] among vertices.

Comes with default implementations of edges and simplex_type.

source
Ripserer.distFunction
dist(::AbstractRipsFiltration, u, v)
dist(::AbstractRipsFiltration)

Return the distance between vertices u and v. If the distance is higher than the threshold, return missing instead. If u and v are not given, return the distance matrix.

source