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! :)

Eric

   Barry


On Dec 14, 2021, at 3:37 PM, Eric Chamberland 
<[email protected]> 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

Reply via email to