MMG3D Lagrangian motion: cannot maintain body shape

Hello Saleh,
Would you mind to share mesh, displacement and the exact command you are using?
I didn’t get if you are trying to further deform the output of a first run, or you are just running the very same command on the very same initial mesh (I have just checked and it still works on my computer).

Regards,
Luca

Hi Luca,

Yes, I am trying to further deform the output of the first run.

Regards,

Hello Saleh,
I am testing by imposing the same displacement on the output of the first deformation, and I can reproduce your problem. It seems to be an issue with the internal adaptation just after the movement that I haven’t fully identified yet.

Anyway, everything goes smooth if you use -lag 1 (only swap allowed to perform displacement).
While I try to correct the issue, a more robust solution to improve the mesh quality after the displacement could be that of running mmg3d in adaptation mode on the output (in a separate call) with the -optim option on.

Best regards,
Luca

1 Like

The brief version:- Nosurf does not entirely protect surfaces during lag 2 motion, as mesh quality can cause edge splitting/flipping. fixes:

  1. Use latest MMG (pre-5.5 ignores nosurf for some)
  2. Use local Hausdorff parameters to check edge sizes and element quality.
  3. Lag 1 is safer; lag 2 requires caution.
  4. Disable Scotch during compiling.
  5. Programmatically set MMG3D_IPARAM_nosurf = 0 after displacement.

Version + mesh control + parameter enforcement preserves rotor surface.