[petsc-dev] DM not propagating into Fieldsplit when using external DMShell?

Boris Boutkov borisbou at buffalo.edu
Mon Sep 24 17:21:32 CDT 2018


Thanks for the prompt reply and clarifications!

2) Could you be more specific about what should be different? It sounds
> like you want "your" DM attached to the (0,0) block so that
>     you can do GMG on the Laplacian there.
>

Exactly. This works if I use pc_type gamg on the (0,0) block, but if I swap
to pc_type mg which should use my DM info I end up in this situation.


> 3) We do not actually attach the DM proper. Rather DMCreateSubDM() is
> called to create a new DM with only the fields in the 0 block present. It is
>     likely that your DMShell does not implement this, and so something
> default is being done which does not work.
>
> What is not getting propagated properly for you?
>

Right, we do not currently implement this, and as it stands it looks like
the coarsen/refine, createinterpolation/createrestriction pointers are all
empty for the DM at:

https://bitbucket.org/petsc/petsc/src/34b5b06749738ef6a1a80e732c08f902d83c0500/src/dm/interface/dm.c#lines-2524

while setting up MG at in the first iteration at :

https://bitbucket.org/petsc/petsc/src/34b5b06749738ef6a1a80e732c08f902d83c0500/src/ksp/pc/impls/mg/mg.c#lines-659
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20180924/1af6a810/attachment.html>


More information about the petsc-dev mailing list