Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType > Class Template Reference A sparse matrix interface backend for BCRSMatrix from dune-istl. More...
Detailed Descriptiontemplate<class MatrixBlockType, class AllocatorType = std::allocator<MatrixBlockType>> class Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType > A sparse matrix interface backend for BCRSMatrix from dune-istl. Member Typedef Documentation◆ IstlMatrix
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Implementation of matrix. ◆ MatrixBlock
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
block type forming the matrix entries ◆ Scalar
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
type of scalar Constructor & Destructor Documentation◆ IstlSparseMatrixAdapter() [1/2]
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Constructor creating an empty matrix. ◆ IstlSparseMatrixAdapter() [2/2]
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
template<class Simulator >
Constructor taking simulator and creating an empty matrix . Member Function Documentation◆ addToBlock()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Add block to matrix block. ◆ block()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Fill given block with entries stored in the matrix. ◆ blockAddress()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
◆ clear()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Set all matrix entries to zero. ◆ clearRow()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Set given row to zero except for the main-diagonal entry (if it exists). If the sparsity pattern of the matrix features an explicit block on the main diagonal, the diagonal on that block is set to the second agument of the function. ◆ cols()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Return number of columns of the matrix. References Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType >::columns_. ◆ commit()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Commit matrix from local caches into matrix native structure. For the ISTL adapter this is unnecessary because there is no caching mechanism. ◆ finalize()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Finish modifying the matrix, i.e., convert the data structure from one tailored for linearization to one aimed at the linear solver. This may compress the matrix if the build mode is implicit. For the ISTL adapter this is not required. ◆ istlMatrix() [1/2]
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Return constant reference to matrix implementation. References Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType >::istlMatrix_. ◆ istlMatrix() [2/2]
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
◆ reserve()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
template<class Set >
Allocate matrix structure give a sparsity pattern. References Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType >::columns_, Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType >::istlMatrix_, and Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType >::rows_. ◆ rows()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Return number of rows of the matrix. References Opm::Linear::IstlSparseMatrixAdapter< MatrixBlockType, AllocatorType >::rows_. ◆ setBlock()
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
Set matrix block to given block. Member Data Documentation◆ columns_
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
◆ istlMatrix_
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
◆ rows_
template<class MatrixBlockType , class AllocatorType = std::allocator<MatrixBlockType>>
The documentation for this class was generated from the following file: |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||