|  | 
| template<class RowBasis , class ColBasis > | 
|  | MatrixFacade (RowBasis const &rowBasis, ColBasis const &colBasis) | 
|  | 
| Impl const & | impl () const | 
|  | Return the underlying matrix backend. 
 | 
|  | 
| Impl & | impl () | 
|  | 
| template<class SparsityPattern > | 
| void | init (SparsityPattern const &pattern) | 
|  | Initialize the matrix for insertion and allocate the non-zero pattern. 
 | 
|  | 
| void | init () | 
|  | Initialize the matrix for insertion while keeping the pattern unchanged. 
 | 
|  | 
| void | finish () | 
|  | Finish the matrix insertion, e.g. cleanup or final insertion. 
 | 
|  | 
| template<class RowIndex , class ColIndex , REQUIRES(Concepts::MultiIndex< RowIndex >) , REQUIRES(Concepts::MultiIndex< ColIndex >) > | 
| void | insert (RowIndex const &row, ColIndex const &col, typename Impl::value_type const &value) | 
|  | Insert a single value into the matrix (add to existing value) 
 | 
|  | 
| template<class RowLocalView , class ColLocalView , class LocalMatrix , REQUIRES(Concepts::LocalView< RowLocalView >) , REQUIRES(Concepts::LocalView< ColLocalView >) > | 
| void | scatter (RowLocalView const &r, ColLocalView const &c, LocalMatrix const &localMatrix) | 
|  | 
| template<class Idx , REQUIRES(Concepts::MultiIndex< Idx >) > | 
| void | zeroRows (std::vector< Idx > const &ind, bool diag) | 
|  | Set all entries of the specified rows to zero and the diagonal element to diag
 | 
|  | 
| template<class RowIdx , class ColIdx , REQUIRES(Concepts::MultiIndex< RowIdx >) , REQUIRES(Concepts::MultiIndex< ColIdx >) > | 
| void | zeroRows (std::vector< RowIdx > const &rowInd, std::vector< ColIdx > const &colInd, bool diag) | 
|  | Set all entries of the specified rows to zero and the diagonal element to diag
 | 
|  | 
| template<class Idx , class VecX , class VecB , REQUIRES(Concepts::MultiIndex< Idx >) > | 
| void | zeroRowsColumns (std::vector< Idx > const &ind, bool diag, VecX const &x, VecB &b) | 
|  | Set all entries of the specified rows and columns==rows to zero and the diagonal element to 1 if diagis set to true. Additionally, modify the entries of the vector b according to the solution values x times the corresponding matrix entries.
 | 
|  | 
| template<class Idx , REQUIRES(Concepts::MultiIndex< Idx >) > | 
| void | zeroRowsColumns (std::vector< Idx > const &ind, bool diag) | 
|  | Set all entries of the specified rows and columns==rows to zero and the main diagonal element to 1 if diagis set to true.
 | 
|  | 
| template<class RowIdx , class ColIdx , class VecX , class VecB , REQUIRES(Concepts::MultiIndex< RowIdx >) , REQUIRES(Concepts::MultiIndex< ColIdx >) > | 
| void | zeroRowsColumns (std::vector< RowIdx > const &rowInd, std::vector< ColIdx > const &colInd, bool diag, VecX const &x, VecB &b) | 
|  | Set all entries of the specified rows and columns to zero and the diagonal elements defined as pairs of row and column indices to 1 if diagis set to true. Additionally, modify the entries of the vector b according to the solution values x times the corresponding matrix entries.
 | 
|  | 
| template<class RowIdx , class ColIdx , REQUIRES(Concepts::MultiIndex< RowIdx >) , REQUIRES(Concepts::MultiIndex< ColIdx >) > | 
| void | zeroRowsColumns (std::vector< RowIdx > const &rowInd, std::vector< ColIdx > const &colInd, bool diag) | 
|  | Set all entries of the specified rows and columns to zero and the diagonal elements defined as pairs of row and column indices to 1 if diagis set to true.
 | 
|  | 
| std::size_t | nnz () const | 
|  | Number of nonzeros in the matrix. 
 | 
|  | 
template<class T, template< class > class MatrixImpl>
class AMDiS::MatrixFacade< T, MatrixImpl >
Basis implementation of DOFMatrix, i.e. a sparse matrix storing all the assembled Operators indexed with DOF indices. The matrix data is associated to a row and column global basis.
- Template Parameters
- 
  
    | T | The coefficient type of the matrix |  | MatrixImpl | A linear-algebra backend for the matrix storage |