MG question

jens.madsen at jens.madsen at
Wed Feb 27 14:22:02 CST 2008


Thanks Matthew and Barry

First I solve 2d boundary value problems of size 512^2 - 2048^2. 

Typically either kind of problem(solve for phi)

I) poisson type equation:

\nabla^2 \phi(x,y) = f(x,y)


\nabla \cdot (g(x,y) \nabla\phi(x,y))  = f(x,y)

Successively with new f and g functions 

Do you know where to read about the smoothing properties of GMRES and
CG? All refs that I find are only describing smoothing with GS-RB etc.

My vague idea on how a fast solver is to use a (preconditioned ILU?)
krylov (CG for spd ie. problem I, GMRES for II)) method with additional
MG preconditioning(GS-RB smoother, Krylov solver on coarsest level)?

As my problems are not that big I fear that I will get no MG speedup if
I use krylov methods as smoothers?

Kind Regards Jens 

-----Original Message-----
From: owner-petsc-users at
[mailto:owner-petsc-users at] On Behalf Of Barry Smith
Sent: Wednesday, February 27, 2008 8:49 PM
To: petsc-users at
Subject: Re: MG question

   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).


On Feb 27, 2008, at 1:40 PM, Matthew Knepley wrote:

> On Wed, Feb 27, 2008 at 1:31 PM,  <jens.madsen at> 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

More information about the petsc-users mailing list