Abstract base-class for lduMatrix solvers. More...
#include <src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H>
Abstract base-class for lduMatrix solvers.
Definition at line 211 of file lduMatrix.H.
Inheritance diagram for lduMatrix::solver:
Collaboration diagram for lduMatrix::solver:Public Member Functions | |
| virtual const word & | type () const =0 |
| Runtime type information.
| |
| declareRunTimeSelectionTable (autoPtr, solver, symMatrix,(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls),(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces, solverControls)) | |
| declareRunTimeSelectionTable (autoPtr, solver, asymMatrix,(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls),(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces, solverControls)) | |
| solver (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls) | |
| virtual | ~solver () |
| const word & | fieldName () const |
| const lduMatrix & | matrix () const |
| const FieldField< Field, scalar > & | interfaceBouCoeffs () const |
| const FieldField< Field, scalar > & | interfaceIntCoeffs () const |
| const lduInterfaceFieldPtrsList & | interfaces () const |
| virtual void | read (const dictionary &) |
| Read and reset the solver parameters from the given stream.
| |
| virtual solverPerformance | solve (scalarField &psi, const scalarField &source, const direction cmpt=0) const =0 |
| scalar | normFactor (const scalarField &psi, const scalarField &source, const scalarField &Apsi, scalarField &tmpField) const |
| Return the matrix norm used to normalise the residual for the.
| |
Static Public Member Functions | |
| static autoPtr< solver > | New (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls) |
| Return a new solver.
| |
Protected Member Functions | |
| virtual void | readControls () |
| Read the control parameters from the controlDict_.
| |
Protected Attributes | |
| word | fieldName_ |
| const lduMatrix & | matrix_ |
| const FieldField< Field, scalar > & | interfaceBouCoeffs_ |
| const FieldField< Field, scalar > & | interfaceIntCoeffs_ |
| lduInterfaceFieldPtrsList | interfaces_ |
| dictionary | controlDict_ |
| dictionary of controls
| |
| label | maxIter_ |
| Maximum number of iterations in the solver.
| |
| scalar | tolerance_ |
| Final convergence tolerance.
| |
| scalar | relTol_ |
| Convergence tolerance relative to the initial.
| |
| solver | ( | const word & | fieldName, |
| const lduMatrix & | matrix, | ||
| const FieldField< Field, scalar > & | interfaceBouCoeffs, | ||
| const FieldField< Field, scalar > & | interfaceIntCoeffs, | ||
| const lduInterfaceFieldPtrsList & | interfaces, | ||
| const dictionary & | solverControls | ||
| ) |
Definition at line 142 of file lduMatrixSolver.C.
| virtual ~solver | ( | ) | [inline, virtual]
|
Definition at line 326 of file lduMatrix.H.
| void readControls | ( | ) | [protected, virtual]
|
Read the control parameters from the controlDict_.
Reimplemented in GAMGPreconditioner, and smoothSolver.
Definition at line 164 of file lduMatrixSolver.C.
References lduMatrix::solver::controlDict_, e, dictionary::lookupOrDefault(), lduMatrix::solver::maxIter_, lduMatrix::solver::relTol_, and lduMatrix::solver::tolerance_.
| virtual const word& type | ( | ) | const [pure virtual]
|
Runtime type information.
| declareRunTimeSelectionTable | ( | autoPtr | , |
| solver | , | ||
| symMatrix | , | ||
| (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls) | , | ||
| (fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces, solverControls) | |||
| ) |
| declareRunTimeSelectionTable | ( | autoPtr | , |
| solver | , | ||
| asymMatrix | , | ||
| (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls) | , | ||
| (fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces, solverControls) | |||
| ) |
| Foam::autoPtr< Foam::lduMatrix::solver > New | ( | const word & | fieldName, |
| const lduMatrix & | matrix, | ||
| const FieldField< Field, scalar > & | interfaceBouCoeffs, | ||
| const FieldField< Field, scalar > & | interfaceIntCoeffs, | ||
| const lduInterfaceFieldPtrsList & | interfaces, | ||
| const dictionary & | solverControls | ||
| ) | [static]
|
Return a new solver.
Definition at line 41 of file lduMatrixSolver.C.
References lduMatrix::asymmetric(), lduMatrix::diagonal(), Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorIn, dictionary::lookup(), name(), Foam::nl, and lduMatrix::symmetric().
| const word& fieldName | ( | ) | const [inline]
|
Definition at line 334 of file lduMatrix.H.
References lduMatrix::solver::fieldName_.
| const lduMatrix& matrix | ( | ) | const [inline]
|
Definition at line 339 of file lduMatrix.H.
References lduMatrix::solver::matrix_.
Referenced by DICPreconditioner::DICPreconditioner(), DILUPreconditioner::DILUPreconditioner(), and lduMatrix::preconditioner::New().
| const FieldField<Field, scalar>& interfaceBouCoeffs | ( | ) | const [inline]
|
Definition at line 344 of file lduMatrix.H.
References lduMatrix::solver::interfaceBouCoeffs_.
| const FieldField<Field, scalar>& interfaceIntCoeffs | ( | ) | const [inline]
|
Definition at line 349 of file lduMatrix.H.
References lduMatrix::solver::interfaceIntCoeffs_.
| const lduInterfaceFieldPtrsList& interfaces | ( | ) | const [inline]
|
Definition at line 354 of file lduMatrix.H.
References lduMatrix::solver::interfaces_.
| void read | ( | const dictionary & | solverControls ) | [virtual]
|
Read and reset the solver parameters from the given stream.
Reimplemented in diagonalSolver.
Definition at line 172 of file lduMatrixSolver.C.
| virtual solverPerformance solve | ( | scalarField & | psi, |
| const scalarField & | source, | ||
| const direction | cmpt = 0
|
||
| ) | const [pure virtual]
|
Implemented in diagonalSolver, GAMGSolver, PBiCG, PCG, and smoothSolver.
| Foam::scalar normFactor | ( | const scalarField & | psi, |
| const scalarField & | source, | ||
| const scalarField & | Apsi, | ||
| scalarField & | tmpField | ||
| ) | const |
Return the matrix norm used to normalise the residual for the.
stopping criterion
Definition at line 180 of file lduMatrixSolver.C.
References Foam::gAverage(), Foam::gSum(), and Foam::mag().
word fieldName_ [protected]
|
Definition at line 217 of file lduMatrix.H.
Referenced by lduMatrix::solver::fieldName().
Definition at line 218 of file lduMatrix.H.
Referenced by lduMatrix::solver::matrix().
const FieldField<Field, scalar>& interfaceBouCoeffs_ [protected]
|
Definition at line 219 of file lduMatrix.H.
Referenced by lduMatrix::solver::interfaceBouCoeffs().
const FieldField<Field, scalar>& interfaceIntCoeffs_ [protected]
|
Definition at line 220 of file lduMatrix.H.
Referenced by lduMatrix::solver::interfaceIntCoeffs().
lduInterfaceFieldPtrsList interfaces_ [protected]
|
Definition at line 221 of file lduMatrix.H.
Referenced by lduMatrix::solver::interfaces().
dictionary controlDict_ [protected]
|
dictionary of controls
Definition at line 224 of file lduMatrix.H.
Referenced by smoothSolver::readControls(), and lduMatrix::solver::readControls().
label maxIter_ [protected]
|
Maximum number of iterations in the solver.
Definition at line 227 of file lduMatrix.H.
Referenced by lduMatrix::solver::readControls().
scalar tolerance_ [protected]
|
Final convergence tolerance.
Definition at line 230 of file lduMatrix.H.
Referenced by lduMatrix::solver::readControls().
scalar relTol_ [protected]
|
Convergence tolerance relative to the initial.
Definition at line 233 of file lduMatrix.H.
Referenced by lduMatrix::solver::readControls().