[petsc-dev] 6-node wedge cells in DMPlex

Adrian Croucher a.croucher at auckland.ac.nz
Thu Jan 26 18:27:10 CST 2017


hi Matt,


On 27/01/17 03:04, Matthew Knepley wrote:
> On Wed, Jan 25, 2017 at 11:12 PM, Adrian Croucher 
> <a.croucher at auckland.ac.nz <mailto:a.croucher at auckland.ac.nz>> wrote:
>
>     hi Matt,
>
>     A couple of years ago we discussed adding support for 6-node wedge
>     cells in DMPlex- the hurdle being that at present DMPlex doesn't
>     support cells with faces of different shapes (see below)- and you
>     said it could be done, if and when I needed it.
>
>     People are starting to want to use my code on real models now,
>     many of which have 6-node wedge cells. So it would be very handy
>     to have support for those in DMPlex fairly soon if possible.
>
>     Any chance you would be able to take a look at it? In principle I
>     would be happy to help if I can. I have started looking at
>     plexinterpolate.c to try and see how it works, but at this stage
>     I'm not at all confident that I understand the subtleties.
>
> Okay. First I need to understand exactly what shape we want to handle. 
> Can you draw it or explain precisely?

I've attached a picture, with a list of how the edges and faces are 
composed (not sure if the ordering is what you would prefer or not).

>
> Second, we need to prescribe a total order on the vertices for a 
> wedge, and then a set of faces as ordered arrays of vertices.
> That information goes here:
>
> https://bitbucket.org/petsc/petsc/src/e8e596daf24561903cea0839b7b68a432a6283e4/src/dm/impls/plex/plexinterpolate.c?at=master&fileviewer=file-view-default#plexinterpolate.c-37
>
> I think that might be all we have to do, but until you try something, 
> secret assumptions lurking in the code are not obvious.

Last time we talked about it, there was an issue around the fact that 
DMPlexInterpolateFaces_Internal() assumes all faces in each cell to be 
of the same shape, which isn't true for cell types like the 6-node 
wedge- some are triangles and some are quadrilaterals:

> The problem here is that if I allow faces of different shapes, I have 
> to keep track of the shape of each
> face when I make it. This is possible,  and I have added it to the 
> TODO list, but I think it will be a while
> before I get to it.

That may be the tricky part, and I'm not sure how much I can help with 
it- I have looked at the code but am not confident I understand it 
fully. I am happy at least to help with the definition of the cell and 
testing etc.

Cheers, Adrian

-- 
Dr Adrian Croucher
Senior Research Fellow
Department of Engineering Science
University of Auckland, New Zealand
email: a.croucher at auckland.ac.nz
tel: +64 (0)9 923 4611

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20170127/57c31b2a/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 6_node_wedge_cell.pdf
Type: application/pdf
Size: 7248 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20170127/57c31b2a/attachment.pdf>


More information about the petsc-dev mailing list