Simplified diagonal-based incomplete LU preconditioner for asymmetric matrices. The reciprocal of the preconditioned diagonal is calculated and stored. More...
Public Member Functions | |
TypeName ("DILU") | |
Runtime type information. More... | |
DILUPreconditioner (const lduMatrix::solver &, const dictionary &solverControlsUnused) | |
Construct from matrix components and preconditioner solver controls. More... | |
virtual | ~DILUPreconditioner () |
Destructor. More... | |
virtual void | precondition (scalarField &wA, const scalarField &rA, const direction cmpt=0) const |
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 residual rT. More... | |
Public Member Functions inherited from lduMatrix::preconditioner | |
virtual const word & | type () 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... | |
Static Public Member Functions | |
static void | calcReciprocalD (scalarField &rD, const lduMatrix &matrix) |
Calculate the reciprocal of the preconditioned diagonal. More... | |
Static Public Member Functions inherited from lduMatrix::preconditioner | |
static word | getName (const dictionary &) |
Find the preconditioner name (directly or from a sub-dictionary) More... | |
static autoPtr< preconditioner > | New (const solver &sol, const dictionary &solverControls) |
Return a new preconditioner. More... | |
Additional Inherited Members | |
Protected Attributes inherited from lduMatrix::preconditioner | |
const solver & | solver_ |
Reference to the base-solver this preconditioner is used with. More... | |
Simplified diagonal-based incomplete LU preconditioner for asymmetric matrices. The reciprocal of the preconditioned diagonal is calculated and stored.
Definition at line 50 of file DILUPreconditioner.H.
DILUPreconditioner | ( | const lduMatrix::solver & | sol, |
const dictionary & | solverControlsUnused | ||
) |
Construct from matrix components and preconditioner solver controls.
Definition at line 43 of file DILUPreconditioner.C.
References DILUPreconditioner::calcReciprocalD(), and lduMatrix::solver::matrix().
|
inlinevirtual |
Destructor.
Definition at line 77 of file DILUPreconditioner.H.
References DILUPreconditioner::calcReciprocalD(), DILUPreconditioner::precondition(), and DILUPreconditioner::preconditionT().
TypeName | ( | "DILU" | ) |
Runtime type information.
|
static |
Calculate the reciprocal of the preconditioned diagonal.
Definition at line 58 of file DILUPreconditioner.C.
References UList< T >::begin(), lduMatrix::lduAddr(), lduMatrix::lower(), lduAddressing::lowerAddr(), DILUPreconditioner::precondition(), List< T >::size(), lduMatrix::upper(), and lduAddressing::upperAddr().
Referenced by DILUPreconditioner::DILUPreconditioner(), DILUSmoother::DILUSmoother(), and DILUPreconditioner::~DILUPreconditioner().
|
virtual |
Return wA the preconditioned form of residual rA.
Implements lduMatrix::preconditioner.
Definition at line 89 of file DILUPreconditioner.C.
References UList< T >::begin(), DILUPreconditioner::preconditionT(), and List< T >::size().
Referenced by DILUPreconditioner::calcReciprocalD(), and DILUPreconditioner::~DILUPreconditioner().
|
virtual |
Return wT the transpose-matrix preconditioned form of residual rT.
Reimplemented from lduMatrix::preconditioner.
Definition at line 139 of file DILUPreconditioner.C.
References UList< T >::begin(), and List< T >::size().
Referenced by DILUPreconditioner::precondition(), and DILUPreconditioner::~DILUPreconditioner().