Simplified diagonal-based incomplete LU preconditioner for asymmetric matrices. More...
Public Member Functions | |
TypeName ("DILU") | |
Runtime type information. More... | |
TDILUPreconditioner (const typename LduMatrix< Type, DType, LUType >::solver &sol, const dictionary &preconditionerDict) | |
Construct from matrix components and preconditioner data dictionary. More... | |
virtual | ~TDILUPreconditioner () |
virtual void | precondition (Field< Type > &wA, const Field< Type > &rA) const |
Return wA the preconditioned form of residual rA. More... | |
virtual void | preconditionT (Field< Type > &wT, const Field< Type > &rT) const |
Return wT the transpose-matrix preconditioned form of. More... | |
![]() | |
virtual const word & | type () const =0 |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, preconditioner, symMatrix,(const solver &sol, const dictionary &preconditionerDict),(sol, preconditionerDict)) | |
declareRunTimeSelectionTable (autoPtr, preconditioner, asymMatrix,(const solver &sol, const dictionary &preconditionerDict),(sol, preconditionerDict)) | |
preconditioner (const solver &sol) | |
virtual | ~preconditioner () |
virtual void | read (const dictionary &preconditionerDict) |
Read and reset the preconditioner parameters. More... | |
Static Public Member Functions | |
static void | calcInvD (Field< DType > &rD, const LduMatrix< Type, DType, LUType > &matrix) |
Calculate the reciprocal of the preconditioned diagonal. More... | |
![]() | |
static autoPtr< preconditioner > | New (const solver &sol, const dictionary &preconditionerDict) |
Return a new preconditioner. More... | |
Private Attributes | |
Field< DType > | rD_ |
The inverse (reciprocal for scalar) preconditioned diagonal. More... | |
Additional Inherited Members | |
![]() | |
const solver & | solver_ |
Reference to the base-solver this preconditioner is used with. More... | |
Simplified diagonal-based incomplete LU preconditioner for asymmetric matrices.
The inverse (reciprocal for scalar) of the preconditioned diagonal is calculated and stored.
Definition at line 53 of file TDILUPreconditioner.H.
TDILUPreconditioner | ( | const typename LduMatrix< Type, DType, LUType >::solver & | sol, |
const dictionary & | preconditionerDict | ||
) |
Construct from matrix components and preconditioner data dictionary.
Definition at line 32 of file TDILUPreconditioner.C.
|
inlinevirtual |
Definition at line 81 of file TDILUPreconditioner.H.
TypeName | ( | "DILU" | ) |
Runtime type information.
Calculate the reciprocal of the preconditioned diagonal.
Definition at line 48 of file TDILUPreconditioner.C.
References UList::begin(), Foam::dot(), Foam::inv(), LduMatrix::lduAddr(), LduMatrix::lower(), lduAddressing::lowerAddr(), LduMatrix::upper(), and lduAddressing::upperAddr().
Return wA the preconditioned form of residual rA.
Implements LduMatrix::preconditioner.
Definition at line 81 of file TDILUPreconditioner.C.
References Foam::dot().
Return wT the transpose-matrix preconditioned form of.
residual rT.
Reimplemented from LduMatrix::preconditioner.
Definition at line 131 of file TDILUPreconditioner.C.
References Foam::dot().
|
private |
The inverse (reciprocal for scalar) preconditioned diagonal.
Definition at line 60 of file TDILUPreconditioner.H.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.