[petsc-users] ASM vs GASM
Boyce Griffith
boyceg at gmail.com
Mon Apr 29 20:47:34 CDT 2019
> On Apr 29, 2019, at 8:39 PM, Smith, Barry F. via petsc-users <petsc-users at mcs.anl.gov> wrote:
>
>
> I believe so. Probably you've already done this but you can look at src/ksp/ksp/examples/tutorials ex62.c and ex64.c for sample usage.
Yep!
> Do you get the same (correct) behavior for both when you use inner_ises but no outer (let GASM/ASM determine it)? What if you use the same outer as inner?
I think that I had a bug in setting up the overlapping subdomains. Now GASM seems to work, but the convergence history does not seem to depend on how I set the outer IS, which seems surprising. In particular, with GASM, I’ve tried setting the outer IS to include overlaps; setting the outer IS to be the inner IS; and setting the outer IS to NULL — all converge in 2 iterations using exact subdomain solves. (This is a problem with only 2 subdomains.)
ASM gives different results. Specifically, if I let ASM determine the overlaps automatically, then it converges in 4 iterations. If I use the inner IS and the overlapping IS, then it takes nearly 40.
> Note that for ASM the "inner" subdomains can overlap while for GASM they cannot overlap (and of course their union needs to be all degrees of freedom).
I think that I have been setting up the inner subdomains correctly for GASM. I have some doubts about how I am setting up the overlapping regions, and so I think I will just let GASM setup the overlaps for now.
> GASM is usually used where each inner is exactly several processes but it should work more generally as well.
This is a situation where I have different PDEs on two subdomains with a flux continuity condition along the interface. One subdomain has a scalar PDE (just Laplace’s equation), the other has a vector PDE. I am trying to use GASM to split up the problems, and then to use GAMG on the scalar domain and FIELDSPLIT on the vector domain. I already know that FIELDSPLIT can be made to work well on the vector PDE.
Thanks!
— Boyce
> Barry
>
>
>> On Apr 29, 2019, at 7:10 PM, Griffith, Boyce Eugene via petsc-users <petsc-users at mcs.anl.gov> wrote:
>>
>> I am trying to setup a GASM preconditioner and am running into some difficulty getting convergence even with exact subdomain solvers. I am just doing things in serial now, and tried switching to ASM, and get convergence. I am wondering if I am misunderstanding the GASM interface. If inner_ises and outer_ises define the “inner” and “outer” subdomains for GASM, should GASM and ASM do the same things when configured via:
>>
>> PCGASMSetSubdomains(pc, n_subdomains, inner_ises, outer_ises);
>>
>> and
>>
>> PCASMSetLocalSubdomains(pc, n_subdomains, outer_ises, inner_ises);
>>
>> Thanks!
>>
>> — Boyce
>
More information about the petsc-users
mailing list