Preconditioned conjugate gradient solver for symmetric lduMatrices using a run-time selectable preconditioner. More...
Additional Inherited Members | |
Static Public Member Functions inherited from lduMatrix::solver | |
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. More... | |
Protected Member Functions inherited from lduMatrix::solver | |
virtual void | readControls () |
Read the control parameters from the controlDict_. More... | |
Protected Attributes inherited from lduMatrix::solver | |
word | fieldName_ |
const lduMatrix & | matrix_ |
const FieldField< Field, scalar > & | interfaceBouCoeffs_ |
const FieldField< Field, scalar > & | interfaceIntCoeffs_ |
lduInterfaceFieldPtrsList | interfaces_ |
dictionary | controlDict_ |
Dictionary of controls. More... | |
int | log_ |
Level of verbosity in the solver output statements. More... | |
label | minIter_ |
Minimum number of iterations in the solver. More... | |
label | maxIter_ |
Maximum number of iterations in the solver. More... | |
scalar | tolerance_ |
Final convergence tolerance. More... | |
scalar | relTol_ |
Convergence tolerance relative to the initial. More... | |
profilingTrigger | profiling_ |
Static Protected Attributes inherited from lduMatrix::solver | |
static const label | defaultMaxIter_ = 1000 |
Default maximum number of iterations in the solver. More... | |
Preconditioned conjugate gradient solver for symmetric lduMatrices using a run-time selectable preconditioner.
PCG | ( | const word & | fieldName, |
const lduMatrix & | matrix, | ||
const FieldField< Field, scalar > & | interfaceBouCoeffs, | ||
const FieldField< Field, scalar > & | interfaceIntCoeffs, | ||
const lduInterfaceFieldPtrsList & | interfaces, | ||
const dictionary & | solverControls | ||
) |
|
virtualdefault |
Destructor.
TypeName | ( | "PCG" | ) |
Runtime type information.
|
virtual |
Solve the matrix with this solver.
Reimplemented from lduMatrix::solver.
Definition at line 69 of file PCG.C.
References alpha, UList< T >::begin(), beta(), SolverPerformance< Type >::checkConvergence(), SolverPerformance< Type >::checkSingularity(), Foam::endl(), SolverPerformance< Type >::finalResidual(), NURBS3DCurve::getName(), SolverPerformance< Type >::great_, Foam::gSumMag(), Foam::gSumProd(), Foam::Info, SolverPerformance< Type >::initialResidual(), Foam::mag(), mesh, Time::New(), SolverPerformance< Type >::nIterations(), psi, and UList< T >::size().
|
virtual |
Solve the matrix with this solver.
Implements lduMatrix::solver.
Definition at line 214 of file PCG.C.
References refPtr< T >::ref().