[petsc-users] Extracting parts of DMPLEX mesh

Lawrence Mitchell wence at gmx.li
Wed Jun 19 02:49:35 CDT 2019


On Wed, 19 Jun 2019 at 08:37, Matthew Knepley via petsc-users <
petsc-users at mcs.anl.gov> wrote:

> On Mon, Jun 17, 2019 at 9:49 PM Swarnava Ghosh <swarnava89 at gmail.com>
> wrote:
>
>> Hi Matthew,
>>
>> I am primarily trying to interpolate fields which are defined on
>> vertices. For a process, the point at which the interpolation to be carried
>> out can be in an element that is owned by another process. My initial plan
>> while writing the earlier email was to create local dmplexes in each rank
>> which contains all the elements that are required for interpolation.
>> However on second thoughts, this is too cumbersome.
>>
>
> Thanks. This is much clearer to me now.
>
>
>> What might be potentially better approach (ofcourse you will be an expert
>> to judge) is to simply extend the ghost region to include the elements of
>> the neighbor processes. In this way the points to interpolate at lie in the
>> ghost region of the process. Is there a way I could extend the ghost region
>> if I know the neighbor ranks?
>>
>
> I see at least two cases:
>
>   1) Only a few points, anywhere in the domain
>
>       If you have a few points that can be anywhere in the domain, I would
> use
>
>
> https://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/DMInterpolationCreate.html#DMInterpolationCreate
>

Does this work in parallel? If I look at the implementation here:
https://www.mcs.anl.gov/petsc/petsc-current/src/dm/impls/plex/plexgeometry.c.html#DMLocatePoints_Plex

It seems it complains unless run on comm_self.

Cheers,

Lawrence

>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20190619/3f419b5a/attachment.html>


More information about the petsc-users mailing list