TTK
Loading...
Searching...
No Matches
Ripser< DistanceMatrix >::simplex_coboundary_enumerator Class Reference

Public Types

using working_t
 

Public Member Functions

 simplex_coboundary_enumerator (const diameter_entry_t _simplex, index_t _dim, const Ripser< compressed_lower_distance_matrix > &parent)
 
bool has_next (bool all_cofacets=true)
 
diameter_entry_t next ()
 
 simplex_coboundary_enumerator (const diameter_entry_t _simplex, const index_t _dim, const Ripser< sparse_distance_matrix > &parent)
 
bool has_next (bool all_cofacets=true)
 
diameter_entry_t next ()
 
std::vector< diameter_index_tget_edges ()
 
std::vector< diameter_index_tget_edges ()
 
 Ripser (compressed_lower_distance_matrix &&_dist, index_t _dim_max, value_t _threshold, float _ratio, bool _critical_edges_only, bool _infinite_pairs, coefficient_t _modulus)
 
index_t get_max_vertex (const index_t idx, const index_t k, const index_t n_) const
 
index_t get_edge_index (const index_t i, const index_t j) const
 
OutputIterator get_simplex_vertices (index_t idx, const index_t dim, index_t n_, OutputIterator out) const
 
void assemble_columns_to_reduce (std::vector< diameter_index_t > &simplices, std::vector< diameter_index_t > &columns_to_reduce, entry_hash_map &pivot_column_index, index_t dim)
 
void compute_dim_0_pairs (std::vector< diameter_index_t > &edges, std::vector< diameter_index_t > &columns_to_reduce, PersistenceType &ph)
 
diameter_entry_t pop_pivot (Column &column)
 
diameter_entry_t get_pivot (Column &column)
 
diameter_entry_t init_coboundary_and_get_pivot (const diameter_entry_t simplex, Column &working_coboundary, const index_t &dim, entry_hash_map &pivot_column_index)
 
void add_simplex_coboundary (const diameter_entry_t simplex, const index_t &dim, Column &working_reduction_column, Column &working_coboundary)
 
void add_coboundary (compressed_sparse_matrix< diameter_entry_t > &reduction_matrix, const std::vector< diameter_index_t > &columns_to_reduce, const size_t index_column_to_add, const coefficient_t factor, const size_t &dim, Column &working_reduction_column, Column &working_coboundary)
 
Edge find_longest_edge (const Simplex &vertices) const
 
void compute_pairs (std::vector< diameter_index_t > &columns_to_reduce, entry_hash_map &pivot_column_index, index_t dim, PersistenceType &ph)
 
std::vector< diameter_index_tget_edges ()
 
std::vector< diameter_index_tget_edges ()
 
std::vector< diameter_index_tget_edges ()
 
void compute_barcodes (PersistenceType &ph)
 

Detailed Description

template<typename DistanceMatrix>
class Ripser< DistanceMatrix >::simplex_coboundary_enumerator

Definition at line 991 of file ripser.cpp.

Member Typedef Documentation

◆ working_t

Definition at line 830 of file ripser.cpp.

Constructor & Destructor Documentation

◆ simplex_coboundary_enumerator() [1/2]

template<typename DistanceMatrix>
Ripser< DistanceMatrix >::simplex_coboundary_enumerator::simplex_coboundary_enumerator ( const diameter_entry_t _simplex,
index_t _dim,
const Ripser< compressed_lower_distance_matrix > & parent )
inline

Definition at line 1001 of file ripser.cpp.

◆ simplex_coboundary_enumerator() [2/2]

template<typename DistanceMatrix>
Ripser< DistanceMatrix >::simplex_coboundary_enumerator::simplex_coboundary_enumerator ( const diameter_entry_t _simplex,
const index_t _dim,
const Ripser< sparse_distance_matrix > & parent )
inline

Definition at line 1051 of file ripser.cpp.

Member Function Documentation

◆ add_coboundary()

void Ripser< compressed_lower_distance_matrix >::add_coboundary ( compressed_sparse_matrix< diameter_entry_t > & reduction_matrix,
const std::vector< diameter_index_t > & columns_to_reduce,
const size_t index_column_to_add,
const coefficient_t factor,
const size_t & dim,
Column & working_reduction_column,
Column & working_coboundary )
inline

Definition at line 810 of file ripser.cpp.

◆ add_simplex_coboundary()

void Ripser< compressed_lower_distance_matrix >::add_simplex_coboundary ( const diameter_entry_t simplex,
const index_t & dim,
Column & working_reduction_column,
Column & working_coboundary )
inline

Definition at line 795 of file ripser.cpp.

◆ assemble_columns_to_reduce()

void Ripser< compressed_lower_distance_matrix >::assemble_columns_to_reduce ( std::vector< diameter_index_t > & simplices,
std::vector< diameter_index_t > & columns_to_reduce,
entry_hash_map & pivot_column_index,
index_t dim )
inline

