Public Member Functions | Static Public Member Functions | List of all members
DILUPreconditioner Class Reference

Simplified diagonal-based incomplete LU preconditioner for asymmetric matrices. The reciprocal of the preconditioned diagonal is calculated and stored. More...

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

Public Member Functions

 TypeName ("DILU")
 
 DILUPreconditioner (const lduMatrix::solver &, const dictionary &solverControlsUnused)
 
virtual ~DILUPreconditioner ()=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 &)
 

Static Public Member Functions

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

Additional Inherited Members

- Protected Attributes inherited from lduMatrix::preconditioner
const solversolver_
 

Detailed Description

Simplified diagonal-based incomplete LU preconditioner for asymmetric matrices. The reciprocal of the preconditioned diagonal is calculated and stored.

Source files

Definition at line 52 of file DILUPreconditioner.H.

Constructor & Destructor Documentation

◆ DILUPreconditioner()

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

Definition at line 40 of file DILUPreconditioner.C.

References Foam::diag(), lduMatrix::diag(), and lduMatrix::solver::matrix().

Here is the call graph for this function:

◆ ~DILUPreconditioner()

virtual ~DILUPreconditioner ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "DILU"  )

◆ calcReciprocalD()

void calcReciprocalD ( solveScalarField rD,
const lduMatrix matrix 
)
static

Definition at line 58 of file DILUPreconditioner.C.

References UList::begin(), lduMatrix::lduAddr(), lduMatrix::lower(), lduAddressing::lowerAddr(), lduMatrix::upper(), and lduAddressing::upperAddr().

Here is the call graph for this function:

◆ precondition()

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

Implements lduMatrix::preconditioner.

Definition at line 89 of file DILUPreconditioner.C.

◆ preconditionT()

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

Reimplemented from lduMatrix::preconditioner.

Definition at line 136 of file DILUPreconditioner.C.


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