Template Class Filtration

Class Documentation

template<typename TF, class CpxT>
class Filtration

A filtration which can be used to wrap a simplicial/cubical/cell complex.

A filtration class, templated over the type of the filtration parameter, and the type of the underlying complex

Public Functions

inline Filtration()
inline Filtration(const CpxT &C)
template<class ...Ts>
inline Filtration(const Ts (&... args))

Initialization which passes arguments to initialize the underlying complex

Parameters

args... – passed to complex initialization

inline Filtration(const CpxT &C, const std::vector<std::vector<TF>> &vals)

Initialization which passes arguments to initialize the underlying complex

Parameters
  • C – complex

  • vals – filtration values for every cell in C

inline void update_filtration(const std::vector<std::vector<TF>> &vals2)

update filtration values

Parameters

vals2 – new filtration values

inline const CpxT &complex() const

return const reference to underlying complex

inline const std::vector<std::vector<TF>> &vals() const

return const reference to filtration values

inline const std::vector<TF> &vals(const size_t k) const

return const reference to filtration values

Parameters

k – dimension of values to return

inline size_t maxdim() const

return maximum dimension of cells

inline size_t ncells(const size_t dim) const

return number of cells in specified dimension

Parameters

dim – dimension

template<class ...Ts>
inline cell_ind add(TF t, Ts (&... args))

add cell to filtration

Parameters
  • t – filtration parameter

  • ...args – passed to add method of underlying complex

template<class ...Ts>
inline cell_ind add_directed(TF t, Ts (&... args))

add directed cell to filtration

Parameters
  • t – filtration parameter

  • ...args – passed to add method of underlying complex

template<class ...Ts>
inline std::vector<cell_ind> add_recursive(TF t, Ts (&... args))

Add recursively to filtration. Any cells added will take filtration value t.

Parameters
  • t – filtration parameter

  • ...args – passed to add_recursive method of underlying complex

inline void union_add(const Filtration &F2)
inline std::vector<size_t> sortperm(size_t dim) const
inline std::vector<std::vector<size_t>> sortperm() const
inline CpxT sublevelset(const TF a) const

Get sub-levelset of filtration (-inf, a]

Parameters

a – upper bound of levelset