Single-region-specific derivation of the corrector convergence control class. More...
Public Member Functions | |
TypeName ("singleRegionCorrectorConvergenceControl") | |
Run-time type information. More... | |
singleRegionCorrectorConvergenceControl (const singleRegionSolutionControl &control, const word &loopName) | |
Construct from a solution control and the loop name. More... | |
virtual | ~singleRegionCorrectorConvergenceControl () |
Destructor. More... | |
void | printCorrResidualControls (const label n) const |
Print the residual controls. More... | |
virtual bool | hasCorrResidualControls () const |
Return true if corrector residual controls are present. More... | |
virtual bool | corrCriteriaSatisfied () const |
Return true if all correction convergence checks are satisfied. More... | |
virtual void | resetCorrSolveIndex () |
Reset the solve index in the correction residual control data. More... | |
virtual void | updateCorrSolveIndex () |
Update the solve index in the correction residual control data. More... | |
Public Member Functions inherited from correctorConvergenceControl | |
TypeName ("correctorConvergenceControl") | |
Run-time type information. More... | |
correctorConvergenceControl (const solutionControl &control, const word &loopName) | |
Construct from a solution control and the loop name. More... | |
virtual | ~correctorConvergenceControl () |
Destructor. More... | |
Protected Member Functions | |
virtual bool | read () |
Read controls. More... | |
Protected Attributes | |
const fvMesh & | mesh_ |
Reference to the mesh. More... | |
List< corrResidualData > | corrResidualControl_ |
List of residual data per field. More... | |
HashTable< label > | solveIndex_ |
The index of the solution at the start of the corrector loop, for. More... | |
Protected Attributes inherited from correctorConvergenceControl | |
const solutionControl & | control_ |
Reference to the solution control. More... | |
const word | loopName_ |
Name of the corrector loop. More... | |
Additional Inherited Members | |
Static Protected Member Functions inherited from correctorConvergenceControl | |
static void | getNSolves (const fvMesh &mesh, const word &fieldName, label &n) |
Get the number of solves that have happened for this variable in. More... | |
template<class Type > | |
static void | getNTypeSolves (const fvMesh &mesh, const word &fieldName, label &n) |
Get the number of solves that have happened for this variable in. More... | |
Single-region-specific derivation of the corrector convergence control class.
Definition at line 50 of file singleRegionCorrectorConvergenceControl.H.
singleRegionCorrectorConvergenceControl | ( | const singleRegionSolutionControl & | control, |
const word & | loopName | ||
) |
Construct from a solution control and the loop name.
Definition at line 108 of file singleRegionCorrectorConvergenceControl.C.
References singleRegionCorrectorConvergenceControl::read().
|
virtual |
Destructor.
Definition at line 125 of file singleRegionCorrectorConvergenceControl.C.
|
protectedvirtual |
Read controls.
Reimplemented in pimpleNoLoopControl.
Definition at line 40 of file singleRegionCorrectorConvergenceControl.C.
References correctorConvergenceControl::corrResidualData::absTol, solutionControl::algorithmName(), DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), correctorConvergenceControl::control_, singleRegionCorrectorConvergenceControl::corrResidualControl_, dict, solutionControl::dict(), dictionaryName::dictName(), Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, forAllConstIter, Foam::Info, dictionary::lookup(), correctorConvergenceControl::loopName_, correctorConvergenceControl::corrResidualData::name, Foam::nl, correctorConvergenceControl::corrResidualData::relTol, convergenceControl::residualControlIndex(), dictionary::subOrEmptyDict(), and List< T >::transfer().
Referenced by pimpleNoLoopControl::read(), and singleRegionCorrectorConvergenceControl::singleRegionCorrectorConvergenceControl().
TypeName | ( | "singleRegionCorrectorConvergenceControl" | ) |
Run-time type information.
void printCorrResidualControls | ( | const label | n | ) | const |
Print the residual controls.
Definition at line 132 of file singleRegionCorrectorConvergenceControl.C.
References Foam::endl(), forAll, Foam::Info, n, and Foam::nl.
Referenced by pimpleSingleRegionControl::pimpleSingleRegionControl().
|
virtual |
Return true if corrector residual controls are present.
Implements correctorConvergenceControl.
Definition at line 157 of file singleRegionCorrectorConvergenceControl.C.
|
virtual |
Return true if all correction convergence checks are satisfied.
Implements correctorConvergenceControl.
Definition at line 164 of file singleRegionCorrectorConvergenceControl.C.
References Foam::endl(), fieldNames, forAll, convergenceControl::getFieldNames(), convergenceControl::getInitialResiduals(), Foam::Info, convergenceControl::residualControlIndex(), and Foam::ROOTVSMALL.
|
virtual |
Reset the solve index in the correction residual control data.
Implements correctorConvergenceControl.
Definition at line 229 of file singleRegionCorrectorConvergenceControl.C.
|
virtual |
Update the solve index in the correction residual control data.
Implements correctorConvergenceControl.
Definition at line 235 of file singleRegionCorrectorConvergenceControl.C.
References fieldNames, forAll, and convergenceControl::getFieldNames().
|
protected |
Reference to the mesh.
Definition at line 59 of file singleRegionCorrectorConvergenceControl.H.
|
protected |
List of residual data per field.
Definition at line 62 of file singleRegionCorrectorConvergenceControl.H.
Referenced by singleRegionCorrectorConvergenceControl::read().
The index of the solution at the start of the corrector loop, for.
each field. If the field name is not in the table then the index is assumed to be zero; i.e, the first solution.
Definition at line 67 of file singleRegionCorrectorConvergenceControl.H.