我正在使用GMSH创建3D有限元网格。我面临的一个问题是,当我创建限制3D体积的曲面并将它们网格化时,GMSH会创建一个网格,其中一些法线指向内部,而另一些法线指向外部(因为法向矢量,这应该是这样)方向定义了实体)。有什么方法可以确保GMSH以正确的方向创建网格?
这是一个多维数据集的.geo文件:
// Gmsh project created on Mon Jan 21 16:45:18 2019
SetFactory("OpenCASCADE");
//+
Point(1) = {0, 0, 0, 1.0};
//+
Point(2) = {1, 0, 0, 1.0};
//+
Point(3) = {1, 1, 0, 1.0};
//+
Point(4) = {0, 1, 0, 1.0};
//+
Point(5) = {0, 0, 1, 1.0};
//+
Point(6) = {1, 0, 1, 1.0};
//+
Point(7) = {1, 1, 1, 1.0};
//+
Point(8) = {0, 1, 1, 1.0};
//+
Line(1) = {8, 5};
//+
Line(2) = {5, 6};
//+
Line(3) = {6, 2};
//+
Line(4) = {2, 1};
//+
Line(5) = {1, 4};
//+
Line(6) = {4, 3};
//+
Line(7) = {3, 7};
//+
Line(8) = {7, 6};
//+
Line(9) = {2, 3};
//+
Line(10) = {7, 8};
//+
Line(11) = {8, 4};
//+
Line(12) = {1, 5};
//+
Curve Loop(1) = {6, 7, 10, 11};
//+
Plane Surface(1) = {1};
//+
Curve Loop(2) = {7, 8, 3, 9};
//+
Plane Surface(2) = {2};
//+
Curve Loop(3) = {3, 4, 12, 2};
//+
Plane Surface(3) = {3};
//+
Curve Loop(4) = {12, -1, 11, -5};
//+
Plane Surface(4) = {4};
//+
Curve Loop(5) = {10, 1, 2, -8};
//+
Plane Surface(5) = {5};
//+
Curve Loop(6) = {9, -6, -5, -4};
//+
Plane Surface(6) = {6};
//+
Physical Surface(1) = {1};
//+
Physical Surface(2) = {3};
//+
Physical Surface(3) = {2, 6, 5, 4};
如果答案是否定的,还有其他免费的有限元网格生成器吗?
预先感谢