A templated (M x N) rectangular matrix of objects of <Type>, containing M*N elements, derived from Matrix.
More...
|
| | RectangularMatrix ()=default |
| | Default construct. More...
|
| |
| | RectangularMatrix (const RectangularMatrix &)=default |
| | Copy construct. More...
|
| |
| RectangularMatrix & | operator= (const RectangularMatrix &)=default |
| | Copy assignment. More...
|
| |
| | RectangularMatrix (const label n) |
| | Construct a square matrix (rows == columns) More...
|
| |
| | RectangularMatrix (const label m, const label n) |
| | Construct given number of rows/columns. More...
|
| |
| | RectangularMatrix (const label m, const label n, const Foam::zero) |
| | Construct given number of rows/columns initializing all elements to zero. More...
|
| |
| | RectangularMatrix (const label m, const label n, const Type &val) |
| | Construct given number of rows/columns initializing all elements to the given value. More...
|
| |
| template<class AnyType > |
| | RectangularMatrix (const labelPair &dims, const Identity< AnyType >) |
| | Construct for given number of rows/columns initializing all elements to zero, and diagonal to one. More...
|
| |
| | RectangularMatrix (const labelPair &dims) |
| | Construct given number of rows/columns by using a label pair. More...
|
| |
| | RectangularMatrix (const labelPair &dims, const Foam::zero) |
| | Construct given number of rows/columns by using a label pair and initializing all elements to zero. More...
|
| |
| | RectangularMatrix (const labelPair &dims, const Type &val) |
| | Construct given number of rows/columns by using a label pair and initializing all elements to the given value. More...
|
| |
| template<class MatrixType > |
| | RectangularMatrix (const ConstMatrixBlock< MatrixType > &mat) |
| | Construct from a block of another matrix. More...
|
| |
| template<class MatrixType > |
| | RectangularMatrix (const MatrixBlock< MatrixType > &mat) |
| | Construct from a block of another matrix. More...
|
| |
| | RectangularMatrix (const SquareMatrix< Type > &mat) |
| | Construct as copy of a square matrix. More...
|
| |
| | RectangularMatrix (Istream &is) |
| | Construct from Istream. More...
|
| |
| autoPtr< RectangularMatrix< Type > > | clone () const |
| | Clone. More...
|
| |
| void | operator= (RectangularMatrix< Type > &&mat) |
| | Move assignment. More...
|
| |
| void | operator= (const Foam::zero) |
| | Assign all elements to zero. More...
|
| |
| void | operator= (const Type &val) |
| | Assign all elements to value. More...
|
| |
| Foam::tmp< Foam::Field< Type > > | AmulImpl (const ListType &x) const |
| |
| Foam::tmp< Foam::Field< Type > > | TmulImpl (const ListType &x) const |
| |
| | Matrix () noexcept |
| | Default construct (empty matrix) More...
|
| |
| | Matrix (const label m, const label n) |
| | Construct given number of rows/columns. More...
|
| |
| | Matrix (const label m, const label n, const Foam::zero) |
| | Construct with given number of rows/columns initializing all elements to zero. More...
|
| |
| | Matrix (const label m, const label n, const Type &val) |
| | Construct with given number of rows/columns initializing all elements to the given value. More...
|
| |
| | Matrix (const labelPair &dims) |
| | Construct given number of rows/columns. More...
|
| |
| | Matrix (const labelPair &dims, const Foam::zero) |
| | Construct given number of rows/columns initializing all elements to zero. More...
|
| |
| | Matrix (const labelPair &dims, const Type &val) |
| | Construct with given number of rows/columns initializing all elements to the given value. More...
|
| |
| | Matrix (const Matrix< RectangularMatrix< Type >, Type > &mat) |
| | Copy construct. More...
|
| |
| | Matrix (Matrix< RectangularMatrix< Type >, Type > &&mat) |
| | Move construct. More...
|
| |
| | Matrix (const Matrix< Form2, Type > &mat) |
| | Copy constructor from Matrix of a different form. More...
|
| |
| | Matrix (const ConstMatrixBlock< MatrixType > &Mb) |
| | Construct from a block of another Matrix. More...
|
| |
| | Matrix (const MatrixBlock< MatrixType > &Mb) |
| | Construct from a block of another Matrix. More...
|
| |
| | Matrix (Istream &is) |
| | Construct from Istream. More...
|
| |
| autoPtr< mType > | clone () const |
| | Clone. More...
|
| |
| | ~Matrix () |
| | Destructor. More...
|
| |
| label | m () const noexcept |
| | The number of rows. More...
|
| |
| label | n () const noexcept |
| | The number of columns. More...
|
| |
| label | size () const |
| | The number of elements in Matrix (m*n) More...
|
| |
| labelPair | sizes () const |
| | Return row/column sizes. More...
|
| |
| bool | empty () const noexcept |
| | Return true if Matrix is empty (i.e., size() is zero) More...
|
| |
| const Type * | cdata () const noexcept |
| | Return const pointer to the first data element, which can also be used to address into Matrix contents. More...
|
| |
| Type * | data () noexcept |
| | Return pointer to the first data element, which can also be used to address into Matrix contents. More...
|
| |
| const char * | cdata_bytes () const noexcept |
| | Return pointer to the underlying array serving as data storage, reinterpreted as byte data. More...
|
| |
| char * | data_bytes () noexcept |
| | Return pointer to the underlying array serving as data storage, reinterpreted as byte data. More...
|
| |
| std::streamsize | size_bytes () const noexcept |
| | Number of contiguous bytes for the Matrix data, no runtime check that the type is actually contiguous. More...
|
| |
| std::streamsize | byteSize () const |
| | Number of contiguous bytes for the Matrix data, runtime FatalError if type is not contiguous. More...
|
| |
| const Type * | rowData (const label irow) const |
| | Return const pointer to data in the specified row. More...
|
| |
| Type * | rowData (const label irow) |
| | Return pointer to data in the specified row. More...
|
| |
| const Type & | at (const label idx) const |
| | Linear addressing const element access. More...
|
| |
| Type & | at (const label idx) |
| | Linear addressing element access. More...
|
| |
| ConstMatrixBlock< mType > | subColumn (const label colIndex, const label rowIndex=0, label len=-1) const |
| | Return const column or column's subset of Matrix. More...
|
| |
| MatrixBlock< mType > | subColumn (const label colIndex, const label rowIndex=0, label len=-1) |
| | Return column or column's subset of Matrix. More...
|
| |
| ConstMatrixBlock< mType > | subRow (const label rowIndex, const label colIndex=0, label len=-1) const |
| | Return const row or const row's subset of Matrix. More...
|
| |
| MatrixBlock< mType > | subRow (const label rowIndex, const label colIndex=0, label len=-1) |
| | Return row or row's subset of Matrix. More...
|
| |
| ConstMatrixBlock< mType > | subMatrix (const label rowIndex, const label colIndex, label szRows=-1, label szCols=-1) const |
| | Return const sub-block of Matrix. More...
|
| |
| MatrixBlock< mType > | subMatrix (const label rowIndex, const label colIndex, label szRows=-1, label szCols=-1) |
| | Return sub-block of Matrix. More...
|
| |
| ConstMatrixBlock< mType > | block (const label rowIndex, const label colIndex) const |
| | Access Field as a ConstMatrixBlock. More...
|
| |
| MatrixBlock< mType > | block (const label rowIndex, const label colIndex) |
| | Access Field as a MatrixBlock. More...
|
| |
| ConstMatrixBlock< mType > | block (const label m, const label n, const label mStart, const label nStart) const |
| | Deprecated(2019-04) - use subMatrix() More...
|
| |
| MatrixBlock< mType > | block (const label m, const label n, const label mStart, const label nStart) |
| | Deprecated(2019-04) - use subMatrix() More...
|
| |
| Foam::ConstMatrixBlock< Foam::Matrix< RectangularMatrix< Type >, Type > > | block (const label rowIndex, const label colIndex) const |
| |
| Foam::MatrixBlock< Foam::Matrix< RectangularMatrix< Type >, Type > > | block (const label rowIndex, const label colIndex) |
| |
| void | checki (const label irow) const |
| | Check index i is within valid range [0, m) More...
|
| |
| void | checkj (const label jcol) const |
| | Check index j is within valid range [0, n) More...
|
| |
| void | checkSize () const |
| | Check that dimensions are positive, non-zero. More...
|
| |
| bool | uniform () const |
| | True if all entries have identical values, and Matrix is non-empty. More...
|
| |
| void | clear () |
| | Clear Matrix, i.e. set sizes to zero. More...
|
| |
| List< Type > | release () |
| | Release storage management of Matrix contents by transferring management to a List. More...
|
| |
| void | swap (Matrix< RectangularMatrix< Type >, Type > &mat) |
| | Swap contents. More...
|
| |
| void | transfer (Matrix< RectangularMatrix< Type >, Type > &mat) |
| | Transfer the contents of the argument Matrix into this Matrix and annul the argument Matrix. More...
|
| |
| void | resize (const label m, const label n) |
| | Change Matrix dimensions, preserving the elements. More...
|
| |
| void | resize_nocopy (const label mrow, const label ncol) |
| | Change Matrix dimensions without preserving existing content. More...
|
| |
| void | setSize (const label m, const label n) |
| | Change Matrix dimensions, preserving the elements. More...
|
| |
| void | shallowResize (const label m, const label n) |
| | Resize Matrix without reallocating storage (unsafe) More...
|
| |
| void | round (const scalar tol=SMALL) |
| | Round elements with magnitude smaller than tol (SMALL) to zero. More...
|
| |
| RectangularMatrix< Type > | T () const |
| | Return conjugate transpose of Matrix. More...
|
| |
| RectangularMatrix< Type > | transpose () const |
| | Return non-conjugate transpose of Matrix. More...
|
| |
| tmp< Field< Type > > | Amul (const UList< Type > &x) const |
| | Right-multiply Matrix by a column vector (A * x) More...
|
| |
| tmp< Field< Type > > | Amul (const IndirectListBase< Type, Addr > &x) const |
| | Right-multiply Matrix by a column vector (A * x) More...
|
| |
| Foam::tmp< Foam::Field< Type > > | Amul (const IndirectListBase< Type, Addr > &x) const |
| |
| tmp< Field< Type > > | Tmul (const UList< Type > &x) const |
| | Left-multiply Matrix by a row vector (x * A) More...
|
| |
| tmp< Field< Type > > | Tmul (const IndirectListBase< Type, Addr > &x) const |
| | Left-multiply Matrix by a row vector (x * A) More...
|
| |
| Foam::tmp< Foam::Field< Type > > | Tmul (const IndirectListBase< Type, Addr > &x) const |
| |
| List< Type > | diag () const |
| | Extract the diagonal elements. Method may change in the future. More...
|
| |
| void | diag (const UList< Type > &list) |
| | Assign diagonal of Matrix. More...
|
| |
| Type | trace () const |
| | Return the trace. More...
|
| |
| scalar | columnNorm (const label colIndex, const bool noSqrt=false) const |
| | Return L2-Norm of chosen column. More...
|
| |
| scalar | norm (const bool noSqrt=false) const |
| | Return Frobenius norm of Matrix. More...
|
| |
| const Type * | operator[] (const label irow) const |
| | Return const pointer to data in the specified row - rowData(). More...
|
| |
| Type * | operator[] (const label irow) |
| | Return pointer to data in the specified row - rowData(). More...
|
| |
| const Type & | operator() (const label irow, const label jcol) const |
| | (i, j) const element access operator More...
|
| |
| Type & | operator() (const label irow, const label jcol) |
| | (i, j) element access operator More...
|
| |
| void | operator= (const Matrix< RectangularMatrix< Type >, Type > &mat) |
| | Copy assignment. Takes linear time. More...
|
| |
| void | operator= (Matrix< RectangularMatrix< Type >, Type > &&mat) |
| | Move assignment. More...
|
| |
| void | operator= (const ConstMatrixBlock< MatrixType > &Mb) |
| | Assignment to a block of another Matrix. More...
|
| |
| void | operator= (const MatrixBlock< MatrixType > &Mb) |
| | Assignment to a block of another Matrix. More...
|
| |
| void | operator= (const Foam::zero) |
| | Assignment of all elements to zero. More...
|
| |
| void | operator= (const Type &val) |
| | Assignment of all elements to the given value. More...
|
| |
| void | operator+= (const Matrix< RectangularMatrix< Type >, Type > &other) |
| | Matrix addition. More...
|
| |
| void | operator+= (const Type &s) |
| | Matrix scalar addition. More...
|
| |
| void | operator-= (const Matrix< RectangularMatrix< Type >, Type > &other) |
| | Matrix subtraction. More...
|
| |
| void | operator-= (const Type &s) |
| | Matrix scalar subtraction. More...
|
| |
| void | operator*= (const Type &s) |
| | Matrix scalar multiplication. More...
|
| |
| void | operator/= (const Type &s) |
| | Matrix scalar division. More...
|
| |
| iterator | begin () noexcept |
| | Return an iterator to begin traversing a Matrix. More...
|
| |
| const_iterator | begin () const noexcept |
| | Return const_iterator to begin traversing a constant Matrix. More...
|
| |
| iterator | end () noexcept |
| | Return an iterator to end traversing a Matrix. More...
|
| |
| const_iterator | end () const noexcept |
| | Return const_iterator to end traversing a constant Matrix. More...
|
| |
| const_iterator | cbegin () const noexcept |
| | Return const_iterator to begin traversing a constant Matrix. More...
|
| |
| const_iterator | cend () const noexcept |
| | Return const_iterator to end traversing a constant Matrix. More...
|
| |
| bool | readMatrix (Istream &is) |
| | Read Matrix from Istream, discarding existing contents. More...
|
| |
| Ostream & | writeMatrix (Ostream &os, const label shortLen=0) const |
| | Write Matrix, with line-breaks in ASCII when length exceeds shortLen. More...
|
| |
| label | mRows () const noexcept |
| | The number of rows - same as m() More...
|
| |
| label | nRows () const noexcept |
| | The number of rows - same as m() More...
|
| |
| label | nCols () const noexcept |
| | The number of columns - same as n() More...
|
| |
| const Type * | v () const |
| | Deprecated(2019-04) raw data pointer, const access. More...
|
| |
| Type * | v () |
| | Deprecated(2019-04) raw data pointer, non-const access. More...
|
| |
| ConstMatrixBlock< mType > | col (const label m, const label mStart, const label nStart) const |
| | Deprecated(2019-04) - use subColumn() More...
|
| |
| MatrixBlock< mType > | col (const label m, const label mStart, const label nStart) |
| | Deprecated(2019-04) - use subColumn() More...
|
| |
| void | col (const label m, const label rowStart) const=delete |
| | Deleted(2019-04) - use subColumn() More...
|
| |
| void | col (const label m, const label rowStart)=delete |
| | Deleted(2019-04) - use subColumn() More...
|
| |