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 ()=default |
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... | |
Public Member Functions inherited from LduMatrix< Type, DType, LUType >::preconditioner | |
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) | |
Construct for given solver. More... | |
virtual | ~preconditioner ()=default |
Destructor. More... | |
virtual void | read (const dictionary &) |
Read and reset the preconditioner parameters from the given dictionary. 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 Public Member Functions inherited from LduMatrix< Type, DType, LUType >::preconditioner | |
static autoPtr< preconditioner > | New (const solver &sol, const dictionary &preconditionerDict) |
Return a new preconditioner. More... | |
Additional Inherited Members | |
Protected Attributes inherited from LduMatrix< Type, DType, LUType >::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 inverse (reciprocal for scalar) of the preconditioned diagonal is calculated and stored.
Definition at line 52 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 27 of file TDILUPreconditioner.C.
References LduMatrix< Type, DType, LUType >::solver::matrix().
|
virtualdefault |
TypeName | ( | "DILU" | ) |
Runtime type information.
Calculate the reciprocal of the preconditioned diagonal.
Definition at line 43 of file TDILUPreconditioner.C.
References UList< T >::begin(), Foam::dot(), Foam::inv(), LduMatrix< Type, DType, LUType >::lduAddr(), LduMatrix< Type, DType, LUType >::lower(), UList< T >::size(), and LduMatrix< Type, DType, LUType >::upper().
Return wA the preconditioned form of residual rA.
Implements LduMatrix< Type, DType, LUType >::preconditioner.
Definition at line 76 of file TDILUPreconditioner.C.
References UList< Type >::begin(), Foam::dot(), and UList< Type >::size().
Return wT the transpose-matrix preconditioned form of.
residual rT.
Reimplemented from LduMatrix< Type, DType, LUType >::preconditioner.
Definition at line 126 of file TDILUPreconditioner.C.
References UList< Type >::begin(), Foam::dot(), and UList< Type >::size().