Public Member Functions | Static Public Member Functions | Protected Attributes
lduMatrix::preconditioner Class Referenceabstract

Abstract base-class for lduMatrix preconditioners. More...

Inheritance diagram for lduMatrix::preconditioner:
Inheritance graph
[legend]
Collaboration diagram for lduMatrix::preconditioner:
Collaboration graph
[legend]

Public Member Functions

virtual const wordtype () const =0
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, preconditioner, symMatrix,(const solver &sol, const dictionary &solverControls),(sol, solverControls))
 
 declareRunTimeSelectionTable (autoPtr, preconditioner, asymMatrix,(const solver &sol, const dictionary &solverControls),(sol, solverControls))
 
 preconditioner (const solver &sol)
 
virtual ~preconditioner ()
 Destructor. More...
 
virtual void read (const dictionary &)
 Read and reset the preconditioner parameters. More...
 
virtual void precondition (scalarField &wA, const scalarField &rA, const direction cmpt=0) const =0
 Return wA the preconditioned form of residual rA. More...
 
virtual void preconditionT (scalarField &wT, const scalarField &rT, const direction cmpt=0) const
 Return wT the transpose-matrix preconditioned form of. More...
 

Static Public Member Functions

static word getName (const dictionary &)
 Find the preconditioner name (directly or from a sub-dictionary) More...
 
static autoPtr< preconditionerNew (const solver &sol, const dictionary &solverControls)
 Return a new preconditioner. More...
 

Protected Attributes

const solversolver_
 Reference to the base-solver this preconditioner is used with. More...
 

Detailed Description

Abstract base-class for lduMatrix preconditioners.

Definition at line 405 of file lduMatrix.H.

Constructor & Destructor Documentation

◆ preconditioner()

preconditioner ( const solver sol)
inline

Definition at line 454 of file lduMatrix.H.

◆ ~preconditioner()

virtual ~preconditioner ( )
inlinevirtual

Destructor.

Definition at line 473 of file lduMatrix.H.

Member Function Documentation

◆ getName()

Foam::word getName ( const dictionary solverControls)
static

Find the preconditioner name (directly or from a sub-dictionary)

Definition at line 40 of file lduMatrixPreconditioner.C.

References Foam::constant::electromagnetic::e, dictionary::lookupEntry(), and Foam::name().

Here is the call graph for this function:

◆ type()

virtual const word& type ( ) const
pure virtual

Runtime type information.

◆ declareRunTimeSelectionTable() [1/2]

declareRunTimeSelectionTable ( autoPtr  ,
preconditioner  ,
symMatrix  ,
(const solver &sol, const dictionary &solverControls)  ,
(sol, solverControls)   
)

◆ declareRunTimeSelectionTable() [2/2]

declareRunTimeSelectionTable ( autoPtr  ,
preconditioner  ,
asymMatrix  ,
(const solver &sol, const dictionary &solverControls)  ,
(sol, solverControls)   
)

◆ New()

Foam::autoPtr< Foam::lduMatrix::preconditioner > New ( const solver sol,
const dictionary solverControls 
)
static

◆ read()

virtual void read ( const dictionary )
inlinevirtual

Read and reset the preconditioner parameters.

from the given stream

Definition at line 481 of file lduMatrix.H.

◆ precondition()

virtual void precondition ( scalarField wA,
const scalarField rA,
const direction  cmpt = 0 
) const
pure virtual

Return wA the preconditioned form of residual rA.

Implemented in FDICPreconditioner, diagonalPreconditioner, GAMGPreconditioner, DICPreconditioner, DILUPreconditioner, and noPreconditioner.

◆ preconditionT()

virtual void preconditionT ( scalarField wT,
const scalarField rT,
const direction  cmpt = 0 
) const
inlinevirtual

Return wT the transpose-matrix preconditioned form of.

residual rT. This is only required for preconditioning asymmetric matrices.

Reimplemented in diagonalPreconditioner, DILUPreconditioner, and noPreconditioner.

Definition at line 496 of file lduMatrix.H.

References NotImplemented.

Field Documentation

◆ solver_

const solver& solver_
protected

Reference to the base-solver this preconditioner is used with.

Definition at line 412 of file lduMatrix.H.


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