Preconditioned bi-conjugate gradient solver for asymmetric lduMatrices using a run-time selectable preconditioner. More...
Public Member Functions | |
TypeName ("PBiCICG") | |
Runtime type information. More... | |
PBiCICG (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict) | |
Construct from matrix components and solver data dictionary. More... | |
PBiCICG (const PBiCICG &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~PBiCICG () |
virtual SolverPerformance< Type > | solve (Field< Type > &psi) const |
Solve the matrix with this solver. More... | |
void | operator= (const PBiCICG &)=delete |
Disallow default bitwise assignment. More... | |
Public Member Functions inherited from LduMatrix< Type, DType, LUType >::solver | |
virtual const word & | type () const =0 |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, solver, symMatrix,(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict),(fieldName, matrix, solverDict)) | |
declareRunTimeSelectionTable (autoPtr, solver, asymMatrix,(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict),(fieldName, matrix, solverDict)) | |
solver (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict) | |
virtual | ~solver () |
const word & | fieldName () const |
const LduMatrix< Type, DType, LUType > & | matrix () const |
virtual void | read (const dictionary &solverDict) |
Read and reset the solver parameters from the given dictionary. More... | |
Type | normFactor (const Field< Type > &psi, const Field< Type > &Apsi, Field< Type > &tmpField) const |
Return the matrix norm used to normalise the residual for the. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from LduMatrix< Type, DType, LUType >::solver | |
static autoPtr< solver > | New (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict) |
Return a new solver. More... | |
Protected Member Functions inherited from LduMatrix< Type, DType, LUType >::solver | |
template<class T > | |
void | readControl (const dictionary &controlDict, T &control, const word &controlName) |
Read a control parameter from controlDict. More... | |
virtual void | readControls () |
Read the control parameters from the controlDict_. More... | |
Protected Attributes inherited from LduMatrix< Type, DType, LUType >::solver | |
word | fieldName_ |
const LduMatrix< Type, DType, LUType > & | matrix_ |
dictionary | controlDict_ |
Dictionary of controls. More... | |
label | maxIter_ |
Maximum number of iterations in the solver. More... | |
label | minIter_ |
Minimum number of iterations in the solver. More... | |
Type | tolerance_ |
Final convergence tolerance. More... | |
Type | relTol_ |
Convergence tolerance relative to the initial. More... | |
Static Protected Attributes inherited from LduMatrix< Type, DType, LUType >::solver | |
static const label | defaultMaxIter_ = 1000 |
Default maximum number of iterations in the solver. More... | |
Preconditioned bi-conjugate gradient solver for asymmetric lduMatrices using a run-time selectable preconditioner.
PBiCICG | ( | const word & | fieldName, |
const LduMatrix< Type, DType, LUType > & | matrix, | ||
const dictionary & | solverDict | ||
) |
Disallow default bitwise copy construction.
TypeName | ( | "PBiCICG< Type, DType, LUType >" | ) |
Runtime type information.
|
virtual |
Solve the matrix with this solver.
Implements LduMatrix< Type, DType, LUType >::solver.
Definition at line 51 of file PBiCICG.C.
References alpha(), UList< T >::begin(), SolverPerformance< Type >::checkConvergence(), SolverPerformance< Type >::checkSingularity(), Foam::cmptDivide(), Foam::cmptMag(), Foam::cmptMultiply(), Foam::endl(), SolverPerformance< Type >::finalResidual(), SolverPerformance< Type >::great_, Foam::gSumCmptMag(), Foam::gSumCmptProd(), Foam::Info, SolverPerformance< Type >::initialResidual(), LduMatrix< Type, DType, LUType >::preconditioner::New(), SolverPerformance< Type >::nIterations(), psi, List< T >::size(), Foam::stabilise(), SolverPerformance< Type >::vsmall_, and Foam::Zero.
|
delete |
Disallow default bitwise assignment.