Persistence matrix namespace. More...
Classes | |
class | Base_matrix |
A basic matrix structure allowing to easily manipulate and access entire columns and rows, but not individual entries. More... | |
class | Base_matrix_with_column_compression |
A base matrix (also see Base_matrix), but with column compression. That is, all identical columns in the matrix are compressed together as the same column. For matrices with a lot of redundant columns, this will save a lot of space. Also, any addition made onto a column will be performed at the same time on all other identical columns, which is an advantage for the cohomology algorithm for example. More... | |
class | Base_pairing |
Class managing the barcode for Boundary_matrix if the option was enabled. More... | |
class | Base_swap |
Class managing the column and row swaps in Base_matrix and Boundary_matrix. More... | |
class | Boundary_matrix |
Matrix structure to store the ordered boundary matrix \( R \) of a filtered complex in order to compute its persistent homology. Provides an access to its columns and rows as well as the possibility to remove the last cells of the filtration while maintaining a valid barcode. More... | |
class | Chain_barcode_swap |
Class managing the barcode for Chain_vine_swap. More... | |
class | Chain_column_extra_properties |
Class managing the pivot and partitioning of columns in Chain_matrix. More... | |
class | Chain_matrix |
Matrix structure storing a compatible base of a filtered chain complex. See [41]. The base is constructed from the boundaries of the cells in the complex. Allows the persistent homology to be computed, as well as representative cycles. Supports vineyards (see [21]) and the removal of maximal cells while maintaining a valid barcode. Provides an access to its columns and rows. More... | |
class | Chain_pairing |
Class managing the barcode for Chain_matrix if the option was enabled. More... | |
class | Chain_representative_cycles |
Class managing the representative cycles for Chain_matrix if the option was enabled. More... | |
class | Chain_vine_swap |
Class managing the vine swaps for Chain_matrix. More... | |
struct | Cohomology_persistence_options |
Options used by the cohomology module. More... | |
class | Column_dimension_holder |
Class managing the dimension access of a column. More... | |
struct | Default_options |
Default option structure for Matrix class. See the PersistenceMatrixOptions concept for a more detailed description of the fields. Produces a base matrix with no enabled option. More... | |
struct | Dummy_base_pairing |
Empty structure. Inherited instead of Base_pairing, when the computation of the barcode was not enabled or if the pairing is already managed by the vine update classes. More... | |
struct | Dummy_base_swap |
Empty structure. Inherited instead of Base_swap, when the column and row swaps are not enabled. More... | |
struct | Dummy_chain_pairing |
Empty structure. Inherited instead of Chain_pairing, when the computation of the barcode was not enabled or if the pairing is already managed by the vine update classes. More... | |
struct | Dummy_chain_properties |
Empty structure. Inherited instead of Chain_column_extra_properties, when the columns are not meant for chain matrices. More... | |
struct | Dummy_chain_representative_cycles |
Empty structure. Inherited instead of Chain_representative_cycles, when the computation of the representative cycles were not enabled. More... | |
struct | Dummy_chain_vine_pairing |
Empty structure. Inherited instead of Chain_barcode_swap, when the barcode is not stored. More... | |
struct | Dummy_chain_vine_swap |
Empty structure. Inherited instead of Chain_vine_swap, when vine swaps are not enabled. More... | |
struct | Dummy_dimension_holder |
Empty structure. Inherited instead of Column_dimension_holder, when the columns are not storing a dimension. More... | |
struct | Dummy_entry_column_index_mixin |
Empty structure. Inherited instead of Entry_column_index, when the row access is disabled. More... | |
struct | Dummy_entry_field_element_mixin |
Empty structure. Inherited instead of Entry_field_element, when PersistenceMatrixOptions::is_z2 is true. More... | |
struct | Dummy_matrix_dimension_holder |
Empty structure. Inherited instead of Matrix_max_dimension_holder or Matrix_all_dimension_holder, when the maximal dimension of a matrix is not stored. More... | |
struct | Dummy_matrix_row_access |
Empty structure. Inherited instead of Matrix_row_access, when the the row access is not enabled. More... | |
struct | Dummy_row_access |
Empty structure. Inherited instead of Row_access, if the row access is not enabled. More... | |
struct | Dummy_ru_pairing |
Empty structure. Inherited instead of RU_pairing, when the computation of the barcode was not enabled or if the pairing is already managed by the vine update classes. More... | |
struct | Dummy_ru_representative_cycles |
Empty structure. Inherited instead of RU_representative_cycles, when the computation of the representative cycles were not enabled. More... | |
struct | Dummy_ru_vine_pairing |
Empty structure. Inherited instead of RU_pairing, when the barcode is not stored. More... | |
struct | Dummy_ru_vine_swap |
Empty structure. Inherited instead of RU_vine_swap, when vine swaps are not enabled. More... | |
class | Entry |
Matrix entry class. Stores by default only the row index it belongs to, but can also store its column index when the row access is enabled, as well as its value when they are different from only 0 and 1. Zero-valued entries are never made explicit in the matrix. More... | |
class | Entry_column_index |
Class managing the column index access of an entry. More... | |
class | Entry_field_element |
Class managing the value access of an entry. More... | |
class | FieldOperators |
Concept of the field operator classes needed for the class Matrix. More... | |
class | Heap_column |
Column class following the PersistenceMatrixColumn concept. Not compatible with row access. More... | |
class | Id_to_index_overlay |
Overlay for non-basic matrices replacing all input and output MatIdx indices of the original methods with IDIdx indices. More... | |
class | Intrusive_list_column |
Column class following the PersistenceMatrixColumn concept. More... | |
class | Intrusive_set_column |
Column class following the PersistenceMatrixColumn concept. More... | |
class | List_column |
Column class following the PersistenceMatrixColumn concept. More... | |
class | Matrix |
Data structure for matrices, and in particular thought for matrices representing filtered complexes in order to compute persistence and/or representative cycles. More... | |
class | Matrix_all_dimension_holder |
Class managing the maximal dimension of a cell represented in the inheriting matrix, when the option of cell removal is enabled. More... | |
class | Matrix_max_dimension_holder |
Class managing the maximal dimension of a cell represented in the inheriting matrix, when the option of cell removal is not enabled. More... | |
class | Matrix_row_access |
Class managing the row access for the inheriting matrix. More... | |
struct | Multi_persistence_options |
Options used by the Multipersistence module. More... | |
class | Naive_vector_column |
Column class following the PersistenceMatrixColumn concept. More... | |
class | Persistence_interval |
Type for an interval in a persistent diagram or barcode. Stores the birth, death and dimension of the interval. It can be used as a tuple with get /std::get (birth, death and dimension in this order), std::tuple_element and std::tuple_size , as well as structured binding. More... | |
class | PersistenceMatrixColumn |
Concept of the column classes used by the Matrix class. The classes the columns inherit from are either real or dummy classes, see Row_access_option, Column_dimension_option, Chain_column_option. If used with column compression, the column type has to have its std::hash method. More... | |
struct | PersistenceMatrixOptions |
Concept of the template parameter for the class Matrix. More... | |
class | Position_to_index_overlay |
Overlay for chain matrices replacing all input and output MatIdx indices of the original methods with PosIdx indices. The overlay is useless for boundary matrices as MatIdx == PosIdx for them. More... | |
struct | Representative_cycles_options |
Options needed to use the representative cycles. More... | |
class | Row_access |
Class managing the row access for the columns. More... | |
class | RU_matrix |
Matrix structure to store the ordered boundary matrix \( R \cdot U \) of a filtered complex in order to compute its persistent homology, as well as representative cycles. Supports vineyards (see [21]) and the removal of maximal cells while maintaining a valid barcode. Provides an access to its columns and rows. More... | |
class | RU_pairing |
Class managing the barcode for RU_matrix if the option was enabled. More... | |
class | RU_representative_cycles |
Class managing the representative cycles for RU_matrix if the option was enabled. More... | |
class | RU_vine_swap |
Class managing the vine swaps for RU_matrix. More... | |
class | Set_column |
Column class following the PersistenceMatrixColumn concept. More... | |
class | Unordered_set_column |
Column class following the PersistenceMatrixColumn concept. More... | |
class | Vector_column |
Column class following the PersistenceMatrixColumn concept. More... | |
struct | Zigzag_options |
Options used for the Zigzag persistence module. More... | |
Enumerations | |
enum class | Column_types { Column_types::LIST , Column_types::SET , Column_types::HEAP , Column_types::VECTOR , Column_types::NAIVE_VECTOR , Column_types::SMALL_VECTOR , Column_types::UNORDERED_SET , Column_types::INTRUSIVE_LIST , Column_types::INTRUSIVE_SET } |
List of column types. More... | |
enum class | Column_indexation_types { Column_indexation_types::CONTAINER , Column_indexation_types::POSITION , Column_indexation_types::IDENTIFIER } |
List if indexation schemes. See description of indexation schemes for more details about the meaning of the indexation types. More... | |
Functions | |
constexpr bool | _no_G_death_comparator (unsigned int columnIndex1, unsigned int columnIndex2) |
Default death comparator. Simply assumes that two positive paired columns are never swapped. Which is true for the use case in zigzag persistence for example. More... | |
Persistence matrix namespace.