CGAL 6.2 - Homological Discrete Vector Fields
Loading...
Searching...
No Matches
AbstractChainComplex Concept Reference

Definition

The concept AbstractChainComplex describes the requirements for (topological) chain complexes associated to abstract complexes used in the concept HDVF.

It provides methods to:

  • get the dimension of the complex, the number of cells in each dimension
  • get the boundary and co-boundary of cell(s)
  • get the vertices of a given cell
  • output the complex in text format

Cells are indexed along each dimension and thus identified by their index together with their dimension.

Has models
CGAL::Homological_discrete_vector_field::Abstract_simplicial_chain_complex<IntegralDomainWithoutDivision>
CGAL::Homological_discrete_vector_field::Sub_chain_complex_mask<IntegralDomainWithoutDivision, AbstractChainComplex>

Related Functions

(Note that these are not member functions.)

std::ostream & operator<< (std::ostream &out, const AbstractChainComplex &complex) const
 Inserts the chain complex in text mode in the stream.
 

Types

typedef CoefficientRing Coefficient_ring
 Type of coefficients ring used to compute homology, model of IntegralDomainWithoutDivision
 
typedef CGAL::OSM::Sparse_chain< CoefficientRing, CGAL::OSM::COLUMNColumn_chain
 Type of column-major chains (returned by the boundary operator)
 
typedef CGAL::OSM::Sparse_chain< CoefficientRing, CGAL::OSM::ROWRow_chain
 Type of row-major chains (returned by the co-boundary operator)
 
typedef CGAL::OSM::Sparse_matrix< CoefficientRing, CGAL::OSM::COLUMNColumn_matrix
 Type of column-major sparse matrices (used to store the boundary operator)
 

Verification operations

bool is_valid_cell_dimension (int q)
 Checks if q belongs to the range of dimensions of cells in the complex.
 
bool is_valid_cell (size_t id, int q)
 Checks if a cell of index i and dimension q belongs to the range of dimensions of cells in the complex.
 

Operators

AbstractChainComplexoperator= (const AbstractChainComplex &complex)
 Assignment operator.
 

Member Typedef Documentation

◆ Coefficient_ring

typedef CoefficientRing AbstractChainComplex::Coefficient_ring

Type of coefficients ring used to compute homology, model of IntegralDomainWithoutDivision

Member Function Documentation

◆ operator=()

AbstractChainComplex & AbstractChainComplex::operator= ( const AbstractChainComplex complex)

Assignment operator.

The operator creates a copy of complex.