A templated (m x n) matrix of objects of <T>. The layout is (mRows x nCols) - row-major order: More...
#include <Matrix.H>

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

| Matrix | ( | const label | m, |
| const label | n ) |
Construct given number of rows/columns, uninitialised content.
Definition at line 101 of file Matrix.C.
References checkSize(), m(), and n().

| Matrix | ( | const label | m, |
| const label | n, | ||
| Foam::zero | ) |
Construct with given number of rows/columns initializing all elements to zero.
Definition at line 114 of file Matrix.C.
References begin(), checkSize(), m(), n(), size(), and Foam::Zero.

| Matrix | ( | const label | m, |
| const label | n, | ||
| const Type & | val ) |
|
inlineexplicit |
|
inline |
|
inline |
| Matrix | ( | const Matrix< Form, Type > & | mat | ) |
| Matrix | ( | Matrix< Form, Type > && | mat | ) |
|
explicit |
|
inline |
|
inline |
|
explicit |
Construct from Istream.
Definition at line 30 of file MatrixIO.C.
References Matrix(), and readMatrix().

|
inlinestaticnoexcept |
Return a null Matrix (reference to a nullObject). Behaves like a empty Matrix.
Definition at line 152 of file Matrix.H.
References Matrix(), Foam::noexcept, and Foam::NullObjectRef().

|
inline |
Clone.
Definition at line 74 of file MatrixI.H.
References Foam::New().

|
inlinenoexcept |
The number of rows.
Definition at line 251 of file Matrix.H.
References mRows(), and Foam::noexcept.
Referenced by mRows().


|
inlinenoexcept |
The number of rows.
Definition at line 256 of file Matrix.H.
References Foam::noexcept.
Referenced by LUscalarMatrix::LUscalarMatrix(), and writeMatrix().

|
inlinenoexcept |
The number of rows.
Definition at line 261 of file Matrix.H.
References Foam::noexcept.
Referenced by Matrix< RectangularMatrix< Type >, Type >::AmulImpl(), Foam::applyPermutation(), block(), block(), block(), col(), col(), col(), col(), LLTMatrix< Type >::decompose(), Foam::detDecomposed(), Foam::detDecomposed(), STDMD::initialise(), LUscalarMatrix::inv(), QRMatrix< MatrixType >::inv(), Foam::LUBacksubstitute(), Foam::LUBacksubstitute(), Foam::LUDecompose(), Foam::LUDecompose(), Matrix(), Matrix(), Matrix(), Matrix(), Matrix(), Matrix(), Foam::operator&(), operator+=(), simpleMatrix< Type >::operator=(), Foam::outer(), Foam::MatrixTools::pinv(), RectangularMatrix< scalar >::RectangularMatrix(), RectangularMatrix< scalar >::RectangularMatrix(), RectangularMatrix< scalar >::RectangularMatrix(), resize(), SquareMatrix< Foam::pTraits< Type >::cmptType >::resize(), SquareMatrix< scalar >::resize(), SquareMatrix< scalar >::resize(), setSize(), SquareMatrix< scalar >::setSize(), shallowResize(), SquareMatrix< scalar >::shallowResize(), LUscalarMatrix::solve(), LUscalarMatrix::solve(), QRMatrix< MatrixType >::solve(), Foam::solve(), SquareMatrix< scalar >::sortPermutation(), SquareMatrix< scalar >::SquareMatrix(), Foam::symmOuter(), T(), Matrix< RectangularMatrix< Type >, Type >::TmulImpl(), and transpose().
|
inlinenoexcept |
The number of columns.
Definition at line 266 of file Matrix.H.
References Foam::noexcept.
Referenced by LUscalarMatrix::LUscalarMatrix(), and writeMatrix().

