[petsc-users] specifying vertex coordinates using DMPlexCreateFromCellListParallel

Hassan Raiesi Hassan.Raiesi at aero.bombardier.com
Tue Jun 27 10:08:41 CDT 2017


Great, It’s clear now ☺,
One more question, any plan to support other element shapes (prism and pyramid) in 3D?,  DMPlexGetRawFaces_Internal only supports tets and hexs in 3D, can prisms and pyramids be used as degenerate hexahedrons?

Thank you
-Hassan





From: Matthew Knepley [mailto:knepley at gmail.com]
Sent: Tuesday, June 27, 2017 10:17 AM
To: Hassan Raiesi <Hassan.Raiesi at aero.bombardier.com>
Cc: petsc-users at mcs.anl.gov
Subject: Re: [petsc-users] specifying vertex coordinates using DMPlexCreateFromCellListParallel

On Tue, Jun 27, 2017 at 9:12 AM, Hassan Raiesi <Hassan.Raiesi at aero.bombardier.com<mailto:Hassan.Raiesi at aero.bombardier.com>> wrote:
Thanks for your reply,

Is there any example where each rank owns more than 1 element, i.e for the simple mesh here(attached png file), how should I pack and pass the coordinates of the vertices owned by rank0, rank1

Rank0:numcells = 2; num nodes=4, cells=[154 245] , nodes=[1 5 2 4]
nodes = 1245
vertex coords: in what node order ?
[coords_n1 coords_n2 coords_n4 coords_n5] or
[coords_n2 coords_n4 coords_n1 coords_n5] or …..?


rank1: numcells = 2; num nodes=2, cells=[532 635], nodes=[6 3]
vertexcoords [how to pack the nodes coords here?]
should it be  [x6y6 x3y3] or [x3y3 x6y6]? In what order?

I think there is a misunderstanding here.

There is NO connection between the cell order and the vertex order. Each process gets a contiguous
set of cells (in the global numbering) and a contiguous set of vertices (in the global numbering). These
two are NOT related. We then move the vertices to the correct processes. In this way, we can load
completely in parallel, without requiring any setup in the mesh file.

If you are worried, you can always arrange the order of vertices to "match" the order of cells.

  Thanks,

    Matt

thanks



From: Matthew Knepley [mailto:knepley at gmail.com<mailto:knepley at gmail.com>]
Sent: Sunday, June 25, 2017 1:04 PM
To: Hassan Raiesi <Hassan.Raiesi at aero.bombardier.com<mailto:Hassan.Raiesi at aero.bombardier.com>>
Cc: petsc-users at mcs.anl.gov<mailto:petsc-users at mcs.anl.gov>
Subject: Re: [petsc-users] specifying vertex coordinates using DMPlexCreateFromCellListParallel

On Tue, Apr 11, 2017 at 9:21 AM, Hassan Raiesi <Hassan.Raiesi at aero.bombardier.com<mailto:Hassan.Raiesi at aero.bombardier.com>> wrote:
Hello,

I’m trying to use DMPlexCreateFromCellListParallel to create a DM from an already partitioned mesh,
It requires an array of numVertices*spaceDim numbers, but how should one order the coordinates of the vertices?

Global order. Here is the idea. You must read the file in chunks so that each proc can read its own chunk in parallel
without talking to anyone else.

we only pass the global vertex numbers using ‘const int cells[]’ to define the cell-connectivity, so passing the vertex coordinates in local ordering wouldn’t make sense?

Yes.

If it needs to be in global ordering, should I sort the global index of the node numbers owned by each rank (as they wont be continuous).

Nope.

  Thanks,

    Matt


Thank you

Hassan Raiesi,
Bombardier Aerospace
www.bombardier.com<http://www.bombardier.com>




--
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

http://www.caam.rice.edu/~mk51/



--
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

http://www.caam.rice.edu/~mk51/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20170627/9b2116bf/attachment.html>


More information about the petsc-users mailing list