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().


1.8.13