Classes | Public Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
correctorConvergenceControl Class Referenceabstract

Corrector convergence control class. Provides methods to check the convergence of an inner iteration loop (e.g., pimple) against both absolute and relative residual tolerances. More...

Inheritance diagram for correctorConvergenceControl:
Inheritance graph
[legend]
Collaboration diagram for correctorConvergenceControl:
Collaboration graph
[legend]

Classes

struct  corrResidualData
 Residual correction data structure. More...
 

Public Member Functions

 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...
 
virtual bool hasCorrResidualControls () const =0
 Return true if corrector residual controls are present. More...
 
virtual bool corrCriteriaSatisfied () const =0
 Return true if all correction convergence checks are satisfied. More...
 
virtual void resetCorrSolveIndex ()=0
 Reset the solve index in the correction residual control data. More...
 
virtual void updateCorrSolveIndex ()=0
 Update the solve index in the correction residual control data. More...
 

Static Protected Member Functions

static void getNSolves (const fvMesh &mesh, const word &fieldName, ITstream &data, 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, ITstream &data, label &n)
 Get the number of solves that have happened for this variable in. More...
 

Protected Attributes

const solutionControlcontrol_
 Reference to the solution control. More...
 
const word loopName_
 Name of the corrector loop. More...
 

Detailed Description

Corrector convergence control class. Provides methods to check the convergence of an inner iteration loop (e.g., pimple) against both absolute and relative residual tolerances.

Source files

Definition at line 52 of file correctorConvergenceControl.H.

Constructor & Destructor Documentation

◆ correctorConvergenceControl()

correctorConvergenceControl ( const solutionControl control,
const word loopName 
)

Construct from a solution control and the loop name.

Definition at line 58 of file correctorConvergenceControl.C.

◆ ~correctorConvergenceControl()

Destructor.

Definition at line 70 of file correctorConvergenceControl.C.

Member Function Documentation

◆ getNSolves()

void getNSolves ( const fvMesh mesh,
const word fieldName,
ITstream data,
label n 
)
staticprotected

Get the number of solves that have happened for this variable in.

this time-step

Definition at line 40 of file correctorConvergenceControl.C.

References mesh, and n.

◆ getNTypeSolves()

void getNTypeSolves ( const fvMesh mesh,
const word fieldName,
ITstream data,
label n 
)
staticprotected

Get the number of solves that have happened for this variable in.

this time-step

Definition at line 30 of file correctorConvergenceControlTemplates.C.

References objectRegistry::foundObject(), and List< T >::size().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "correctorConvergenceControl"  )

Run-time type information.

◆ hasCorrResidualControls()

virtual bool hasCorrResidualControls ( ) const
pure virtual

Return true if corrector residual controls are present.

Implemented in pimpleMultiRegionControl, and singleRegionCorrectorConvergenceControl.

Referenced by pimpleLoop::loop().

Here is the caller graph for this function:

◆ corrCriteriaSatisfied()

virtual bool corrCriteriaSatisfied ( ) const
pure virtual

Return true if all correction convergence checks are satisfied.

Implemented in pimpleMultiRegionControl, and singleRegionCorrectorConvergenceControl.

Referenced by pimpleLoop::loop().

Here is the caller graph for this function:

◆ resetCorrSolveIndex()

virtual void resetCorrSolveIndex ( )
pure virtual

Reset the solve index in the correction residual control data.

Implemented in pimpleMultiRegionControl, and singleRegionCorrectorConvergenceControl.

Referenced by pimpleLoop::loop().

Here is the caller graph for this function:

◆ updateCorrSolveIndex()

virtual void updateCorrSolveIndex ( )
pure virtual

Update the solve index in the correction residual control data.

Implemented in pimpleMultiRegionControl, and singleRegionCorrectorConvergenceControl.

Referenced by pimpleLoop::loop().

Here is the caller graph for this function:

Member Data Documentation

◆ control_

const solutionControl& control_
protected

Reference to the solution control.

Definition at line 82 of file correctorConvergenceControl.H.

◆ loopName_

const word loopName_
protected

Name of the corrector loop.

Definition at line 85 of file correctorConvergenceControl.H.


The documentation for this class was generated from the following files: