CGAL 6.2 - Homological Discrete Vector Fields
Loading...
Searching...
No Matches
HDVF/matrix_chain.cpp
#include <iostream>
#include <fstream>
#include <CGAL/OSM/OSM.h>
typedef typename Sparse_matrix_struct::template Sparse_chain_type<int, CGAL::OSM::COLUMN> Column_chain;
typedef typename Sparse_matrix_struct::template Sparse_matrix_type<int, CGAL::OSM::COLUMN> Column_matrix;
int main ()
{
// Create a column-major sparse matrix
Column_matrix M(5,4) ;
// Fill coefficients
// Iterate over non empty columns
for(CGAL::OSM::Bitboard::iterator it_col = M.begin(); it_col != M.end(); ++it_col)
{
std::cout << "col: " << *it_col << std::endl ;
// Get a constant reference over the column (complexity O(1))
const Column_chain& col(CGAL::OSM::cget_column(M, *it_col));
// Iterate over the column
for (Column_chain::const_iterator it = col.begin(); it != col.end(); ++it)
{
std::cout << "row: " << it->first << " - coef: " << it->second << std::endl ;
}
}
// Direct output of the matrix with << operator
std::cout << "M: " << M << std::endl;
return 0 ;
}
const SCT< _CT, COLUMN > & cget_column(const Sparse_matrix_core< _CT, COLUMN, SCT > &matrix, size_t index)
Definition: Sparse_matrix.h:1875
void set_coefficient(Sparse_matrix_core< _CT, _CTF, SCT > &matrix, size_t i, size_t j, const _CT d)
Definition: Sparse_matrix.h:1956
Definition: Bitboard.h:97
The structure Sparse_matrix provides a user friendly interface for sparse matrices built over a given...
Definition: Sparse_matrix.h:55