Public Member Functions | List of all members
diagonalPreconditioner Class Reference

Diagonal preconditioner for both symmetric and asymmetric matrices. More...

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

Public Member Functions

 TypeName ("diagonal")
 
 diagonalPreconditioner (const lduMatrix::solver &, const dictionary &solverControlsUnused)
 
virtual ~diagonalPreconditioner ()=default
 
virtual void precondition (solveScalarField &wA, const solveScalarField &rA, const direction cmpt=0) const
 
virtual void preconditionT (solveScalarField &wT, const solveScalarField &rT, const direction cmpt=0) const
 
- Public Member Functions inherited from lduMatrix::preconditioner
virtual const wordtype () const =0
 
 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 ()=default
 
virtual void read (const dictionary &)
 

Additional Inherited Members

- Static Public Member Functions inherited from lduMatrix::preconditioner
static word getName (const dictionary &)
 
static autoPtr< preconditionerNew (const solver &sol, const dictionary &solverControls)
 
- Protected Attributes inherited from lduMatrix::preconditioner
const solversolver_
 

Detailed Description

Diagonal preconditioner for both symmetric and asymmetric matrices.

The reciprocal of the diagonal is calculated and stored for reuse because on most systems '*' is faster than '/'.

Source files

Definition at line 53 of file diagonalPreconditioner.H.

Constructor & Destructor Documentation

◆ diagonalPreconditioner()

diagonalPreconditioner ( const lduMatrix::solver sol,
const dictionary solverControlsUnused 
)

Definition at line 42 of file diagonalPreconditioner.C.

◆ ~diagonalPreconditioner()

virtual ~diagonalPreconditioner ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "diagonal"  )

◆ precondition()

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

Implements lduMatrix::preconditioner.

Definition at line 66 of file diagonalPreconditioner.C.

Referenced by diagonalPreconditioner::preconditionT().

Here is the caller graph for this function:

◆ preconditionT()

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

Reimplemented from lduMatrix::preconditioner.

Definition at line 104 of file diagonalPreconditioner.H.

References diagonalPreconditioner::precondition().

Here is the call graph for this function:

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