[petsc-users] PCs and MATIS

Eric Chamberland Eric.Chamberland at giref.ulaval.ca
Tue Dec 14 21:42:33 CST 2021

Hi Barry,

yes the overlapping meshes match.  They will be generated by PETSc 
DMPlexDistributeOverlap but transposed in our in-house code and we are 
using Matthew's branch 
(https://gitlab.com/petsc/petsc/-/merge_requests/4547) to have it work 
all right.

On 2021-12-14 4:00 p.m., Barry Smith wrote:
>     Do the "overlapping meshes" "match" in the overlap regions or are you connecting completely different meshes discretizations by boundary conditions along the edges of all the sub meshes?  In other words, will your global linear system be defined by your overlapping meshes?
>     If they match but you want to use more general boundary conditions for the subproblems than PCASM supports by default you might be able to use PCSetModifySubMatrices() to allow you to modify the sub matrices before they are used in the preconditioned; you can for example modify the entries along the boundary of the domain to represent Robin's conditions. Or you can put whatever you want into the entire submatrix if modifying them is too tedious.

Ok, that is exactly what we spoted!

But since we will need the unassembled (MATIS) matrices, we have hit the 
same problem Pierre got: the call to MatCreateSubMatrices is not 
directly avoidable, so we will have to use the same trick you gave him 
some time ago... ;)

>     But if the meshes don't match then you don't really need a new PC you need to even define what your nonlinear system is and you have a very big project to write a PDE solver for non-matching overlapping grids using PETSc.

ok, no, that was not our goal right now...

Thanks again Pierre and Barry for your fast answers! :)


>    Barry
>> On Dec 14, 2021, at 3:37 PM, Eric Chamberland <Eric.Chamberland at giref.ulaval.ca> wrote:
>> Hi,
>> We want to use an Additive Schwarz preconditioner (like PCASM) combined with overlapping meshes *and* specific boundary conditions to local (MATIS) matrices.
>> At first sight, MATIS is only supported for BDDC and FETI-DP and is not working with PCASM.
>> Do we have to write a new PC from scratch to combine the use of mesh overlap, MATIS and customized local matrices?
>> ...or is there any working example we should look at to start from? :)
>> Thanks a lot!
>> Eric
>> -- 
>> Eric Chamberland, ing., M. Ing
>> Professionnel de recherche
>> GIREF/Université Laval
>> (418) 656-2131 poste 41 22 42
Eric Chamberland, ing., M. Ing
Professionnel de recherche
GIREF/Université Laval
(418) 656-2131 poste 41 22 42

More information about the petsc-users mailing list