Definition at line 631 of file ripser.cpp.

◆ compute_barcodes()

void Ripser< compressed_lower_distance_matrix >::compute_barcodes ( PersistenceType & ph)
inline

Definition at line 967 of file ripser.cpp.

◆ compute_dim_0_pairs()

void Ripser< compressed_lower_distance_matrix >::compute_dim_0_pairs ( std::vector< diameter_index_t > & edges,
std::vector< diameter_index_t > & columns_to_reduce,
PersistenceType & ph )
inline

Definition at line 688 of file ripser.cpp.

◆ compute_pairs()

void Ripser< compressed_lower_distance_matrix >::compute_pairs ( std::vector< diameter_index_t > & columns_to_reduce,
entry_hash_map & pivot_column_index,
index_t dim,
PersistenceType & ph )
inline

Definition at line 849 of file ripser.cpp.

◆ find_longest_edge()

Edge Ripser< compressed_lower_distance_matrix >::find_longest_edge ( const Simplex & vertices) const
inline

Definition at line 836 of file ripser.cpp.

◆ get_edge_index()

index_t Ripser< compressed_lower_distance_matrix >::get_edge_index ( const index_t i,
const index_t j ) const
inline

Definition at line 610 of file ripser.cpp.

◆ get_edges() [1/5]

std::vector< diameter_index_t > Ripser< compressed_lower_distance_matrix >::get_edges ( )

◆ get_edges() [2/5]

std::vector< diameter_index_t > Ripser< compressed_lower_distance_matrix >::get_edges ( )

Definition at line 1111 of file ripser.cpp.

◆ get_edges() [3/5]

std::vector< diameter_index_t > Ripser< compressed_lower_distance_matrix >::get_edges ( )

Definition at line 1111 of file ripser.cpp.

◆ get_edges() [4/5]

std::vector< diameter_index_t > Ripser< sparse_distance_matrix >::get_edges ( )

Definition at line 1124 of file ripser.cpp.

◆ get_edges() [5/5]

std::vector< diameter_index_t > Ripser< sparse_distance_matrix >::get_edges ( )

Definition at line 1124 of file ripser.cpp.

◆ get_max_vertex()

index_t Ripser< compressed_lower_distance_matrix >::get_max_vertex ( const index_t idx,
const index_t k,
const index_t n_ ) const
inline

Definition at line 590 of file ripser.cpp.

◆ get_pivot()

diameter_entry_t Ripser< compressed_lower_distance_matrix >::get_pivot ( Column & column)
inline

Definition at line 760 of file ripser.cpp.

◆ get_simplex_vertices()

OutputIterator Ripser< compressed_lower_distance_matrix >::get_simplex_vertices ( index_t idx,
const index_t dim,
index_t n_,
OutputIterator out ) const
inline

Definition at line 615 of file ripser.cpp.

◆ has_next() [1/2]

template<typename DistanceMatrix>
bool Ripser< DistanceMatrix >::simplex_coboundary_enumerator::has_next ( bool all_cofacets = true)
inline

Definition at line 1013 of file ripser.cpp.

◆ has_next() [2/2]

template<typename DistanceMatrix>
bool Ripser< DistanceMatrix >::simplex_coboundary_enumerator::has_next ( bool all_cofacets = true)
inline

Definition at line 1069 of file ripser.cpp.

◆ init_coboundary_and_get_pivot()

diameter_entry_t Ripser< compressed_lower_distance_matrix >::init_coboundary_and_get_pivot ( const diameter_entry_t simplex,
Column & working_coboundary,
const index_t & dim,
entry_hash_map & pivot_column_index )
inline

Definition at line 769 of file ripser.cpp.

◆ next() [1/2]

template<typename DistanceMatrix>
diameter_entry_t Ripser< DistanceMatrix >::simplex_coboundary_enumerator::next ( )
inline

Definition at line 1017 of file ripser.cpp.

◆ next() [2/2]

template<typename DistanceMatrix>
diameter_entry_t Ripser< DistanceMatrix >::simplex_coboundary_enumerator::next ( )
inline

Definition at line 1096 of file ripser.cpp.

◆ pop_pivot()

diameter_entry_t Ripser< compressed_lower_distance_matrix >::pop_pivot ( Column & column)
inline

Definition at line 732 of file ripser.cpp.

◆ Ripser()

Ripser< compressed_lower_distance_matrix >::Ripser ( compressed_lower_distance_matrix && _dist,
index_t _dim_max,
value_t _threshold,
float _ratio,
bool _critical_edges_only,
bool _infinite_pairs,
coefficient_t _modulus )
inline

Definition at line 574 of file ripser.cpp.


The documentation for this class was generated from the following file: