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> > > >