Ripserer
Ripserer.ripserer
— Functionripserer(dists::AbstractMatrix; kwargs...)
ripserer(points; metric=Euclidean(), births, kwargs...)
ripserer(filtration::AbstractFiltration; kwargs...)
Compute the persistent homology of metric space represented by dists
, points
and metric
or an ::AbstractFiltration
.
If using points, points
must be an array of bitstypes, such as NTuple
s or SVectors
.
Keyoword Arguments
dim_max
: compute persistent homology up to this dimension. Defaults to1
.modulus
: compute persistent homology with coefficients in the prime field of integers modmodulus
. Defaults to2
.field_type
: use this type of field of coefficients. Defaults toMod{modulus}
.threshold
: compute persistent homology up to diameter smaller than threshold. For non-sparse Rips filtrations, it defaults to radius of input space.cutoff
: only keep intervals withpersistence(interval) > cutoff
. Defaults to0
.reps
: iftrue
, return representative cocycles along with persistence intervals. Defaults tofalse
.progress
: Iftrue
, show a progress bar. Defaults tofalse
.metric
: when calculating persistent homology from points, any metric fromDistances.jl
can be used. Defaults toEuclidean()
.births
: when calculating persistent homology from points, births can be used to add birth times to vertices. Defaults to all births equal to0
.
Ripserer.Rips
— TypeRips{T, V<:AbstractSimplex{<:Any, T}} <: AbstractFlagFiltration{T, V}
This type represents a filtration of Vietoris-Rips complexes. Diagonal items are treated as vertex birth times.
Constructor
Rips(
distance_matrix;
threshold=default_rips_threshold(dist),
vertex_type=Simplex{0, T, Int64},
)
Ripserer.SparseRips
— TypeSparseRips{T, V<:AbstractSimplex{<:Any, T}} <: AbstractFlagFiltration{T, V}
This type represents a filtration of Vietoris-Rips complexes. The distance matrix will be converted to a sparse matrix with all values greater than threshold deleted. Off-diagonal zeros in the matrix are treated as missing
. Diagonal items are treated as vertex birth times.
Constructor
SparseRips(
distance_matrix;
threshold=nothing,
vertex_type=Simplex{0, T, Int64},
)
Ripserer.Cubical
— TypeCubical{T, N} <: AbstractFiltration{T, <:Cubelet{0, T}}
Cubical
is used to compute sublevel persistent homology on N
-dimensional images, which are of type AbstractArray{T, N}
.
Constructor
Cubical(::AbstractArray{T, N})