Skip to content

Level set option with level set != 0 creates false reference splits and wrong implicit surface #218

@jenom

Description

@jenom

I think I found a bug with the level set option. The setup is as follow (top row images):

  • two stacked cubes touching,
  • each cube has it's own tetrahedron reference,
  • a level set (level at 0.5) where part of the implicit surface aligns with the interface between the two cubes.

After the level set adaptation we get false split volume parts for the lower cube (lower left image). If I shift the level set by -0.5 and set the level set level to 0 (instead of 0.5) in the mmg call, I get the correct result (lower right image). The reference boundary itself is always correctly preserved.

compare

The following shows the resulting interior implicit shapes
compare_2

The above pictures are based on this simplified example: example.zip

I have used the following commands:

mmg3d_O3 -ls 0.5 -hausd 1e-04 -hgrad 1.2 -hmin 2e-05 -nreg -nr -in input.mesh -out output.mesh -sol input_0.5.sol
mmg3d_O3 -ls 0 -hausd 1e-04 -hgrad 1.2 -hmin 2e-05 -nreg -nr -in input.mesh -out output.mesh -sol input_0.0.sol

I hope this explains the issue and helps testing/debugging.

  -- MMG3D, Release 5.7.1 (Dec. 20, 2022)
     Copyright (c) Bdx INP/CNRS/Inria/UPMC, 2004-
     May 24 2023 14:21:10

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions