[petsc-users] DMGetStratumSize smaller than expected
Matthew Knepley
knepley at gmail.com
Thu Jan 31 05:50:50 CST 2019
On Thu, Jan 31, 2019 at 6:22 AM rickcha--- via petsc-users <
petsc-users at mcs.anl.gov> wrote:
> Hello,
>
> I have an issue with DMGetStatumSize() and DMGetStratumIS().
>
> My intention is to access all vertices (height = 0) that are part of a
> named label in my DM.
>
Depth = 0 are the vertices, but this works with DMPlexGetDpethStratum().
You seems like
you are calling DMLabelGetStratumIS(). The value here is the label value,
not the height or depth.
Thanks,
Matt
> The problem is that only vertices that are exclusively part of this named
> label seem to be included. The label is assigned to a face, let’s call it
> “A” for simplicities sake. Adjacent faces have their own label (and
> Dirichlet BC’s prescribed to them if that matters) which I will refer to as
> (“B”,”C”,”D” and “E”). Vertices that lie on the edge should be part of more
> than one stratum. I.e. belonging to “A” AND “B”, or “A” AND “B” AND “C” if
> they lie on a corner where the three faces meet.
> However, those shared vertices seem not to be included when calling
> DMGetStatumSize() and DMGetStratumIS().
>
> For a 5x5x5 hex cube with faces labeled “A”, “B”, […], I would expect
> DMGetStratumSize(dm,”A”,0,&size) to yield size = 36. But I get 16 instead,
> missing the 20 “shared” vertices.
>
> Is there a way to change this behaviour? Or do I have to get the face
> stratum (height = 2) and then refer to the cone of the cone to get what I
> want?
>
>
> Thanks,
> Max
--
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/20190131/ab0a250a/attachment-0001.html>
More information about the petsc-users
mailing list