I am attempting to understand how Plex reads GMSH files with
periodicity. In particular, what happens to the coordinate localisation.
Here's what I expect:
When reading a periodic mesh, the coordinate section will not only
associate dofs with mesh vertices, but instead where the "periodic
boundary" is (at least), the vertices have no dofs associated with
them, and instead the cell has the coordinate dofs for that cell.
Hence, for a triangular mesh, I expect that for every cell, if I call:
DMPlexVecGetClosure(dm, coordSection, coords, cell, ...);
That I will always get back an array with 6 entries.
However, this is not the case. For those cells that have been
identified as periodic, the vertices still have dofs associated with
them, and so I get back 12 entries when calling VecGetClosure, with
each coordinate repeated twice.
Am I misunderstanding what's going on?