[petsc-users] Questions on DMPlexDistribute

Matthew Knepley knepley at gmail.com
Thu May 9 14:17:48 CDT 2019

On Thu, May 9, 2019 at 2:07 PM Praveen C via petsc-users <
petsc-users at mcs.anl.gov> wrote:

> Dear all
> I am trying to understand partitioning using DMPlexDistribute.
> I see an option “overlap”. Does this determine how many ghost cells are
> added ? Are these determined based on face neighboring cells or vertex
> neighboring cells ?

Its user settable:

> In
> https://www.mcs.anl.gov/petsc/petsc-current/src/ts/examples/tutorials/ex11.c.html
> I see a call to DMPlexConstructGhostCells after DMPlexDistribute. Can you
> explain the purpose of this and how it is related to overlap ?

This is a different thing. It is a way to enforce boundary conditions in
finite volume methods. You make a fake cell on the other side of every
boundary face so that you can put a state there which creates the right
face flux.

> After DMPlexDistribute, how can I identify locally owned cells and ghost
> cells ?

1) Ghost cells are special, not shared with other processors, and marked
with a label

2) Overlap cells are regular cells, and shared with other processes. You
can determine if you own the cell by
    checking whether it is present in the point PetscSF:



> Thanks
> praveen

What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20190509/27e37113/attachment.html>

More information about the petsc-users mailing list