Ginkgo
Generated from pipelines/1556235455 branch based on develop. Ginkgo version 1.9.0
A numerical linear algebra library targeting many-core architectures
|
The diagonal of a LinOp implementing this interface can be extracted. More...
#include <ginkgo/core/base/lin_op.hpp>
Public Types | |
using | value_type = ValueType |
Public Member Functions | |
std::unique_ptr< LinOp > | extract_diagonal_linop () const override |
Extracts the diagonal entries of the matrix into a vector. More... | |
virtual std::unique_ptr< matrix::Diagonal< ValueType > > | extract_diagonal () const =0 |
Extracts the diagonal entries of the matrix into a vector. More... | |
The diagonal of a LinOp implementing this interface can be extracted.
extract_diagonal extracts the elements whose col and row index are the same and stores the result in a min(nrows, ncols) x 1 dense matrix.
|
pure virtual |
Extracts the diagonal entries of the matrix into a vector.
diag | the vector into which the diagonal will be written |
Implemented in gko::matrix::Csr< ValueType, IndexType >, gko::matrix::Dense< ValueType >, gko::matrix::Dense< value_type >, gko::matrix::Hybrid< ValueType, IndexType >, gko::matrix::Fbcsr< ValueType, IndexType >, gko::matrix::Ell< ValueType, IndexType >, gko::matrix::Coo< ValueType, IndexType >, and gko::matrix::Sellp< ValueType, IndexType >.
|
overridevirtual |
Extracts the diagonal entries of the matrix into a vector.
Implements gko::DiagonalLinOpExtractable.