[petsc-dev] [petsc-users] petsc-users Digest, Vol 38, Issue 41

Jed Brown jedbrown at mcs.anl.gov
Sun May 6 17:31:41 CDT 2012


On Sat, Feb 18, 2012 at 11:59 AM, Barry Smith <bsmith at mcs.anl.gov> wrote:

> > -pc_type mg with one level just applies a normal smoother. I've
> sometimes thought it should do a coarse-level solve instead, but I
> haven't messed with it. Barry, why doesn't it do a direct solve?
>
>
> 1) Because MG is an accelerator of the basic smoother, MG is not a
> deccelerator of a direct solver.  That is the action of adding a coarser
> level is suppose to improve the convergence of the solver.
>
> 2) Because if you used a direct solver and the user switched from one to
> two levels they would be dismayed at the worsening of the convergence. If
> the user ran a large problem on one level it would run out of memory.
>
> 3) I don't think there is really a "correct" abstract or practical answer
> to which it should be (hence my two snide answers above)   I am happy with
> the current default


So with -snes_grid_sequence, the first solve should do something
reasonable. If we give -pc_type mg, the first solve in the sequence
(-mg_levels_0_, not -mg_coarse_) is doing a crappy iterative solve. It's
obnoxious to have to specify what to do for both of these separately, even
though the problem is of the same size in both cases, so it's usually
desirable for the same method to be used in both cases.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20120506/ddb326a2/attachment.html>


More information about the petsc-dev mailing list