oineus.diff.cech_delaunay_filtration¶
- oineus.diff.cech_delaunay_filtration(points, eps=0.0, packed=False, print_time=False)[source]¶
Build a differentiable Cech-Delaunay filtration from a point cloud.
The combinatorics of the alpha complex are computed via diode (CGAL); the filtration values are recomputed differentiably as squared minimum enclosing ball radii of each simplex, so gradients flow back to
points.- Parameters:
points –
(n, d)torch.Tensor withd in {2, 3}. Differentiable.eps (float) – Small value for numerical stability in the MEB computation.
packed (bool) – Use the compact bit-packed cell encoding for the Delaunay combinatorics when the vertex ids fit a 64/128-bit word. The values (and gradients) are recomputed here regardless of encoding.
print_time (bool) – If True, print per-stage timings.
- Returns:
DiffFiltration whose values are squared MEB radii.