|
| Matrix () |
| Create empty matrix.
|
|
| Matrix (size_type rows, size_type cols) |
| Create uninitialized matrix of size rows x cols.
|
|
void | setSize (size_type rows, size_type cols) |
| Change the matrix size. More...
|
|
RowIterator | begin () |
| Get iterator to first row.
|
|
RowIterator | end () |
| Get iterator to one beyond last row.
|
|
RowIterator | beforeEnd () |
|
RowIterator | beforeBegin () |
|
ConstRowIterator | begin () const |
| Get const iterator to first row.
|
|
ConstRowIterator | end () const |
| Get const iterator to one beyond last row.
|
|
ConstRowIterator | beforeEnd () const |
|
ConstRowIterator | beforeBegin () const |
|
Matrix & | operator= (const field_type &t) |
| Assignment from scalar.
|
|
row_type | operator[] (size_type row) |
| The index operator.
|
|
const row_type | operator[] (size_type row) const |
| The const index operator.
|
|
size_type | N () const |
| Return the number of rows.
|
|
size_type | M () const |
| Return the number of columns.
|
|
Matrix< T > & | operator*= (const field_type &scalar) |
| Multiplication with a scalar.
|
|
Matrix< T > & | operator/= (const field_type &scalar) |
| Division by a scalar.
|
|
Matrix & | operator+= (const Matrix &b) |
| Add the entries of another matrix to this one. More...
|
|
Matrix & | operator-= (const Matrix &b) |
| Subtract the entries of another matrix from this one. More...
|
|
Matrix | transpose () const |
| Return the transpose of the matrix.
|
|
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 | mmv (const X &x, Y &y) const |
| y -= A x
|
|
template<class X , class Y > |
void | usmv (const field_type &alpha, const X &x, Y &y) const |
| \( y += \alpha 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 | mmtv (const X &x, Y &y) const |
| y -= A^T x
|
|
template<class X , class Y > |
void | usmtv (const field_type &alpha, const X &x, Y &y) const |
| y += alpha 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 | mmhv (const X &x, Y &y) const |
| y -= A^H x
|
|
template<class X , class Y > |
void | usmhv (const field_type &alpha, const X &x, Y &y) const |
| y += alpha A^H x
|
|
FieldTraits< field_type >::real_type | frobenius_norm () const |
| frobenius norm: sqrt(sum over squared values of entries)
|
|
FieldTraits< field_type >::real_type | frobenius_norm2 () const |
| square of frobenius norm, need for block recursion
|
|
template<typename ft = field_type, typename std::enable_if<!HasNaN< ft >::value, int >::type = 0> |
FieldTraits< ft >::real_type | infinity_norm () const |
| infinity norm (row sum norm, how to generalize for blocks?)
|
|
template<typename ft = field_type, typename std::enable_if<!HasNaN< ft >::value, int >::type = 0> |
FieldTraits< ft >::real_type | infinity_norm_real () const |
| simplified infinity norm (uses Manhattan norm for complex values)
|
|
template<typename ft = field_type, typename std::enable_if< HasNaN< ft >::value, int >::type = 0> |
FieldTraits< ft >::real_type | infinity_norm () const |
| infinity norm (row sum norm, how to generalize for blocks?)
|
|
template<typename ft = field_type, typename std::enable_if< HasNaN< ft >::value, int >::type = 0> |
FieldTraits< ft >::real_type | infinity_norm_real () const |
| simplified infinity norm (uses Manhattan norm for complex values)
|
|
bool | exists (size_type i, size_type j) const |
| return true if (i,j) is in pattern
|
|
template<class T, class A = std::allocator<T>>
class Dune::Matrix< T, A >
A generic dynamic dense matrix.