|
inlinenoexcept |
The number of columns.
Definition at line 271 of file Matrix.H.
References Foam::noexcept.
Referenced by Matrix< RectangularMatrix< Type >, Type >::AmulImpl(), block(), block(), block(), updateMethod::leftMult(), Matrix(), Matrix(), Matrix(), Matrix(), Matrix(), Matrix(), Foam::operator&(), operator+=(), Foam::outer(), Foam::MatrixTools::pinv(), RectangularMatrix< scalar >::RectangularMatrix(), RectangularMatrix< scalar >::RectangularMatrix(), RectangularMatrix< scalar >::RectangularMatrix(), RectangularMatrix< scalar >::RectangularMatrix(), resize(), SquareMatrix< Foam::pTraits< Type >::cmptType >::resize(), SquareMatrix< scalar >::resize(), SquareMatrix< scalar >::resize_nocopy(), updateMethod::rightMult(), setSize(), shallowResize(), simpleMatrix< Type >::simpleMatrix(), SquareMatrix< scalar >::SquareMatrix(), SquareMatrix< scalar >::SquareMatrix(), SquareMatrix< scalar >::SquareMatrix(), SquareMatrix< scalar >::SquareMatrix(), SquareMatrix< scalar >::SquareMatrix(), SymmetricSquareMatrix< scalar >::SymmetricSquareMatrix(), SymmetricSquareMatrix< scalar >::SymmetricSquareMatrix(), SymmetricSquareMatrix< scalar >::SymmetricSquareMatrix(), SymmetricSquareMatrix< scalar >::SymmetricSquareMatrix(), Foam::symmOuter(), and Matrix< RectangularMatrix< Type >, Type >::TmulImpl().

|
inlinenoexcept |
Return true if Matrix is empty (i.e., size() is zero).
Definition at line 97 of file MatrixI.H.
References Foam::noexcept.
Referenced by Foam::max(), and Foam::min().

|
inlinenoexcept |
The number of elements in Matrix (m*n).
Definition at line 83 of file MatrixI.H.
References Foam::noexcept.
Referenced by at(), at(), Matrix(), Matrix(), operator=(), operator=(), readMatrix(), release(), uniform(), and writeMatrix().

|
inlinenoexcept |
Return row/column sizes.
Definition at line 90 of file MatrixI.H.
References Foam::noexcept.
Referenced by Foam::applyPermutation(), Foam::operator*(), Foam::operator+(), Foam::operator-(), Foam::operator-(), Foam::operator-(), and Foam::operator/().

|
inlinenoexcept |
|
inlinenoexcept |
Return pointer to the first data element, which can also be used to address into Matrix contents.
Definition at line 183 of file MatrixI.H.
References Foam::noexcept.
|
inlinenoexcept |
Return pointer to the underlying array serving as data storage, reinterpreted as byte data.
Definition at line 190 of file MatrixI.H.
References Foam::noexcept.
Referenced by writeMatrix().

|
inlinenoexcept |
Return pointer to the underlying array serving as data storage, reinterpreted as byte data.
Definition at line 197 of file MatrixI.H.
References Foam::noexcept.
Referenced by readMatrix().

|
inlinenoexcept |
Number of contiguous bytes for the Matrix data, no runtime check that the type is actually contiguous.
Definition at line 204 of file MatrixI.H.
References Foam::noexcept.
Referenced by readMatrix(), and writeMatrix().

| std::streamsize byteSize | ( | ) | const |
Number of contiguous bytes for the Matrix data, runtime FatalError if type is not contiguous.
Definition at line 501 of file Matrix.C.
References Foam::is_contiguous_v.
|
inline |
|
inline |
|
inline |
|
inline |
Linear addressing element access.
Subscript checking only with FULLDEBUG
Definition at line 246 of file MatrixI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and size().

|
inline |
Return const column or column's subset of Matrix.
Return entire column by its index: M.subColumn(a); Return subset of a column starting from rowIndex: M.subColumn(a, b); Return subset of a column starting from rowIndex with szRows elems: M.subColumn(a, b, c);
Definition at line 262 of file MatrixI.H.
Referenced by Foam::applyPermutation(), SquareMatrix< Type >::applyPermutation(), block(), col(), and col().

|
inline |
Return const row or const row's subset of Matrix.
Return entire row by its index: M.subRow(a); Return subset of a row starting from columnIndex: M.subRow(a,b); Return subset of a row starting from columnIndex with szCols elems: M.subRow(a, b, c);
Definition at line 287 of file MatrixI.H.
Referenced by block().

|
inline |
|
inline |
Access Field as a ConstMatrixBlock.
References block(), subColumn(), subMatrix(), and subRow().
Referenced by block(), block(), block(), and block().


|
inline |
|
inline |
|
inline |
|
inline |
Access Field as a MatrixBlock.
References Amul(), block(), checki(), checkj(), checkSize(), clear(), m(), Matrix(), n(), release(), resize(), resize_nocopy(), round(), setSize(), shallowResize(), swap(), T(), transfer(), transpose(), uniform(), and x.

|
inline |
Check index i is within valid range [0, m).
Definition at line 104 of file MatrixI.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
Referenced by block(), operator()(), operator()(), operator[](), operator[](), rowData(), and rowData().


|
inline |
Check index j is within valid range [0, n).
Definition at line 122 of file MatrixI.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
Referenced by block(), operator()(), and operator()().


|
inline |
Check that dimensions are positive, non-zero.
Definition at line 140 of file MatrixI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and Foam::nl.
Referenced by block(), Matrix(), Matrix(), and Matrix().


|
inline |
| void clear | ( | ) |
Clear Matrix, i.e. set sizes to zero.
Definition at line 248 of file Matrix.C.
References Foam::ListPolicy::deallocate().
Referenced by block().


| Foam::List< Type > release | ( | ) |
| void swap | ( | Matrix< Form, Type > & | mat | ) |
| void transfer | ( | Matrix< Form, Type > & | mat | ) |
| void resize | ( | const label | m, |
| const label | n ) |
Change Matrix dimensions, preserving the elements.
Definition at line 314 of file Matrix.C.
References m(), Matrix(), Foam::min(), and n().
Referenced by block(), and Foam::MatrixTools::pinv().


| void resize_nocopy | ( | const label | mrow, |
| const label | ncol ) |
|
inline |
|
inline |
| void round | ( | const scalar | tol = SMALL | ) |
Round elements with magnitude smaller than tol (SMALL) to zero.
Definition at line 369 of file Matrix.C.
References Foam::mag(), and Foam::Zero.
Referenced by block().


| Form T | ( | ) | const |
Return conjugate transpose of Matrix.
Definition at line 382 of file Matrix.C.
References Foam::Detail::conj(), m(), and n.
Referenced by block(), and chemPointISAT< CompType, ThermoType >::chemPointISAT().


| Form transpose | ( | ) | const |
|
inline |
Right-multiply Matrix by a column vector (A * x).
Definition at line 464 of file MatrixI.H.
Referenced by Amul(), block(), Matrix< RectangularMatrix< Type >, Type >::operator()(), and Foam::operator*().

|
inline |
|
inline |
Left-multiply Matrix by a row vector (x * A).
Definition at line 485 of file MatrixI.H.
References x.
Referenced by Amul(), Foam::operator*(), Foam::operator*(), and Tmul().

|
inline |
Left-multiply Matrix by a row vector (x * A).
References begin(), cbegin(), cend(), columnNorm(), diag(), end(), Foam::FOAM_DEPRECATED_FOR(), Matrix(), Foam::noexcept, norm(), os(), readMatrix(), s(), Tmul(), trace(), writeMatrix(), and x.

| Foam::List< Type > diag | ( | ) | const |
Extract the diagonal elements. Method may change in the future.
Definition at line 416 of file Matrix.C.
References Foam::min().
Referenced by fvMatrixExpression< E, DiagExpr, UpperExpr, LowerExpr, FaceFluxExpr, SourceExpr >::evaluate(), and Tmul().


| void diag | ( | const UList< Type > & | list | ) |
Assign diagonal of Matrix.
Definition at line 432 of file Matrix.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::min(), and UList< T >::size().

| Type trace | ( | ) | const |
Return the trace.
Definition at line 453 of file Matrix.C.
References Foam::min(), and Foam::Zero.
Referenced by Tmul().


| Foam::scalar columnNorm | ( | const label | colIndex, |
| const bool | noSqrt = false ) const |
Return L2-Norm of chosen column.
Optional without sqrt for parallel usage.
Definition at line 469 of file Matrix.C.
References Foam::magSqr(), and Foam::sqrt().
Referenced by Tmul().


| Foam::scalar norm | ( | const bool | noSqrt = false | ) | const |
|
inline |
Return const pointer to data in the specified row - rowData().
Subscript checking only with FULLDEBUG
Definition at line 588 of file MatrixI.H.
References checki().
Referenced by LUscalarMatrix::LUscalarMatrix().


|
inline |
|
inline |
|
inline |
| void operator= | ( | const Matrix< Form, Type > & | mat | ) |
| void operator= | ( | Matrix< Form, Type > && | mat | ) |
Move assignment.
Definition at line 539 of file Matrix.C.
References Matrix(), and transfer().

| void operator= | ( | const ConstMatrixBlock< MatrixType > & | Mb | ) |
| void operator= | ( | const MatrixBlock< MatrixType > & | Mb | ) |
| void operator= | ( | Foam::zero | ) |
Assignment of all elements to zero.
Definition at line 591 of file Matrix.C.
References begin(), size(), and Foam::Zero.

| void operator= | ( | const Type & | val | ) |
| void operator+= | ( | const Matrix< Form, Type > & | other | ) |
Matrix addition.
Definition at line 598 of file Matrix.C.
References Foam::abort(), cbegin(), Foam::FatalError, FatalErrorInFunction, m(), Matrix(), n(), n, and Foam::nl.

