<div dir="ltr"><div>Sorry either your mail system or mine prevented me from attaching the file, so I put it on pastebin:</div><div><a href="https://pastebin.com/awFpc1Js">https://pastebin.com/awFpc1Js</a></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 11, 2023 at 4:54 PM Matthew Knepley <<a href="mailto:knepley@gmail.com">knepley@gmail.com</a>> wrote:<br></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">Can you send the .msh file? I still have not installed Gmsh :)<div><br></div><div> Thanks,</div><div><br></div><div> Matt</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 11, 2023 at 2:43 PM Daniel R. Shapero <<a href="mailto:shapero@uw.edu" target="_blank">shapero@uw.edu</a>> wrote:<br></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>Hi all -- I'm trying to read in 2nd-order / piecewise quadratic meshes that are generated by gmsh and I don't understand how the coordinates are stored in the plex. I've been discussing this with Matt Knepley <a href="https://urldefense.com/v3/__https://github.com/firedrakeproject/firedrake/issues/982__;!!K-Hz7m0Vt54!hL9WLR51ieyHFZx8N9AjhDwJCRpvmQto9CL1XOTkkAxFfUbtsabHuBDOATnWyP6lQszhA2gOStva7A$" target="_blank">here</a> as it pertains to Firedrake but I think this is more an issue at the PETSc level.</div><div><br></div><div><a href="https://urldefense.com/v3/__https://gist.github.com/danshapero/a140daaf951ba58c48285ec29f5973cc__;!!K-Hz7m0Vt54!hL9WLR51ieyHFZx8N9AjhDwJCRpvmQto9CL1XOTkkAxFfUbtsabHuBDOATnWyP6lQszhA2hho2eD1g$" target="_blank">This code</a> uses gmsh to generate a 2nd-order mesh of the unit disk, read it into a DMPlex, print out the number of cells in each depth stratum, and finally print a view of the coordinate DM's section. The resulting mesh has 64 triangles, 104 edges, and 41 vertices. For 2nd-order meshes, I'd expected there to be 2 degrees of freedom at each node and 2 at each edge. The output is:</div><div><br></div><div>```<br></div><div>Depth strata: [(64, 105), (105, 209), (0, 64)]<br><br>PetscSection Object: 1 MPI process<br> type not yet set<br>1 fields<br> field 0 with 2 components<br>Process 0:<br> ( 0) dim 12 offset 0<br> ( 1) dim 12 offset 12<br> ( 2) dim 12 offset 24<br>...</div><div> ( 62) dim 12 offset 744<br> ( 63) dim 12 offset 756<br> ( 64) dim 0 offset 768<br> ( 65) dim 0 offset 768<br></div><div>...<br> ( 207) dim 0 offset 768<br> ( 208) dim 0 offset 768<br> PetscSectionSym Object: 1 MPI process<br> type: label<br> Label 'depth'<br> Symmetry for stratum value 0 (0 dofs per point): no symmetries<br> Symmetry for stratum value 1 (0 dofs per point): no symmetries<br> Symmetry for stratum value 2 (12 dofs per point):<br> Orientation range: [-3, 3)<br> Symmetry for stratum value -1 (0 dofs per point): no symmetries</div><div>```</div><div><br></div><div>The output suggests that there are 12 degrees of freedom in each triangle. That would mean the coordinate field is discontinuous across cell boundaries. Can someone explain what's going on? I tried reading the .msh file but it's totally inscrutable to me. I'm happy to RTFSC if someone points me in the right direction. Matt tells me that the coordinate field should only be discontinuous if the mesh is periodic, but this mesh shouldn't be periodic.<br></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><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="https://urldefense.com/v3/__http://www.cse.buffalo.edu/*knepley/__;fg!!K-Hz7m0Vt54!hL9WLR51ieyHFZx8N9AjhDwJCRpvmQto9CL1XOTkkAxFfUbtsabHuBDOATnWyP6lQszhA2go23tjRg$" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div>
</blockquote></div>