Opm::gpuistl::GpuSparseMatrix< T > Class Template Reference The GpuSparseMatrix class simple wrapper class for a CuSparse matrix. More...
Inheritance diagram for Opm::gpuistl::GpuSparseMatrix< T >:
Detailed Descriptiontemplate<typename T> class Opm::gpuistl::GpuSparseMatrix< T > The GpuSparseMatrix class simple wrapper class for a CuSparse matrix.
Constructor & Destructor Documentation◆ GpuSparseMatrix() [1/2]
template<typename T >
Create the sparse matrix specified by the raw data.
◆ GpuSparseMatrix() [2/2]
template<typename T >
We don't want to be able to copy this for now (too much hassle in copying the cusparse resources) ◆ ~GpuSparseMatrix()
template<typename T >
Member Function Documentation◆ blockSize()
template<typename T >
blockSize size of the blocks References Opm::gpuistl::detail::to_size_t(). ◆ dim()
template<typename T >
dim returns the dimension of the vector space on which this matrix acts This is equivalent to matrix.N() * matrix.blockSize()
References Opm::gpuistl::detail::to_size_t(). ◆ fromMatrix()
template<typename T >
template<class MatrixType >
fromMatrix creates a new matrix with the same block size and values as the given matrix
◆ getColumnIndices() [1/2]
template<typename T >
getColumnIndices returns the column indices used to represent the BSR structure.
◆ getColumnIndices() [2/2]
template<typename T >
getColumnIndices returns the column indices used to represent the BSR structure.
◆ getDescription()
template<typename T >
getDescription the cusparse matrix description. This description is needed for most calls to the CuSparse library ◆ getNonZeroValues() [1/2]
template<typename T >
getNonZeroValues returns the GPU vector containing the non-zero values (ordered by block)
◆ getNonZeroValues() [2/2]
template<typename T >
getNonZeroValues returns the GPU vector containing the non-zero values (ordered by block)
◆ getRowIndices() [1/2]
template<typename T >
getRowIndices returns the row indices used to represent the BSR structure.
◆ getRowIndices() [2/2]
template<typename T >
getRowIndices returns the row indices used to represent the BSR structure.
◆ mv()
template<typename T >
mv performs matrix vector multiply y = Ax
◆ N()
template<typename T >
N returns the number of rows (which is equal to the number of columns) References Opm::gpuistl::detail::to_size_t(). ◆ nonzeroes()
template<typename T >
nonzeroes behaves as the Dune::BCRSMatrix::nonzeros() function and returns the number of non zero blocks
References Opm::gpuistl::detail::to_size_t(). ◆ operator=()
template<typename T >
We don't want to be able to copy this for now (too much hassle in copying the cusparse resources) ◆ setLowerTriangular()
template<typename T >
setLowerTriangular sets the CuSparse flag that this is an lower diagonal (with non-unit diagonal) matrix. ◆ setNonUnitDiagonal()
template<typename T >
setNonUnitDiagonal sets the CuSparse flag that this has non-unit diagional. ◆ setUnitDiagonal()
template<typename T >
setUnitDiagonal sets the CuSparse flag that this has unit diagional. ◆ setUpperTriangular()
template<typename T >
setUpperTriangular sets the CuSparse flag that this is an upper diagonal (with unit diagonal) matrix. ◆ umv()
template<typename T >
umv computes y=Ax+y
◆ updateNonzeroValues()
template<typename T >
template<class MatrixType >
updateNonzeroValues updates the non-zero values by using the non-zero values of the supplied matrix
Referenced by Opm::gpuistl::SolverAdapter< Operator, UnderlyingSolver, X >::apply(). ◆ usmv()
template<typename T >
umv computes y=alpha * Ax + y
The documentation for this class was generated from the following file: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||