A simple square matrix solver with scalar coefficients. More...


Public Member Functions | |
| simpleMatrix (const label) | |
| Construct given size. More... | |
| simpleMatrix (const label, const scalar, const Type &) | |
| Construct given size and initial values for coefficients and source. More... | |
| simpleMatrix (const scalarSquareMatrix &, const Field< Type > &) | |
| Construct from components. More... | |
| simpleMatrix (Istream &) | |
| Construct from Istream. More... | |
| simpleMatrix (const simpleMatrix< Type > &) | |
| Construct as copy. More... | |
| Field< Type > & | source () |
| Return access to the source. More... | |
| const Field< Type > & | source () const |
| Return const-access to the source. More... | |
| Field< Type > | solve () const |
| Solve the matrix using Gaussian elimination with pivoting. More... | |
| Field< Type > | LUsolve () const |
| Solve the matrix using LU decomposition with pivoting. More... | |
| void | operator= (const simpleMatrix< Type > &) |
Public Member Functions inherited from SquareMatrix< Type > | |
| SquareMatrix () | |
| Null constructor. More... | |
| SquareMatrix (const label n) | |
| Construct given number of rows/columns. More... | |
| template<class MatrixType > | |
| SquareMatrix (const ConstMatrixBlock< MatrixType > &) | |
| Construct from a block of another matrix. More... | |
| template<class MatrixType > | |
| SquareMatrix (const MatrixBlock< MatrixType > &) | |
| Construct from a block of another matrix. More... | |
| SquareMatrix (const label n, const zero) | |
| Construct given number of rows/columns. More... | |
| SquareMatrix (const label m, const label n, const zero) | |
| Construct given number of rows and columns (checked to be equal) More... | |
| SquareMatrix (const label n, const Identity< Type >) | |
| Construct given number of rows/columns. More... | |
| SquareMatrix (const label n, const Type &) | |
| Construct with given number of rows and rows. More... | |
| SquareMatrix (const RectangularMatrix< Type > &) | |
| Construct as copy of a RectangularMatrix. More... | |
| SquareMatrix (Istream &) | |
| Construct from Istream. More... | |
| autoPtr< SquareMatrix< Type > > | clone () const |
| Clone. More... | |
| void | setSize (const label m) |
| Resize the matrix preserving the elements. More... | |
| void | operator= (const zero) |
| Assignment of all elements to zero. More... | |
| void | operator= (const Identity< Type >) |
| Assignment elements to the. More... | |
Public Member Functions inherited from Matrix< SquareMatrix< Type >, Type > | |
| Matrix () | |
| Null constructor. More... | |
| Matrix (const label m, const label n) | |
| Construct given number of rows and columns. More... | |
| Matrix (const label m, const label n, const zero) | |
| Construct with given number of rows and columns. More... | |
| Matrix (const label m, const label n, const Type &) | |
| Construct with given number of rows and columns. More... | |
| Matrix (const mType &) | |
| Copy constructor. More... | |
| Matrix (const Matrix< Form2, Type > &) | |
| Copy constructor from matrix of a different form. More... | |
| Matrix (const ConstMatrixBlock< MatrixType > &) | |
| Construct from a block of another matrix. More... | |
| Matrix (const MatrixBlock< MatrixType > &) | |
| Construct from a block of another matrix. More... | |
| Matrix (Istream &) | |
| Construct from Istream. More... | |
| autoPtr< mType > | clone () const |
| Clone. More... | |
| ~Matrix () | |
| Destructor. More... | |
| label | m () const |
| Return the number of rows. More... | |
| label | n () const |
| Return the number of columns. More... | |
| label | size () const |
| Return the number of elements in matrix (m*n) More... | |
| const Type * | v () const |
| Return element vector of the constant Matrix. More... | |
| Type * | v () |
| Return element vector of the Matrix. More... | |
| ConstMatrixBlock< mType > | block (const label m, const label n, const label mStart, const label nStart) const |
| ConstMatrixBlock< mType > | block (const label mStart, const label nStart) const |
| MatrixBlock< mType > | block (const label m, const label n, const label mStart, const label nStart) |
| MatrixBlock< mType > | block (const label mStart, const label nStart) |
| ConstMatrixBlock< mType > | col (const label m, const label rowStart) const |
| ConstMatrixBlock< mType > | col (const label m, const label mStart, const label nStart) const |
| MatrixBlock< mType > | col (const label m, const label rowStart) |
| MatrixBlock< mType > | col (const label m, const label mStart, const label nStart) |
| void | checki (const label i) const |
| Check index i is within valid range (0 ... m-1). More... | |
| void | checkj (const label j) const |
| Check index j is within valid range (0 ... n-1). More... | |
| void | clear () |
| Clear the Matrix, i.e. set sizes to zero. More... | |
| void | transfer (mType &) |
| Transfer the contents of the argument Matrix into this Matrix. More... | |
| void | setSize (const label m, const label n) |
| Resize the matrix preserving the elements. More... | |
| SquareMatrix< Type > | T () const |
| Return the transpose of the matrix. More... | |
| Type * | operator[] (const label) |
| Return subscript-checked row of Matrix. More... | |
| const Type * | operator[] (const label) const |
| Return subscript-checked row of constant Matrix. More... | |
| const Type & | operator() (const label i, const label j) const |
| (i, j) const element access operator More... | |
| Type & | operator() (const label i, const label j) |
| (i, j) element access operator More... | |
| void | operator= (const mType &) |
| Assignment operator. Takes linear time. More... | |
| void | operator= (const ConstMatrixBlock< MatrixType > &) |
| Assignment to a block of another matrix. More... | |
| void | operator= (const MatrixBlock< MatrixType > &) |
| Assignment to a block of another matrix. More... | |
| void | operator= (const zero) |
| Assignment of all elements to zero. More... | |
| void | operator= (const Type &) |
| Assignment of all elements to the given value. More... | |
Friends | |
| Ostream & | operator (Ostream &, const simpleMatrix< Type > &) |
Additional Inherited Members | |
Public Types inherited from Matrix< SquareMatrix< Type >, Type > | |
| typedef Matrix< SquareMatrix< Type >, Type > | mType |
| Matrix type. More... | |
| typedef Type | cmptType |
| Component type. More... | |
Static Public Member Functions inherited from Matrix< SquareMatrix< Type >, Type > | |
| static const mType & | null () |
| Return a null Matrix. More... | |
A simple square matrix solver with scalar coefficients.
Definition at line 47 of file simpleMatrix.H.
| simpleMatrix | ( | const label | mSize | ) |
Construct given size.
Note: this does not initialise the coefficients or the source.
Definition at line 31 of file simpleMatrix.C.
Referenced by simpleMatrix< Type >::simpleMatrix().

