[petsc-users] coordinate degrees of freedom for 2nd-order gmsh mesh
Daniel R. Shapero
shapero at uw.edu
Wed Jan 11 19:33:24 CST 2023
Sorry either your mail system or mine prevented me from attaching the file,
so I put it on pastebin:
https://pastebin.com/awFpc1Js
On Wed, Jan 11, 2023 at 4:54 PM Matthew Knepley <knepley at gmail.com> wrote:
> Can you send the .msh file? I still have not installed Gmsh :)
>
> Thanks,
>
> Matt
>
> On Wed, Jan 11, 2023 at 2:43 PM Daniel R. Shapero <shapero at uw.edu> wrote:
>
>> 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 here
>> <https://urldefense.com/v3/__https://github.com/firedrakeproject/firedrake/issues/982__;!!K-Hz7m0Vt54!hL9WLR51ieyHFZx8N9AjhDwJCRpvmQto9CL1XOTkkAxFfUbtsabHuBDOATnWyP6lQszhA2gOStva7A$>
>> as it pertains to Firedrake but I think this is more an issue at the PETSc
>> level.
>>
>> This code
>> <https://urldefense.com/v3/__https://gist.github.com/danshapero/a140daaf951ba58c48285ec29f5973cc__;!!K-Hz7m0Vt54!hL9WLR51ieyHFZx8N9AjhDwJCRpvmQto9CL1XOTkkAxFfUbtsabHuBDOATnWyP6lQszhA2hho2eD1g$>
>> 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:
>>
>> ```
>> Depth strata: [(64, 105), (105, 209), (0, 64)]
>>
>> PetscSection Object: 1 MPI process
>> type not yet set
>> 1 fields
>> field 0 with 2 components
>> Process 0:
>> ( 0) dim 12 offset 0
>> ( 1) dim 12 offset 12
>> ( 2) dim 12 offset 24
>> ...
>> ( 62) dim 12 offset 744
>> ( 63) dim 12 offset 756
>> ( 64) dim 0 offset 768
>> ( 65) dim 0 offset 768
>> ...
>> ( 207) dim 0 offset 768
>> ( 208) dim 0 offset 768
>> PetscSectionSym Object: 1 MPI process
>> type: label
>> Label 'depth'
>> Symmetry for stratum value 0 (0 dofs per point): no symmetries
>> Symmetry for stratum value 1 (0 dofs per point): no symmetries
>> Symmetry for stratum value 2 (12 dofs per point):
>> Orientation range: [-3, 3)
>> Symmetry for stratum value -1 (0 dofs per point): no symmetries
>> ```
>>
>> 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.
>>
>
>
> --
> 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/
> <https://urldefense.com/v3/__http://www.cse.buffalo.edu/*knepley/__;fg!!K-Hz7m0Vt54!hL9WLR51ieyHFZx8N9AjhDwJCRpvmQto9CL1XOTkkAxFfUbtsabHuBDOATnWyP6lQszhA2go23tjRg$>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20230111/8d53c06a/attachment-0001.html>
More information about the petsc-users
mailing list