Classes | |
struct | Gudhi::zigzag_persistence::FilteredZigzagOptions |
List of options used for the filtered zigzag persistence computation. More... | |
struct | Gudhi::zigzag_persistence::ZigzagOptions |
List of options used for the zigzag persistence computation. More... | |
struct | Gudhi::zigzag_persistence::Default_filtered_zigzag_options |
Default options for Filtered_zigzag_persistence_with_storage and Filtered_zigzag_persistence. More... | |
class | Gudhi::zigzag_persistence::Filtered_zigzag_persistence_with_storage< FilteredZigzagOptions > |
Class computing the zigzag persistent homology of a zigzag filtration. Algorithm based on [41]. Even though the insertions and removals are given in a "stream-like" way, the barcode and other values are stored during the whole process and not removed. It is therefore suited for smaller filtrations where the clean ups produce a higher overhead than the memory consumption. More... | |
class | Gudhi::zigzag_persistence::Filtered_zigzag_persistence< FilteredZigzagOptions > |
Class computing the zigzag persistent homology of a zigzag filtration. Algorithm based on [41]. More... | |
struct | Gudhi::zigzag_persistence::Zigzag_matrix_options< column_type > |
Options for the internal matrix of Zigzag_persistence. More... | |
struct | Gudhi::zigzag_persistence::Default_zigzag_options |
Default options for Zigzag_persistence. More... | |
class | Gudhi::zigzag_persistence::Zigzag_persistence< ZigzagOptions > |
Class computing the zigzag persistent homology of a zigzag sequence. Algorithm based on [41]. More... | |
We refer to the introduction page Persistent Cohomology for persistent (co)homology for an introduction to the topic. Zigzag persistence is a generalization of the latter. While standard persistence only allows to grow the filtered complex by adding cells, zigzag persistence also allows removals. Hence the name "zigzag", as the module diagram will have arrows alternating between forward and backward.
The module consists of the Zigzag_persistence class and two wrappers Filtered_zigzag_persistence and Filtered_zigzag_persistence_with_storage:
The implementation is based on the algorithm introduced in [41].
As removals are possible in zigzag filtration, the maximal size of the complex does not depend on the length of the filtration anymore. This makes it possible to build very long fine tuned filtrations with relatively small complexes which can be processed without overreaching memory space. For this purpose, it is possible to feed the module with information about the filtration "on the fly" to avoid loading the whole filtration at once. Information about the current barcode can be retrieved between any steps via callback methods.