175 research outputs found
The Topology ToolKit
This system paper presents the Topology ToolKit (TTK), a software platform
designed for topological data analysis in scientific visualization. TTK
provides a unified, generic, efficient, and robust implementation of key
algorithms for the topological analysis of scalar data, including: critical
points, integral lines, persistence diagrams, persistence curves, merge trees,
contour trees, Morse-Smale complexes, fiber surfaces, continuous scatterplots,
Jacobi sets, Reeb spaces, and more. TTK is easily accessible to end users due
to a tight integration with ParaView. It is also easily accessible to
developers through a variety of bindings (Python, VTK/C++) for fast prototyping
or through direct, dependence-free, C++, to ease integration into pre-existing
complex systems. While developing TTK, we faced several algorithmic and
software engineering challenges, which we document in this paper. In
particular, we present an algorithm for the construction of a discrete gradient
that complies to the critical points extracted in the piecewise-linear setting.
This algorithm guarantees a combinatorial consistency across the topological
abstractions supported by TTK, and importantly, a unified implementation of
topological data simplification for multi-scale exploration and analysis. We
also present a cached triangulation data structure, that supports time
efficient and generic traversals, which self-adjusts its memory usage on demand
for input simplicial meshes and which implicitly emulates a triangulation for
regular grids with no memory overhead. Finally, we describe an original
software architecture, which guarantees memory efficient and direct accesses to
TTK features, while still allowing for researchers powerful and easy bindings
and extensions. TTK is open source (BSD license) and its code, online
documentation and video tutorials are available on TTK's website
Computing Topological Persistence for Simplicial Maps
Algorithms for persistent homology and zigzag persistent homology are
well-studied for persistence modules where homomorphisms are induced by
inclusion maps. In this paper, we propose a practical algorithm for computing
persistence under coefficients for a sequence of general
simplicial maps and show how these maps arise naturally in some applications of
topological data analysis.
First, we observe that it is not hard to simulate simplicial maps by
inclusion maps but not necessarily in a monotone direction. This, combined with
the known algorithms for zigzag persistence, provides an algorithm for
computing the persistence induced by simplicial maps.
Our main result is that the above simple minded approach can be improved for
a sequence of simplicial maps given in a monotone direction. A simplicial map
can be decomposed into a set of elementary inclusions and vertex collapses--two
atomic operations that can be supported efficiently with the notion of simplex
annotations for computing persistent homology. A consistent annotation through
these atomic operations implies the maintenance of a consistent cohomology
basis, hence a homology basis by duality. While the idea of maintaining a
cohomology basis through an inclusion is not new, maintaining them through a
vertex collapse is new, which constitutes an important atomic operation for
simulating simplicial maps. Annotations support the vertex collapse in addition
to the usual inclusion quite naturally.
Finally, we exhibit an application of this new tool in which we approximate
the persistence diagram of a filtration of Rips complexes where vertex
collapses are used to tame the blow-up in size.Comment: This is the revised and full version of the paper that is going to
appear in the Proceedings of 30th Annual Symposium on Computational Geometr
Computing Persistent Homology of Flag Complexes via Strong Collapses
In this article, we focus on the problem of computing Persistent Homology of a flag tower, i.e. a sequence of flag complexes connected by simplicial maps. We show that if we restrict the class of simplicial complexes to flag complexes, we can achieve decisive improvement in terms of time and space complexities with respect to previous work. We show that strong collapses of flag complexes can be computed in time O(k^2v^2) where v is the number of vertices of the complex and k is the maximal degree of its graph. Moreover we can strong collapse a flag complex knowing only its 1-skeleton and the resulting complex is also a flag complex. When we strong collapse the complexes in a flag tower, we obtain a reduced sequence that is also a flag tower we call the core flag tower. We then convert the core flag tower to an equivalent filtration to compute its PH. Here again, we only use the 1-skeletons of the complexes. The resulting method is simple and extremely efficient
Edge Collapse and Persistence of Flag Complexes
In this article, we extend the notions of dominated vertex and strong collapse of a simplicial complex as introduced by J. Barmak and E. Miniam. We say that a simplex (of any dimension) is dominated if its link is a simplicial cone. Domination of edges appears to be a very powerful concept, especially when applied to flag complexes. We show that edge collapse (removal of dominated edges) in a flag complex can be performed using only the 1-skeleton of the complex. Furthermore, the residual complex is a flag complex as well. Next we show that, similar to the case of strong collapses, we can use edge collapses to reduce a flag filtration ? to a smaller flag filtration ?^c with the same persistence. Here again, we only use the 1-skeletons of the complexes. The resulting method to compute ?^c is simple and extremely efficient and, when used as a preprocessing for persistence computation, leads to gains of several orders of magnitude w.r.t the state-of-the-art methods (including our previous approach using strong collapse). The method is exact, irrespective of dimension, and improves performance of persistence computation even in low dimensions. This is demonstrated by numerous experiments on publicly available data
- …