[petsc-users] dmplex normal vector incorrect for periodic gmsh grids

Praveen C praveen at gmx.net
Wed Dec 14 08:20:09 CST 2022


Hello

I tried this with the attached code but I still get wrong normals.

./dmplex -dm_plex_filename ug_periodic.msh -dm_localize_height 1

Code and grid file are attached

Thank you
praveen



> On 14-Dec-2022, at 6:40 PM, Matthew Knepley <knepley at gmail.com> wrote:
> 
> On Wed, Dec 14, 2022 at 2:38 AM Praveen C <praveen at gmx.net <mailto:praveen at gmx.net>> wrote:
>> Thank you, this MR works if I generate the mesh within the code.
>> 
>> But using a mesh made in gmsh, I see the same issue.
> 
> Because the operations happen in a different order. If you read in your mesh with
> 
>   -dm_plex_filename mymesh.gmsh -dm_localize_height 1
> 
> then it should work.
> 
>   Thanks,
> 
>      Matt
>  
>> Thanks
>> praveen
>> 
>>> On 14-Dec-2022, at 12:51 AM, Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>> wrote:
>>> 
>>> On Tue, Dec 13, 2022 at 10:57 AM Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>> wrote:
>>>> On Tue, Dec 13, 2022 at 6:11 AM Praveen C <praveen at gmx.net <mailto:praveen at gmx.net>> wrote:
>>>>> Hello
>>>>> 
>>>>> In the attached test, I read a small grid made in gmsh with periodic bc.
>>>>> 
>>>>> This is a 2d mesh.
>>>>> 
>>>>> The cell numbers are shown in the figure.
>>>>> 
>>>>> All faces have length = 2.5
>>>>> 
>>>>> But using PetscFVFaceGeom I am getting length of 7.5 for some faces. E.g.,
>>>>> 
>>>>> face: 59, centroid = 3.750000, 2.500000, normal = 0.000000, -7.500000
>>>>> ===> Face length incorrect = 7.500000, should be 2.5
>>>>> support[0] = 11, cent = 8.750000, 3.750000, area = 6.250000
>>>>> support[1] = 15, cent = 8.750000, 1.250000, area = 6.250000
>>>>> 
>>>>> There are also errors in the orientation of normal.
>>>>> 
>>>>> If we disable periodicity in geo file, this error goes away.
>>>> 
>>>> Yes, by default we only localize coordinates for cells. I can put in code to localize faces.
>>> 
>>> Okay, I now have a MR for this: https://gitlab.com/petsc/petsc/-/merge_requests/5917
>>> 
>>> I am attaching your code, slightly modified. You can run
>>> 
>>>   ./dmplex -malloc_debug 0 -dm_plex_box_upper 10,10 -dm_plex_box_faces 4,4 -dm_plex_simplex 0 -dm_view ::ascii_info_detail -draw_pause 3 -dm_plex_box_bd periodic,periodic -dm_localize_height 0
>>> 
>>> which shows incorrect edges and
>>> 
>>> ./dmplex -malloc_debug 0 -dm_plex_box_upper 10,10 -dm_plex_box_faces 4,4 -dm_plex_simplex 0 -dm_view ::ascii_info_detail -draw_pause 3 -dm_plex_box_bd periodic,periodic -dm_localize_height 1
>>> 
>>> which is correct. If you want to control things yourself, instead of using the option you can call DMPlexSetMaxProjectionHeight() on the coordinate DM yourself.
>>> 
>>>   Thanks,
>>> 
>>>      Matt
>>>  
>>>>   Thanks,
>>>> 
>>>>     Matt
>>>>  
>>>>> Thanks
>>>>> praveen
>>>> -- 
>>>> 
>> 
> 
> 
> -- 
> 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/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20221214/181899f5/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dmplex.c
Type: application/octet-stream
Size: 5155 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20221214/181899f5/attachment.obj>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20221214/181899f5/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ug_periodic.msh
Type: application/octet-stream
Size: 1205 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20221214/181899f5/attachment-0001.obj>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20221214/181899f5/attachment-0002.html>


More information about the petsc-users mailing list