Your mesh is tiny, you should not use ParMmg but plain Mmg instead which is 
much more robust.
I don’t know how easy it is to do with DMPlex though (gather a DM and a metric 
on a single process), especially from the command line.

Thanks,
Pierre

> On 7 Oct 2024, at 4:46 PM, Zongze Yang <yangzon...@gmail.com> wrote:
> 
> Hi PETSc team,
> 
> I noticed that the ParMmg interface for overlap 
> (https://urldefense.us/v3/__https://gitlab.com/petsc/petsc/-/merge_requests/7593__;!!G_uCfscf7eWS!bh5eQHxA8QXn10TtTUOI5lmjFbfxFBtZz9CQoiYgyZSR7oDMYp8NK2HHP2UaWRXmU82ddDBpMx3ctAfX8GFQAuL_$
>  ) has been fixed. I tried using the updated version in my code, but it did 
> not perform as expected when refining the attached mesh (or fine mesh of the 
> same geometry) in parallel.
> 
> Here are the details output: The first two sequential runs work correctly. 
> However, when running the code in parallel without refinement, some warnings 
> are generated. After refining the mesh in parallel, the code crashes.
> 
> ```
> ❯ mpiexec -n 1 python test_adapt.py -dm_adaptor parmmg          
> 
> ❯ mpiexec -n 1 python test_adapt.py -dm_adaptor parmmg -refine 1
> 
> ❯ mpiexec -n 2 python test_adapt.py -dm_adaptor parmmg          
>  ## Warning: MMG5_interpreg_ani: 608: unexpected case (null normal), 
> impossible interpolation.
> 
>  ## Warning: MMG5_movbdyregpt_ani: unable to compute optimal position for at 
> least 1 point.
>  ## Warning: MMG5_interpreg_ani: 608: unexpected case (null normal), 
> impossible interpolation.
> 
>  ## Warning: MMG5_movbdyregpt_ani: unable to compute optimal position for at 
> least 1 point.
> 
> ❯ mpiexec -n 2 python test_adapt.py -dm_adaptor parmmg -refine 1
> Assertion failed: (isfinite(dd)), function PMMG_hashNorver_normals, file 
> analys_pmmg.c, line 1072.
> Assertion failed: (isfinite(dd)), function PMMG_hashNorver_normals, file 
> analys_pmmg.c, line 1072.
> 
> ===================================================================================
> =   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> =   PID 22704 RUNNING AT yzzs-mac.local
> =   EXIT CODE: 6
> =   CLEANING UP REMAINING PROCESSES
> =   YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
> ===================================================================================
> YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Abort trap: 6 (signal 6)
> This typically refers to a problem with your application.
> Please see the FAQ page for debugging suggestions
> 
> 
> ❯ mpiexec -n 2 python test_adapt.py -dm_adaptor parmmg -overlap
>  ## Warning: MMG5_interpreg_ani: 608: unexpected case (null normal), 
> impossible interpolation.
> 
>  ## Warning: MMG5_movbdyregpt_ani: unable to compute optimal position for at 
> least 1 point.
>  ## Warning: MMG5_interpreg_ani: 608: unexpected case (null normal), 
> impossible interpolation.
> 
>  ## Warning: MMG5_movbdyregpt_ani: unable to compute optimal position for at 
> least 1 point.
> 
> 
> ❯ mpiexec -n 2 python test_adapt.py -dm_adaptor parmmg -overlap -refine
> Assertion failed: (isfinite(dd)), function PMMG_hashNorver_normals, file 
> analys_pmmg.c, line 1072.
> Assertion failed: (isfinite(dd)), function PMMG_hashNorver_normals, file 
> analys_pmmg.c, line 1072.
> 
> ===================================================================================
> =   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> =   PID 25424 RUNNING AT yzzs-mac.local
> =   EXIT CODE: 6
> =   CLEANING UP REMAINING PROCESSES
> =   YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
> ===================================================================================
> YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Abort trap: 6 (signal 6)
> This typically refers to a problem with your application.
> Please see the FAQ page for debugging suggestions
> ```
> 
> The mesh geometry is a cylinder with an interface. The geometry file of gmsh, 
> the mesh file, and the code are attached. Could someone take a look and help 
> identify the issue?
> 
> Thank you!
> 
> Best regards,
> Zongze
> 
> <cylinder_test.msh>
> <test_adapt.py>
> <geometry.png>
> <cylinder.geo>
> 
> 
> 

Reply via email to