关于Gmsh4.8网格划分程序如何实现局部细化

本文比较短,之前在我的程序中集成了Gmsh4.8,测试效果似乎还可以,但是最近在对一个有孔洞的模型测试时发现,空洞处局部划分很不理想,具体如下:

关于Gmsh4.8网格划分程序如何实现局部细化_第1张图片

圆形的空划分成了正多边形,继续用netgen6.2并设置ueslocalh = true测试如下:

关于Gmsh4.8网格划分程序如何实现局部细化_第2张图片

 

这个很明显在空洞处进行了局部细化,因此对于Gmsh,需要设置局部细化选项才行,默认的选项可能还达不到这个效果,在阅读Gmsh的PDF文档中发现一些选项可以进行设置,可是默认值偏小或者设置为false,因此我提取出来,加入到一个对话框中并测试。效果如下:

关于Gmsh4.8网格划分程序如何实现局部细化_第3张图片

 

其中选项: Mesh.MinimumElementsPerTwoPi 和 Mesh.CharacteristicLengthFromCurvature  是基于曲率的细化;Mesh.CharacteristicLengthMin 和 Mesh.CharacteristicLengthMax是基于边缘长度的细化。Mesh.MinimumElementsPerTwoPi  值默认为6,值越大孔洞处越密集;Mesh.CharacteristicLengthFromCurvature 是bool类型,需要开启。博文如有任何问题,请您加我QQ:1623451686。恳请指正和交流。

你可能感兴趣的:(negtgen,gmesh,OpenCascade,3d,图形学)