[petsc-users] what is the restriction for PCMG, and how to control it?
Jed Brown
jed at jedbrown.org
Mon Sep 18 20:17:21 CDT 2017
Ed Bueler <elbueler at alaska.edu> writes:
> Dear PETSc --
>
> This is most embarassing, but somehow I can't see it in the docs.
>
> Regarding defaults for DMDA and PCMG, for the fine-to-coarse restriction,
> does -pc_type mg use the adjoint of interpolation? (I.e. "full
> weighting," at least up to a constant.) Or is an injection used?
It's "full weighting" -- transpose of interpolation [*] which you can
select (for DMDA) using DMDASetInterpolationType. Injection is terrible
for PCMG because it has order zero -- high frequency harmonics are
aliased at full amplitude onto the coarse grid (see Brandt's MG guide,
§4.3). Injection can (and should, when relevant) be used for *state*
restriction in FAS because it is more accurate for low-frequency
components ("infinite secondary order") and aliasing is irrelevant in
that context. So there isn't an "automatic" way to use injection in
PCMG, though I suppose it could be added for educational purposes.
[*] The scaling for restriction is managed by the "rscale" vector
returned by DMCreateInterpolation.
> I see that in src/dm/impls/da/dainterp.c, both (Q1,Q0) interpolation and
> some injection are _implemented_ for DMDA. But I don't see what is used by
> default, or how to control it at the command line. Asking for options
> related to my question is a bit of a dead end. For example, in
> src/snes/examples/tutorials/,
> ./ex5 -da_refine 3 -pc_type mg -help | grep XX
> returns nothing at all for XX=injection,restriction,interpolation.
>
> Would a new option
> -pc_mg_restriction_type transpose|injection
> make sense?
>
> Thanks,
>
> Ed
>
>
> --
> Ed Bueler
> Dept of Math and Stat and Geophysical Institute
> University of Alaska Fairbanks
> Fairbanks, AK 99775-6660
> 301C Chapman
-------------- 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-users/attachments/20170918/9198d0bd/attachment.sig>
More information about the petsc-users
mailing list