The reason we default to these "very strong" (gmres + ILU(0)) smoothers is robustness, we'd rather have the solver "just work" for our users and be a little bit slower than have it often fail but be optimal for special cases. Most of the MG community has a mental block about using Krylov methods, this is why you find few papers that discuss their use with multigrid. Note also that using several iterations of GMRES (with or without ILU(0)) is still order n work so you still get the optimal convergence of mutligrid methods (when they work, of course). Barry On Feb 27, 2008, at 1:40 PM, Matthew Knepley wrote:
On Wed, Feb 27, 2008 at 1:31 PM, <[email protected]> wrote:
Hi
I hope that this question is not outside the scope of this mailinglist.
As far as I understand PETSc uses preconditioned GMRES(or another KSP method) as pre- and postsmoother on all multigrid levels? I was just
This is the default. However, you can use any combination of KSP/PC on any given level with options. For instance,
-mg_level_ksp_type richardson -mg_level_pc_type sor
gives "regulation" MG. We default to GMRES because it is more robust.
wondering why and where in the literature I can read about that method? I thought that a fast method would be to use MG (with Gauss-Seidel RB/ zebra smothers) as a preconditioner for GMRES? I have looked at papers written by Oosterlee etc.
In order to prove something about GMRES/MG, you would need to prove something about the convergence of GMRES on the operators at each level. Good luck. GMRES is the enemy of all convergence proofs. See paper by Greenbaum, Strakos, & Ptak. If SOR works, great and it is much faster. However, GMRES/ILU(0) tends to be more robust.
Matt
Kind Regards -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener