A templated (m x n) matrix of objects of <T>. The layout is (mRows x nCols) - row-major order: More...
Public Types | |
typedef Matrix< Form, Type > | mType |
typedef Type | cmptType |
typedef Type * | iterator |
Public Member Functions | |
Matrix () noexcept | |
Matrix (const label m, const label n) | |
Matrix (const label m, const label n, const Foam::zero) | |
Matrix (const label m, const label n, const Type &val) | |
Matrix (const labelPair &dims) | |
Matrix (const labelPair &dims, const Foam::zero) | |
Matrix (const labelPair &dims, const Type &val) | |
Matrix (const Matrix< Form, Type > &mat) | |
Matrix (Matrix< Form, Type > &&mat) | |
template<class Form2 > | |
Matrix (const Matrix< Form2, Type > &mat) | |
template<class MatrixType > | |
Matrix (const ConstMatrixBlock< MatrixType > &Mb) | |
template<class MatrixType > | |
Matrix (const MatrixBlock< MatrixType > &Mb) | |
Matrix (Istream &is) | |
autoPtr< mType > | clone () const |
~Matrix () | |
label | m () const noexcept |
label | n () const noexcept |
label | size () const |
labelPair | sizes () const |
bool | empty () const noexcept |
const Type * | cdata () const noexcept |
Type * | data () noexcept |
const char * | cdata_bytes () const noexcept |
char * | data_bytes () noexcept |
std::streamsize | size_bytes () const noexcept |
std::streamsize | byteSize () const |
const Type * | rowData (const label irow) const |
Type * | rowData (const label irow) |
const Type & | at (const label idx) const |
Type & | at (const label idx) |
ConstMatrixBlock< mType > | subColumn (const label colIndex, const label rowIndex=0, label len=-1) const |
ConstMatrixBlock< mType > | subRow (const label rowIndex, const label colIndex=0, label len=-1) const |
ConstMatrixBlock< mType > | subMatrix (const label rowIndex, const label colIndex, label szRows=-1, label szCols=-1) const |
template<class VectorSpace > | |
ConstMatrixBlock< mType > | block (const label rowIndex, const label colIndex) const |
MatrixBlock< mType > | subColumn (const label colIndex, const label rowIndex=0, label len=-1) |
MatrixBlock< mType > | subRow (const label rowIndex, const label colIndex=0, label len=-1) |
MatrixBlock< mType > | subMatrix (const label rowIndex, const label colIndex, label szRows=-1, label szCols=-1) |
template<class VectorSpace > | |
MatrixBlock< mType > | block (const label rowIndex, const label colIndex) |
void | checki (const label irow) const |
void | checkj (const label jcol) const |
void | checkSize () const |
bool | uniform () const |
void | clear () |
List< Type > | release () |
void | swap (Matrix< Form, Type > &mat) |
void | transfer (Matrix< Form, Type > &mat) |
void | resize (const label m, const label n) |
void | resize_nocopy (const label mrow, const label ncol) |
void | setSize (const label m, const label n) |
void | shallowResize (const label m, const label n) |
void | round (const scalar tol=SMALL) |
Form | T () const |
tmp< Field< Type > > | Amul (const UList< Type > &x) const |
template<class Addr > | |
tmp< Field< Type > > | Amul (const IndirectListBase< Type, Addr > &x) const |
tmp< Field< Type > > | Tmul (const UList< Type > &x) const |
template<class Addr > | |
tmp< Field< Type > > | Tmul (const IndirectListBase< Type, Addr > &x) const |
List< Type > | diag () const |
void | diag (const UList< Type > &list) |
Type | trace () const |
scalar | columnNorm (const label colIndex, const bool noSqrt=false) const |
scalar | norm (const bool noSqrt=false) const |
const Type * | operator[] (const label irow) const |
Type * | operator[] (const label irow) |
const Type & | operator() (const label irow, const label jcol) const |
Type & | operator() (const label irow, const label jcol) |
void | operator= (const Matrix< Form, Type > &mat) |
void | operator= (Matrix< Form, Type > &&mat) |
template<class MatrixType > | |
void | operator= (const ConstMatrixBlock< MatrixType > &Mb) |
template<class MatrixType > | |
void | operator= (const MatrixBlock< MatrixType > &Mb) |
void | operator= (const Foam::zero) |
void | operator= (const Type &val) |
void | operator+= (const Matrix< Form, Type > &other) |
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) |
iterator | begin () noexcept |
iterator | end () noexcept |
const_iterator | cbegin () const noexcept |
const_iterator | cend () const noexcept |
const_iterator | begin () const noexcept |
const_iterator | end () const noexcept |
bool | readMatrix (Istream &is) |
Ostream & | writeMatrix (Ostream &os, const label shortLen=0) const |
label | mRows () const noexcept |
label | nRows () const noexcept |
label | nCols () const noexcept |
const Type * | v () const |
Type * | v () |
ConstMatrixBlock< mType > | block (const label m, const label n, const label mStart, const label nStart) const |
MatrixBlock< mType > | block (const label m, const label n, const label mStart, const label nStart) |
ConstMatrixBlock< mType > | col (const label m, const label mStart, const label nStart) const |
MatrixBlock< mType > | col (const label m, const label mStart, const label nStart) |
void | col (const label m, const label rowStart) const =delete |
void | col (const label m, const label rowStart)=delete |
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 () |
Public Attributes | |
const typedef Type * | const_iterator |
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]
Definition at line 49 of file DiagonalMatrix.H.
|
inlinenoexcept |
Matrix | ( | const label | m, |
const label | n, | ||
const Foam::zero | |||
) |
|
inline |
|
inline |
|
inline |
Definition at line 33 of file MatrixIO.C.
|
inlinestatic |
|
inline |
|
inlinenoexcept |
Definition at line 89 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::AmulImpl(), QRMatrix< MatrixType >::applyLeftReflector(), QRMatrix< MatrixType >::applyRightReflector(), QRMatrix< MatrixType >::backSubstitution(), Matrix< RectangularMatrix< Type >, Type >::block(), Matrix< RectangularMatrix< Type >, Type >::col(), STDMD::initialise(), QRMatrix< MatrixType >::inv(), Foam::LUBacksubstitute(), Foam::LUDecompose(), Foam::LUsolve(), Foam::operator&(), Matrix< RectangularMatrix< Type >, Type >::operator+=(), Matrix< RectangularMatrix< Type >, Type >::operator-=(), Foam::solve(), SVD::SVD(), and Matrix< RectangularMatrix< Type >, Type >::TmulImpl().
|
inlinenoexcept |
Definition at line 96 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::AmulImpl(), QRMatrix< MatrixType >::backSubstitution(), Matrix< RectangularMatrix< Type >, Type >::block(), QRMatrix< MatrixType >::householderReflector(), updateMethod::leftMult(), Foam::operator&(), Matrix< RectangularMatrix< Type >, Type >::operator+=(), Matrix< RectangularMatrix< Type >, Type >::operator-=(), updateMethod::rightMult(), SVD::SVD(), and Matrix< RectangularMatrix< Type >, Type >::TmulImpl().
|
inline |
Definition at line 103 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::writeMatrix().
|
inline |
Definition at line 110 of file MatrixI.H.
Referenced by Foam::operator*(), Foam::operator+(), Foam::operator-(), and Foam::operator/().
|
inlinenoexcept |
Definition at line 117 of file MatrixI.H.
Referenced by Foam::max(), and Foam::min().
|
inlinenoexcept |
Definition at line 195 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::Matrix(), and Matrix< RectangularMatrix< Type >, Type >::writeMatrix().
|
inlinenoexcept |
Definition at line 209 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::writeMatrix().
|
inlinenoexcept |
Definition at line 223 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::writeMatrix().
|
inline |
Referenced by Matrix< RectangularMatrix< Type >, Type >::col().
|
inline |
|
inline |
Referenced by Matrix< RectangularMatrix< Type >, Type >::block().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 173 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::writeMatrix().
Foam::List< Type > release | ( | ) |
|
inline |
Form T | ( | ) | const |
Definition at line 385 of file Matrix.C.
Referenced by chemPointISAT< CompType, ThermoType >::chemPointISAT().
|
inline |
Definition at line 484 of file MatrixI.H.
Referenced by Foam::operator*().
|
inline |
|
inline |
Definition at line 505 of file MatrixI.H.
Referenced by Foam::operator*().
|
inline |
Foam::List< Type > diag | ( | ) | const |
Foam::scalar columnNorm | ( | const label | colIndex, |
const bool | noSqrt = false |
||
) | const |
Definition at line 456 of file Matrix.C.
Referenced by QRMatrix< MatrixType >::householderReflector().
|
inline |
|
inline |
void operator= | ( | const ConstMatrixBlock< MatrixType > & | Mb | ) |
void operator= | ( | const MatrixBlock< MatrixType > & | Mb | ) |
void operator= | ( | const Foam::zero | ) |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Definition at line 544 of file MatrixI.H.
Referenced by STDMD::initialise(), Matrix< RectangularMatrix< Type >, Type >::Matrix(), Foam::max(), Foam::min(), Foam::operator*(), Foam::operator+(), Matrix< RectangularMatrix< Type >, Type >::operator+=(), Foam::operator-(), Matrix< RectangularMatrix< Type >, Type >::operator-=(), Foam::operator/(), and Matrix< RectangularMatrix< Type >, Type >::operator=().
|
inlinenoexcept |
Definition at line 552 of file MatrixI.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::Matrix(), Foam::max(), Foam::min(), Foam::operator*(), Foam::operator+(), Foam::operator-(), and Matrix< RectangularMatrix< Type >, Type >::operator=().
|
inlinenoexcept |
|
inlinenoexcept |
Definition at line 46 of file MatrixIO.C.
Referenced by Foam::operator>>().
Foam::Ostream & writeMatrix | ( | Ostream & | os, |
const label | shortLen = 0 |
||
) | const |
Definition at line 137 of file MatrixIO.C.
Referenced by Foam::operator<<().
|
inlinenoexcept |
Definition at line 512 of file Matrix.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::writeMatrix().
|
inlinenoexcept |
Definition at line 518 of file Matrix.H.
Referenced by Matrix< RectangularMatrix< Type >, Type >::writeMatrix().
|
inline |
|
inline |
|
inline |
|
inline |
|
delete |
|
delete |
Foam::tmp<Foam::Field<Type> > AmulImpl | ( | const ListType & | x | ) | const |
Foam::tmp<Foam::Field<Type> > TmulImpl | ( | const ListType & | x | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.