Filtrations

Ripserer.AbstractFiltrationType
AbstractFiltration{T, V<:AbstractSimplex{0, T}}

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

T is the distance type, accessible by dist_type and S is the edge type, accesible by vertex_type.

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 edge_type(filtration).

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

Get the diameter of list of vertices i.e. diameter of simplex with vertices. Retrun missing if vertices do not form a valid simplex.

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

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

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.

source
Ripserer.AbstractFlagFiltrationType
AbstractFlagFiltration{T, V} <: AbstractFiltration{T, V}

An abstract flag filtration is a filtration of flag complexes. Its subtypes can overload dist(::AbstractFlagFiltration{T}, u, v)::Union{T, Missing} instead of diam. diam(::AbstractFlagFiltration, ...) defaults to maximum dist among vertices.

source