| void operator-= | ( | const Matrix< Form, Type > & | other | ) |
| void operator+= | ( | const Type & | s | ) |
| void operator-= | ( | const Type & | s | ) |
| void operator*= | ( | const Type & | s | ) |
| void operator/= | ( | const Type & | s | ) |
|
inlinenoexcept |
Return an iterator to begin traversing a Matrix.
Definition at line 509 of file MatrixI.H.
References Foam::noexcept.
Referenced by Matrix(), Matrix(), operator=(), operator=(), readMatrix(), and Tmul().

|
inlinenoexcept |
Return an iterator to end traversing a Matrix.
Definition at line 517 of file MatrixI.H.
References Foam::noexcept.
Referenced by Foam::operator-(), Foam::operator-(), Foam::operator/(), and Tmul().

|
inlinenoexcept |
Return const_iterator to begin traversing a constant Matrix.
Definition at line 525 of file MatrixI.H.
References Foam::noexcept.
Referenced by STDMD::initialise(), Foam::max(), Foam::min(), Foam::operator*(), Foam::operator+(), operator+=(), Foam::operator-(), Foam::operator-(), Foam::operator-(), Foam::operator/(), Tmul(), and writeMatrix().

|
inlinenoexcept |
Return const_iterator to end traversing a constant Matrix.
Definition at line 533 of file MatrixI.H.
References Foam::noexcept.
Referenced by Foam::max(), Foam::min(), Foam::operator*(), Foam::operator+(), Foam::operator-(), and Tmul().

|
inlinenoexcept |
Return const_iterator to begin traversing a constant Matrix.
Definition at line 541 of file MatrixI.H.
References Foam::noexcept.
|
inlinenoexcept |
Return const_iterator to end traversing a constant Matrix.
Definition at line 549 of file MatrixI.H.
References Foam::noexcept.
| bool readMatrix | ( | Istream & | is | ) |
Read Matrix from Istream, discarding existing contents.
Definition at line 41 of file MatrixIO.C.
References begin(), token::BEGIN_LIST, IOstreamOption::BINARY, clear(), data_bytes(), Foam::exit(), IOstream::fatalCheck(), Foam::FatalIOError, FatalIOErrorInFunction, IOstreamOption::format(), FUNCTION_NAME, token::info(), Foam::is_contiguous_v, token::isLabel(), token::labelToken(), Foam::nl, Istream::readBeginList(), Foam::Detail::readContiguous(), Istream::readEndList(), Foam::readLabel(), size(), and size_bytes().
Referenced by Matrix(), Foam::operator>>(), and Tmul().


| Foam::Ostream & writeMatrix | ( | Ostream & | os, |
| const label | shortLen = 0 ) const |
Write Matrix, with line-breaks in ASCII when length exceeds shortLen.
Using '0' suppresses line-breaks entirely.
Definition at line 130 of file MatrixIO.C.
References token::BEGIN_BLOCK, token::BEGIN_LIST, IOstreamOption::BINARY, cbegin(), cdata_bytes(), token::END_BLOCK, token::END_LIST, FUNCTION_NAME, Foam::is_contiguous_v, Matrix(), nCols(), Foam::nl, nRows(), os(), size(), size_bytes(), token::SPACE, and uniform().
Referenced by Foam::operator<<(), and Tmul().


|
inline |
|
inline |
Deprecated(2019-04) raw data pointer, non-const access.
Definition at line 762 of file Matrix.H.
References v().

|
inline |
Deprecated(2019-04) - use subMatrix().
Definition at line 773 of file Matrix.H.
References block(), m(), n(), and subMatrix().

|
inline |
Deprecated(2019-04) - use subMatrix().
Definition at line 790 of file Matrix.H.
References block(), m(), n(), and subMatrix().

|
inline |
Deprecated(2019-04) - use subColumn().
Definition at line 808 of file Matrix.H.
References col(), m(), and subColumn().
Referenced by col(), and col().


|
inline |
Deprecated(2019-04) - use subColumn().
Definition at line 824 of file Matrix.H.
References col(), m(), and subColumn().

|
delete |
Deleted(2019-04) - use subColumn().
References m().

|
delete |
Deleted(2019-04) - use subColumn().
References m().

| Foam::tmp< Foam::Field< Type > > AmulImpl | ( | const ListType & | x | ) | const |
| Foam::tmp< Foam::Field< Type > > TmulImpl | ( | const ListType & | x | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |