TTK
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | List of all members
Ripser< DistanceMatrix > Class Template Reference

Classes

class  simplex_coboundary_enumerator
 

Public Types

using working_t = std::priority_queue< diameter_entry_t, std::vector< diameter_entry_t >, greater_diameter_or_smaller_index< diameter_entry_t > >
 

Public Member Functions

 Ripser (DistanceMatrix &&_dist, index_t _dim_max, value_t _threshold, float _ratio, 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
 
template<typename OutputIterator >
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, std::vector< std::vector< pers_pair_t > > &ph)
 
template<typename Column >
diameter_entry_t pop_pivot (Column &column)
 
template<typename Column >
diameter_entry_t get_pivot (Column &column)
 
template<typename 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)
 
template<typename Column >
void add_simplex_coboundary (const diameter_entry_t simplex, const index_t &dim, Column &working_reduction_column, Column &working_coboundary)
 
template<typename Column >
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)
 
void compute_pairs (std::vector< diameter_index_t > &columns_to_reduce, entry_hash_map &pivot_column_index, index_t dim, std::vector< std::vector< pers_pair_t > > &ph)
 
std::vector< diameter_index_tget_edges ()
 
void compute_barcodes (std::vector< std::vector< pers_pair_t > > &ph)
 
std::vector< diameter_index_tget_edges ()
 
std::vector< diameter_index_tget_edges ()
 

Detailed Description

template<typename DistanceMatrix>
class Ripser< DistanceMatrix >

Definition at line 523 of file ripserpy.cpp.

Member Typedef Documentation

◆ working_t

template<typename DistanceMatrix >
using Ripser< DistanceMatrix >::working_t = std::priority_queue<diameter_entry_t, std::vector<diameter_entry_t>, greater_diameter_or_smaller_index<diameter_entry_t> >

Definition at line 797 of file ripserpy.cpp.

Constructor & Destructor Documentation

◆ Ripser()

template<typename DistanceMatrix >
Ripser< DistanceMatrix >::Ripser ( DistanceMatrix &&  _dist,
index_t  _dim_max,
value_t  _threshold,
float  _ratio,
coefficient_t  _modulus 
)
inline

Definition at line 552 of file ripserpy.cpp.

Member Function Documentation

◆ add_coboundary()

template<typename DistanceMatrix >
template<typename Column >
void Ripser< DistanceMatrix >::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 777 of file ripserpy.cpp.

◆ add_simplex_coboundary()

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

Definition at line 762 of file ripserpy.cpp.

◆ assemble_columns_to_reduce()

template<typename DistanceMatrix >
void Ripser< DistanceMatrix >::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 605 of file ripserpy.cpp.

◆ compute_barcodes()

template<typename DistanceMatrix >
void Ripser< DistanceMatrix >::compute_barcodes ( std::vector< std::vector< pers_pair_t > > &  ph)
inline

Definition at line 902 of file ripserpy.cpp.

◆ compute_dim_0_pairs()

template<typename DistanceMatrix >
void Ripser< DistanceMatrix >::compute_dim_0_pairs ( std::vector< diameter_index_t > &  edges,
std::vector< diameter_index_t > &  columns_to_reduce,
std::vector< std::vector< pers_pair_t > > &  ph 
)
inline

Definition at line 661 of file ripserpy.cpp.

◆ compute_pairs()

template<typename DistanceMatrix >
void Ripser< DistanceMatrix >::compute_pairs ( std::vector< diameter_index_t > &  columns_to_reduce,
entry_hash_map &  pivot_column_index,
index_t  dim,
std::vector< std::vector< pers_pair_t > > &  ph 
)
inline

Definition at line 802 of file ripserpy.cpp.

◆ get_edge_index()

template<typename DistanceMatrix >
index_t Ripser< DistanceMatrix >::get_edge_index ( const index_t  i,
const index_t  j 
) const
inline

Definition at line 584 of file ripserpy.cpp.

◆ get_edges() [1/3]

template<typename DistanceMatrix >
std::vector< diameter_index_t > Ripser< DistanceMatrix >::get_edges ( )

◆ get_edges() [2/3]

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

Definition at line 1045 of file ripserpy.cpp.

◆ get_edges() [3/3]

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

Definition at line 1058 of file ripserpy.cpp.

◆ get_max_vertex()

template<typename DistanceMatrix >
index_t Ripser< DistanceMatrix >::get_max_vertex ( const index_t  idx,
const index_t  k,
const index_t  n_ 
) const
inline

Definition at line 564 of file ripserpy.cpp.

◆ get_pivot()

template<typename DistanceMatrix >
template<typename Column >
diameter_entry_t Ripser< DistanceMatrix >::get_pivot ( Column &  column)
inline

Definition at line 727 of file ripserpy.cpp.

◆ get_simplex_vertices()

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

Definition at line 589 of file ripserpy.cpp.

◆ init_coboundary_and_get_pivot()

template<typename DistanceMatrix >
template<typename Column >
diameter_entry_t Ripser< DistanceMatrix >::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 736 of file ripserpy.cpp.

◆ pop_pivot()

template<typename DistanceMatrix >
template<typename Column >
diameter_entry_t Ripser< DistanceMatrix >::pop_pivot ( Column &  column)
inline

Definition at line 699 of file ripserpy.cpp.


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