|
TBCI Numerical high perf. C++ Library
2.8.0
|
#include <band_matrix.h>


Public Member Functions | |
| DILU_BdMatrixPreconditioner () | |
| DILU_BdMatrixPreconditioner (const BdMatrix< T > &A) | |
| ~DILU_BdMatrixPreconditioner () | |
| void | update (const BdMatrix< T > &A) |
| TVector< T > | solve (TVector< T > x) const |
| TVector< T > | solve (const Vector< T > &v) const |
| TVector< T > | transSolve (const Vector< T > &v) const |
| TVector< T > | transSolve (TVector< T > tv) const |
Public Member Functions inherited from Preconditioner_Sig< T, BdMatrix< T > > | |
| Preconditioner_Sig () | |
| Preconditioner_Sig (const BdMatrix< T > &) | |
| virtual | ~Preconditioner_Sig () |
Templated incomplete LU preconditioner for the class TBCI::BdMatrix
Diag. Incomplete LU decomposition as preconditioner for Krylov subspace methods
Note: Quite fast and efficient preconditioner. More effective than Diagonal (Jacobi) preconditioning, but less effective than ILU0 decomposition. Computational costs slighly above Jacobi. Unfortunately, for not so well conditioned matrices, DILU becomes numerically unstable quite early. Long before the others, so I'd not advice to use it in case you're not confident about a good condition of your matrix.
Definition at line 65 of file band_matrix.h.
|
inline |
Definition at line 43 of file diluprecond.h.
|
inline |
Definition at line 44 of file diluprecond.h.
References DILU_BdMatrixPreconditioner< T >::update().
|
inline |
Definition at line 46 of file diluprecond.h.
|
virtual |
Implements Preconditioner_Sig< T, BdMatrix< T > >.
Definition at line 103 of file diluprecond.h.
References BCHKNR, i, TVector< T >::setval(), TVector< T >::size(), and y.
Referenced by DILU_BdMatrixPreconditioner< T >::solve(), and DILU_BdMatrixPreconditioner< T >::transSolve().
|
inlinevirtual |
Implements Preconditioner_Sig< T, BdMatrix< T > >.
Definition at line 54 of file diluprecond.h.
References DILU_BdMatrixPreconditioner< T >::solve().
|
inlinevirtual |
Implements Preconditioner_Sig< T, BdMatrix< T > >.
Definition at line 61 of file diluprecond.h.
References DILU_BdMatrixPreconditioner< T >::solve().
|
inlinevirtual |
Implements Preconditioner_Sig< T, BdMatrix< T > >.
Definition at line 64 of file diluprecond.h.
References DILU_BdMatrixPreconditioner< T >::solve().
|
virtual |
Implements Preconditioner_Sig< T, BdMatrix< T > >.
Definition at line 74 of file diluprecond.h.
References BdMatrix< T >::adiag, BCHK, BdMatrix< T >::bdiag, BdMatrix< T >::diag, BdMatrix< T >::diagconf, BdMatrix< T >::dim, BVector< T >::get(), i, LIKELY, REGISTER, BVector< T >::size(), T, and UNLIKELY.
Referenced by DILU_BdMatrixPreconditioner< T >::DILU_BdMatrixPreconditioner().
1.8.5