[petsc-dev] [petsc-users] Multigrid with defect correction

Jed Brown jed at jedbrown.org
Sun Mar 5 11:18:52 CST 2017

Barry Smith <bsmith at mcs.anl.gov> writes:

>    I've looked at the code again and I'm afraid that just "adding a second DM" is not trivial. The DMKSP/SNES/TS stuff is all built around a single DM and has stuff like ->dmoriginal in it (do we have two dmoriginal with all its complications?). 
>    Perhaps the entire KSPSetComputeOperators() model was misguided and
>    I should have stuck with the "you fill up all the needed
>    information for the levels of PCMG" before you do the multigrid
>    setup instead of providing callbacks that can fill it them up on
>    the fly "as needed".  

How would this work when the PCMG is deeply nested and you want to
rediscretize on coarse grids?

>    We could possibly throwout all the coarsen/refine hook stuff and
>    the DMKSP construct. 

I don't think the coarsen or refine stuff is specific to KSP?  How would
you intend to do coarse levels for FAS as a nonlinear preconditioner?

>    Essentially we'd only be requiring SNESComputeJacobian to know
>    about the PCMG API to provide the coarser grid operators. The
>    coarsen/refine hook stuff seems to be there only to hide from the
>    SNESComputeJacobian the PCMG API. At lot of complication for what
>    real benefit besides our programming egos?

Why just PCMG, not every possible nesting of PCMG inside other PCs?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20170305/dd008079/attachment.sig>

More information about the petsc-dev mailing list