Loading...
Searching...
No Matches
PersistenceMatrixOptions.h
Go to the documentation of this file.
/* This file is part of the Gudhi Library - https://gudhi.inria.fr/ - which is released under MIT.
* See file LICENSE or go to https://gudhi.inria.fr/licensing/ for full license details.
* Author(s): Hannah Schreiber
*
* Copyright (C) 2024 Inria
*
* Modification(s):
* - YYYY/MM Author: Description of the modification
*/
namespace Gudhi {
namespace persistence_matrix {
struct PersistenceMatrixOptions
{
using Field_coeff_operators = unspecified;
using Dimension = unspecified;
using Index = unspecified;
static const bool is_z2;
static const Column_types column_type;
static const Column_indexation_types column_indexation_type;
static const bool has_column_compression;
static const bool has_column_and_row_swaps;
static const bool has_map_column_container;
static const bool has_removable_columns;
static const bool has_row_access;
static const bool has_intrusive_rows;
static const bool has_removable_rows;
static const bool is_of_boundary_type;
static const bool has_matrix_maximal_dimension_access;
static const bool has_column_pairings;
static const bool has_vine_update;
static const bool can_retrieve_representative_cycles;
// not implemented yet
// /**
// * @brief Only enabled for boundary and @ref chainmatrix "chain matrices", i.e., when at least one of
// * the following is true: @ref has_column_pairings, @ref has_vine_update or
// * @ref can_retrieve_representative_cycles.
// * Is ignored otherwise
// * If set to true, the matrix is decomposed in several sub-matrices containing each all the
// * columns of same dimension.
// */
// static const bool is_separated_by_dimension;
// /**
// * @brief If set to true, some methods will use parallel computing.
// */
// static const bool is_parallelizable;
};
} // namespace persistence_matrix
} // namespace Gudhi
Gudhi::persistence_matrix::Column_indexation_types
Column_indexation_types
List if indexation schemes. See description of indexation schemes for more details about the meaning ...
Definition persistence_matrix_options.h:51
Gudhi::persistence_matrix::Column_types
Column_types
List of column types.
Definition persistence_matrix_options.h:30
Gudhi::persistence_matrix
Persistence matrix namespace.
Definition FieldOperators.h:18
Gudhi
Gudhi namespace.
Definition SimplicialComplexForAlpha.h:14
Gudhi::persistence_matrix::PersistenceMatrixOptions
Concept of the template parameter for the class Matrix.
Definition PersistenceMatrixOptions.h:32
Gudhi::persistence_matrix::PersistenceMatrixOptions::column_indexation_type
static const Column_indexation_types column_indexation_type
Specifies the desired indexation scheme to access the methods of the matrix. See matrix description a...
Definition PersistenceMatrixOptions.h:66
Gudhi::persistence_matrix::PersistenceMatrixOptions::column_type
static const Column_types column_type
Specifies the desired column type. All possible column types are described in Column_types.
Definition PersistenceMatrixOptions.h:60
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_matrix_maximal_dimension_access
static const bool has_matrix_maximal_dimension_access
Only enabled for boundary and chain matrices, i.e., when at least one of the following is true: has_c...
Definition PersistenceMatrixOptions.h:142
Gudhi::persistence_matrix::PersistenceMatrixOptions::Dimension
unspecified Dimension
Type for the dimension. Has to be an integer type. If unsigned, the maximal value of the type should ...
Definition PersistenceMatrixOptions.h:42
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_map_column_container
static const bool has_map_column_container
If set to true, the underlying container containing the matrix columns is an std::unordered_map....
Definition PersistenceMatrixOptions.h:101
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_column_compression
static const bool has_column_compression
Only enabled for base matrices (i.e., none of the following is true: has_column_pairings,...
Definition PersistenceMatrixOptions.h:83
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_row_access
static const bool has_row_access
If set to true, enables the method Matrix::get_row.
Definition PersistenceMatrixOptions.h:111
Gudhi::persistence_matrix::PersistenceMatrixOptions::can_retrieve_representative_cycles
static const bool can_retrieve_representative_cycles
If set to true, enables the methods Matrix::update_representative_cycles and Matrix::get_representati...
Definition PersistenceMatrixOptions.h:161
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_removable_rows
static const bool has_removable_rows
Only enabled if has_row_access is true, ignored otherwise. If set to true, the underlying container c...
Definition PersistenceMatrixOptions.h:124
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_column_and_row_swaps
static const bool has_column_and_row_swaps
Only enabled for base matrices or simple boundary matrices, i.e., when both has_vine_update and can_r...
Definition PersistenceMatrixOptions.h:89
Gudhi::persistence_matrix::PersistenceMatrixOptions::is_z2
static const bool is_z2
If true, indicates that the values contained in the matrix are in and can therefore be treated like ...
Definition PersistenceMatrixOptions.h:56
Gudhi::persistence_matrix::PersistenceMatrixOptions::Index
unspecified Index
Type for the different indexation types and should be able to contain the maximal number of columns o...
Definition PersistenceMatrixOptions.h:48
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_column_pairings
static const bool has_column_pairings
If set to true, enables the method Matrix::get_current_barcode. The matrix will then either be a boun...
Definition PersistenceMatrixOptions.h:148
Gudhi::persistence_matrix::PersistenceMatrixOptions::Field_coeff_operators
unspecified Field_coeff_operators
Field operators. Has to follow the FieldOperators concept. The type will not be used if is_z2 is set ...
Definition PersistenceMatrixOptions.h:37
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_vine_update
static const bool has_vine_update
If set to true, enables the methods Matrix::vine_swap and Matrix::vine_swap_with_z_eq_1_case....
Definition PersistenceMatrixOptions.h:154
Gudhi::persistence_matrix::PersistenceMatrixOptions::is_of_boundary_type
static const bool is_of_boundary_type
Only used, when at least one of the following is true: has_column_pairings, has_vine_update or can_re...
Definition PersistenceMatrixOptions.h:132
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_removable_columns
static const bool has_removable_columns
If set to true, enables the methods Matrix::remove_maximal_cell and Matrix::remove_last,...
Definition PersistenceMatrixOptions.h:106
Gudhi::persistence_matrix::PersistenceMatrixOptions::has_intrusive_rows
static const bool has_intrusive_rows
Only enabled if has_row_access is true, ignored otherwise. If set to true, the underlying container r...
Definition PersistenceMatrixOptions.h:117