Belos Package Browser (Single Doxygen Collection)
Development
|
"Hybrid block GMRES" means that the solver first runs block GMRES.It stores the resulting coefficients, which form a matrix polynomial. It then can reuse this polynomial for subsequent solves. This avoids the cost of the inner products and norms in GMRES. However, the resulting polynomial is not necessarily as effective as the equivalent number of GMRES iterations.
We call solvers that take this approach "seed solvers." Belos implements both a Block GMRES seed solver (this class) and a CG-based seed solver (Belos::PCPGSolMgr).
Here is a list of all the parameters that this solver accepts:
MagnitudeType
): The level that residual norms must reach to decide convergence. Default: 1e-8.int
): The block size to be used by the underlying block GMRES solver. Default: 1 (which means don't use blocks).int
): The restart length; that is, the number of blocks allocated for the Krylov basis. Default: 300.int
): The maximum number of iterations GMRES is allowed to perform, across all restarts. Default: 1000.int
): The maximum number of restarts the underlying solver is allowed to perform. This does not include the first restart cycle. Default: 20.std::string
): The desired orthogonalization method. Default: "DGKS".Like all Belos solvers, parameters have relative or "delta" semantics. This means the following: