33#ifndef SPARSEMATRIX_INTERFACE_H_
34#define SPARSEMATRIX_INTERFACE_H_
46 bool resize(
size_t newRows,
size_t newCols);
84 const_row_iterator
end_row(
size_t row)
const;
114template<
typename ABC_type,
typename A_type,
typename B_type,
typename C_type>
127template<
typename AB_type,
typename A_type,
typename B_type>
140template<
typename matrix_type>
141void MatAdd(matrix_type &M,
number &alpha1,
const matrix_type &A,
number &alpha2,
const matrix_type &B);
Definition sparsematrix_interface.h:37
const_row_iterator get_connection(size_t r, size_t c, bool &bFound) const
row_iterator get_connection(size_t r, size_t c, bool &bFound)
const_row_iterator get_connection(size_t r, size_t c) const
size_t total_num_connections() const
Definition sparsematrix_interface.h:78
row_iterator get_connection(size_t r, size_t c)
row_iterator begin_row(size_t row)
row_iterator end_row(size_t row)
size_t num_cols() const
Definition sparsematrix_interface.h:77
const_row_iterator begin_row(size_t row) const
value_type & operator()(size_t r, size_t c)
T value_type
Definition sparsematrix_interface.h:40
const_row_iterator end_row(size_t row) const
bool resize(size_t newRows, size_t newCols)
size_t num_rows() const
Definition sparsematrix_interface.h:76
size_t num_connections(size_t row) const
double number
Definition types.h:124
class SparseMatrix B_type
void CreateAsMultiplyOf(AB_type &M, const A_type &A, const B_type &B)
Calculates M = A*B.
class SparseMatrix ABC_type
Calculates M = A*B*C.
class SparseMatrix CreateAsProductOf(ABC_type &M, const A_type &A, const B_type &B, const C_type &C)
class SparseMatrix A_type
void MatAdd(matrix_type &M, number &alpha1, const matrix_type &A, number &alpha2, const matrix_type &B)
Calculates M = A + B.