Hi Pierre, Thank you for the advice. I will look into implementing it as suggested.
This is just a toy example; the mesh may be larger in the actual calculations. Best wishes, Zongze > On 7 Oct 2024, at 23:34, Pierre Jolivet <pie...@joliv.et> wrote: > > 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 >> <mailto: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>