#include <LinPrecond.hpp>
Inheritance diagram for LinPrecond< T >:


Public Member Functions | |
| virtual void | PreProcess (void *&context, SparseMatrix< T > &A)=0 |
| Prepares the preconditioner for a given matrix. | |
| virtual void | Run (void *&context, MultiVector< T > &r, MultiVector< T > &c)=0 |
Applies the preconditioner to a given vector 'r', i.e. computes . | |
| virtual void | PostProcess (void *&context) |
| Releases the information referenced by the context context The context to release. | |
| virtual void LinPrecond< T >::PreProcess | ( | void *& | context, | |
| SparseMatrix< T > & | A | |||
| ) | [pure virtual] |
Prepares the preconditioner for a given matrix.
This function must be called only once for a given matrix. Then the preconditioner can be applied to any residual and any right-hand side. This function does not return any value but may throw exceptions
| [in] | context | The context to initialize |
| [in] | A | The matrix |
Implemented in GSPrecond< T >, LexILUPrecond< T >, IdentityPrecond< T >, SORPrecond< T >, and SORaPrecond< T >.
| virtual void LinPrecond< T >::Run | ( | void *& | context, | |
| MultiVector< T > & | r, | |||
| MultiVector< T > & | c | |||
| ) | [pure virtual] |
Applies the preconditioner to a given vector 'r', i.e. computes
.
Implemented in GSPrecond< T >, LexILUPrecond< T >, IdentityPrecond< T >, SORPrecond< T >, and SORaPrecond< T >.
| virtual void LinPrecond< T >::PostProcess | ( | void *& | context | ) | [virtual] |
Releases the information referenced by the context context The context to release.
Implements SysPrecond< T >.
Reimplemented in LexILUPrecond< T >, IdentityPrecond< T >, and SORaPrecond< T >.
1.5.2