
Classes | |
| struct | AdditionalData |
Public Member Functions | |
| SolverFGMRES (SolverControl &cn, VectorMemory< VECTOR > &mem, const AdditionalData &data=AdditionalData()) | |
| SolverFGMRES (SolverControl &cn, const AdditionalData &data=AdditionalData()) | |
| template<class MATRIX , class PRECONDITIONER > | |
| void | solve (const MATRIX &A, VECTOR &x, const VECTOR &b, const PRECONDITIONER &precondition) |
Private Attributes | |
| AdditionalData | additional_data |
| FullMatrix< double > | H |
| FullMatrix< double > | H1 |
Implementation of the Generalized minimal residual method with flexible preconditioning method.
This version of the GMRES method allows for the use of a different preconditioner in each iteration step. Therefore, it is also more robust with respect to inaccurate evaluation of the preconditioner. An important application is also the use of a Krylov space method inside the preconditioner.
FGMRES needs two vectors in each iteration steps yielding a total of 2*AdditionalDatamax_basis_size+1 auxiliary vectors.
Caveat: documentation of this class is not up to date. There are also a few parameters of GMRES we would like to introduce here.
| SolverFGMRES< VECTOR >::SolverFGMRES | ( | SolverControl & | cn, | |
| VectorMemory< VECTOR > & | mem, | |||
| const AdditionalData & | data = AdditionalData() | |||
| ) |
Constructor.
| SolverFGMRES< VECTOR >::SolverFGMRES | ( | SolverControl & | cn, | |
| const AdditionalData & | data = AdditionalData() | |||
| ) |
Constructor. Use an object of type GrowingVectorMemory as a default to allocate memory.
| void SolverFGMRES< VECTOR >::solve | ( | const MATRIX & | A, | |
| VECTOR & | x, | |||
| const VECTOR & | b, | |||
| const PRECONDITIONER & | precondition | |||
| ) | [inline] |
Solve the linear system
for x.
Referenced by SolverSelector< VECTOR >::solve().
AdditionalData SolverFGMRES< VECTOR >::additional_data [private] |
Additional flags.
FullMatrix<double> SolverFGMRES< VECTOR >::H [private] |
Projected system matrix
FullMatrix<double> SolverFGMRES< VECTOR >::H1 [private] |
Auxiliary matrix for inverting H
documentation generated on Mon Nov 23 22:58:05 2009 by
doxygen
1.6.1