<div dir="ltr"><div dir="ltr">On Wed, Oct 27, 2021 at 4:50 AM 袁煕 <<a href="mailto:yuanxi@advancesoft.jp">yuanxi@advancesoft.jp</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi,<br><div><br></div><div>I am trying to parallelize my serial FEM program using PETSc. This program calculates structure deformation by using various types of elements such as solid, shell, beam, and truss. At the very beginning, I found it was hard for me to put such kinds of elements into DMPlex. Because solid elements are topologically three dimensional, shell element two, and beam or truss are topologically one-dimensional elements. After reading chapter 2.10: "DMPlex: Unstructured Grids in PETSc" of users manual carefully,  I found the provided functions, such as DMPlexSetCone, cannot declare those topological differences.</div><div><br></div><div>My question is : Is it possible and how to define all those topologically different elements into a DMPlex struct?</div></div></blockquote><div><br></div><div>Yes. The idea is to program in a dimension-independent way, so that the code can handle cells of any dimension.</div><div>What you probably want is the "depth" in the DAG representation, which you can think of as the dimension of a cell.</div><div><br></div><div>  <a href="https://petsc.org/main/docs/manualpages/DMPLEX/DMPlexGetPointDepth.html#DMPlexGetPointDepth">https://petsc.org/main/docs/manualpages/DMPLEX/DMPlexGetPointDepth.html#DMPlexGetPointDepth</a></div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Thanks in advance!</div><div><br></div><div>Best regards,</div><div><br></div><div>Yuan.</div><div><br></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>