|
| constexpr | DiagonalMatrix ()=default |
| | Default constructor.
|
| | DiagonalMatrix (const K &k) |
| | Constructor initializing the whole matrix with a scalar.
|
| | DiagonalMatrix (const FieldVector< K, n > &diag) |
| | Constructor initializing the diagonal with a vector.
|
| | DiagonalMatrix (std::initializer_list< K > const &l) |
| | Construct diagonal matrix from an initializer list.
|
| DiagonalMatrix & | operator= (const K &k) |
| | Assignment from a scalar.
|
| bool | identical (const DiagonalMatrix< K, n > &other) const |
| | Check if matrix is the same object as the other matrix.
|
| DiagonalMatrix< K, n > | transposed () const |
| | Return transposed of the matrix as DiagonalMatrix.
|
| Iterator | begin () |
| | begin iterator
|
| Iterator | end () |
| | end iterator
|
| Iterator | beforeEnd () |
| Iterator | beforeBegin () |
| ConstIterator | begin () const |
| | begin iterator
|
| ConstIterator | end () const |
| | end iterator
|
| ConstIterator | beforeEnd () const |
| ConstIterator | beforeBegin () const |
| DiagonalMatrix & | operator+= (const DiagonalMatrix &y) |
| | vector space addition
|
| DiagonalMatrix & | operator-= (const DiagonalMatrix &y) |
| | vector space subtraction
|
| DiagonalMatrix & | operator+= (const K &k) |
| | vector space multiplication with scalar
|
| DiagonalMatrix & | operator-= (const K &k) |
| | vector space division by scalar
|
| DiagonalMatrix & | operator*= (const K &k) |
| | vector space multiplication with scalar
|
| DiagonalMatrix & | operator/= (const K &k) |
| | vector space division by scalar
|
| bool | operator== (const DiagonalMatrix &other) const |
| | comparison operator
|
| bool | operator!= (const DiagonalMatrix &other) const |
| | incomparison operator
|
| template<class X, class Y> |
| void | mv (const X &x, Y &y) const |
| | y = A x
|
| template<class X, class Y> |
| void | mtv (const X &x, Y &y) const |
| | y = A^T x
|
| template<class X, class Y> |
| void | umv (const X &x, Y &y) const |
| | y += A x
|
| template<class X, class Y> |
| void | umtv (const X &x, Y &y) const |
| | y += A^T x
|
| template<class X, class Y> |
| void | umhv (const X &x, Y &y) const |
| | y += A^H x
|
| template<class X, class Y> |
| void | mmv (const X &x, Y &y) const |
| | y -= A x
|
| template<class X, class Y> |
| void | mmtv (const X &x, Y &y) const |
| | y -= A^T x
|
| template<class X, class Y> |
| void | mmhv (const X &x, Y &y) const |
| | y -= A^H x
|
| template<class X, class Y> |
| void | usmv (const typename FieldTraits< Y >::field_type &alpha, const X &x, Y &y) const |
| | y += alpha A x
|
| template<class X, class Y> |
| void | usmtv (const typename FieldTraits< Y >::field_type &alpha, const X &x, Y &y) const |
| | y += alpha A^T x
|
| template<class X, class Y> |
| void | usmhv (const typename FieldTraits< Y >::field_type &alpha, const X &x, Y &y) const |
| | y += alpha A^H x
|
| double | frobenius_norm () const |
| | frobenius norm: sqrt(sum over squared values of entries)
|
| double | frobenius_norm2 () const |
| | square of frobenius norm, need for block recursion
|
| double | infinity_norm () const |
| | infinity norm (row sum norm, how to generalize for blocks?)
|
| double | infinity_norm_real () const |
| | simplified infinity norm (uses Manhattan norm for complex values)
|
| template<class V> |
| void | solve (V &x, const V &b) const |
| | Solve system A x = b.
|
| void | invert () |
| | Compute inverse.
|
| K | determinant () const |
| | calculates the determinant of this matrix
|
| bool | exists (size_type i, size_type j) const |
| | return true when (i,j) is in pattern
|
| reference | operator[] (size_type i) |
| | Return reference object as row replacement.
|
| const_reference | operator[] (size_type i) const |
| | Return const_reference object as row replacement.
|
| const K & | diagonal (size_type i) const |
| | Get const reference to diagonal entry.
|
| K & | diagonal (size_type i) |
| | Get reference to diagonal entry.
|
| const FieldVector< K, n > & | diagonal () const |
| | Get const reference to diagonal vector.
|
| FieldVector< K, n > & | diagonal () |
| | Get reference to diagonal vector.
|
template<class K, int n>
class Dune::DiagonalMatrix< K, n >
A diagonal matrix of static size.
This is meant to be a replacement of FieldMatrix for the case that it is a diagonal matrix.
- Template Parameters
-
| K | Type used for scalars |
| n | Matrix size |