AlphaComplex is a simplicial complex constructed from the finite cells of a Delaunay Triangulation.
Details
The filtration value of each simplex is computed as the square of the circumradius of the simplex if the circumsphere is empty (the simplex is then said to be Gabriel), and as the minimum of the filtration values of the codimension 1 cofaces that make it not Gabriel otherwise. All simplices that have a filtration value strictly greater than a given alpha squared value are not inserted into the complex.
See also
Other filtrations and reconstructions:
RipsComplex
,
TangentialComplex
,
WitnessComplex
Methods
Method new()
AlphaComplex
constructor.
Usage
AlphaComplex$new(points, precision = "safe")
Method create_simplex_tree()
Generates a simplex tree from the Delaunay triangulation.
Arguments
max_alpha_square
A numeric value specifying the maximum alpha square threshold the simplices shall not exceed. Default is set to
Inf
, and there is very little point using anything else since it does not save time.default_filtration_value
A boolean specifying whether filtration values should not be computed and will be set to
NaN
(default_filtration_value = TRUE
). Defaults toFALSE
(which means compute the filtration values).
Returns
A SimplexTree
object storing the computed simplex
tree.
Method get_point()
This function returns the point corresponding to a given vertex from the SimplexTree.
Examples
if (FALSE) { # reticulate::py_module_available("gudhi")
Xl <- seq_circle(10)
Xm <- Reduce(rbind, Xl, init = numeric())
acm <- AlphaComplex$new(points = Xm)
acl <- AlphaComplex$new(points = Xl)
acl
}
if (FALSE) { # reticulate::py_module_available("gudhi")
X <- seq_circle(10)
ac <- AlphaComplex$new(points = X)
st <- ac$create_simplex_tree()
}
if (FALSE) { # reticulate::py_module_available("gudhi")
X <- seq_circle(10)
ac <- AlphaComplex$new(points = X)
st <- ac$create_simplex_tree()
ac$get_point(1)
}