| simpleMatrix | ( | const label | mSize, |
| const scalar | coeffVal, | ||
| const Type & | sourceVal | ||
| ) |
Construct given size and initial values for coefficients and source.
Definition at line 40 of file simpleMatrix.C.
References simpleMatrix< Type >::simpleMatrix().

| simpleMatrix | ( | const scalarSquareMatrix & | matrix, |
| const Field< Type > & | source | ||
| ) |
Construct from components.
Definition at line 53 of file simpleMatrix.C.
| simpleMatrix | ( | Istream & | is | ) |
Construct from Istream.
Definition at line 64 of file simpleMatrix.C.
| simpleMatrix | ( | const simpleMatrix< Type > & | ) |
Construct as copy.
|
inline |
Return access to the source.
Definition at line 97 of file simpleMatrix.H.
Referenced by EulerImplicit< ChemistryModel >::solve().

|
inline |
Return const-access to the source.
Definition at line 103 of file simpleMatrix.H.
References simpleMatrix< Type >::LUsolve(), simpleMatrix< Type >::operator=(), and simpleMatrix< Type >::solve().

| Foam::Field< Type > solve | ( | ) | const |
Solve the matrix using Gaussian elimination with pivoting.
and return the solution
Definition at line 74 of file simpleMatrix.C.
References Foam::solve().
Referenced by simpleMatrix< Type >::source().


| Foam::Field< Type > LUsolve | ( | ) | const |
Solve the matrix using LU decomposition with pivoting.
and return the solution
Definition at line 86 of file simpleMatrix.C.
References Foam::LUsolve().
Referenced by EulerImplicit< ChemistryModel >::solve(), and simpleMatrix< Type >::source().


| void operator= | ( | const simpleMatrix< Type > & | m | ) |
Definition at line 100 of file simpleMatrix.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Matrix< SquareMatrix< Type >, Type >::m(), Foam::nl, SquareMatrix< scalar >::operator=(), and s().
Referenced by simpleMatrix< Type >::source().


|
friend |
1.8.11