MmgTools / mmg

open source software for bidimensional and tridimensional remeshing
http://www.mmgtools.org
Other
369 stars 118 forks source link

Feature/pattern+delone kernels consistency #186

Closed Algiane closed 1 year ago

Algiane commented 1 year ago

This PR aims to improve consistency between delaunay and pattern insertion kernels choices

Commit 9f39605 solves issue with supposed boundary edges

Patterns

With pattern kernel, before commit fe1834 an edge was considered as boundary if its two end points where boundary. In consequence, an interior edge connecting 2 boundary points was not splitted by process of internal face splitting.

Comparison of result before and after commit fe18344 are attached in init.txt file (initial behaviour) and internal-edge.txt (internal edges are now splitted). This commit impacts pattern insertion and lagrangian movement.

init.txt internal-edge.txt

Delaunay

With Delaunay kernel, before commit fe1834, an edge was considered as boundary if its computed shell was found open. It is false along interfaces between domains.

Comparison of result before and after commit fe18344 are attached in init.txt file (initial behaviour) and openshell-closeShell-may-have-bdyEdge.txt.

init.txt openshell-closeShell-may-have-bdyEdge.txt

Visual comparison between output meshes in both cases for ci tests mmg3d_NM_cone_fast, mmg3d_MultiDom_ellipse and mmg3d_MultiDom_ellipse_fast shows no visible differences.

Algiane commented 1 year ago

commit 9ae466f enhanced the improvement procedure

As for the pattern kernel, during improvement procedure, an internal edge connecting 2 bdy points was evaluated as a boundary edge and not treated. Now, we traveled the edge shell to check the edge tag from all the tetra that contains the edge.

Comparative results are provided in 9ec4ca.txt and 9ae466ff.txt files. It shows no big differences between results. 9ec4ca.txt 9ae466.txt

Algiane commented 1 year ago

commit 7e5a59 treat boundary edges independently from the data structure (and consistently with pattern kernel)

New results are attached in file 7e5a59.txt. 7e5a59.txt

It is hard to say if results are better or worse, it depends of the test case.

Algiane commented 1 year ago

Commit 98536f2 force splitting of internal edges connecting bdy points in Delaunay kernel

New results are provided in split-internal-edges.txt file. split-internal-edges.txt

This new version seems to procuce meshes: