gmsh中如何保证节点点?

Jul*_*ius 1 numeric mesh numerical-methods finite-element-analysis gmsh

我正在尝试构建一个非常简单的网格。我有一个盒子:

box_size = 50;
lb = 10.;
Point(1) = {-box_size/2, -box_size/2, -box_size/2, lb};
Point(2) = {box_size/2, -box_size/2, -box_size/2, lb};
Point(3) = {box_size/2, box_size/2, -box_size/2, lb};
Point(4) = {-box_size/2, box_size/2, -box_size/2, lb};
Line(1) = {1, 2};
Line(2) = {2, 3};
Line(3) = {3, 4};
Line(4) = {4, 1};
Line Loop(5) = {1, 2, 3, 4};
Plane Surface(6) = {5};
Extrude {0, 0, box_size} {
  Surface{6};
}
Run Code Online (Sandbox Code Playgroud)

这工作得很好,gmsh 很乐意对其进行 (3D) 网格划分。问题是我要确保盒子内的某些点是节点。所以我的问题是,我如何确保这些点,比如这些

lc = 10;
Point(5) = {7.150548, 1.000000,  -6.990684, lc};
Point(6) = {-4.438894, 1.000000,  -8.960816, lc};
Point(7) = {-9.893936, 1.000000,  1.452595, lc};
Point(8) = {-1.675894, 1.000000,  9.858569, lc};
Point(9) = {8.858176, 1.000000,  4.640336, lc};
Point(10) = {1.675894, 4.750000,  -9.858569, lc};
Point(11) = {-8.858176, 4.750000,  -4.640336, lc};
Point(12) = {-7.150548, 4.750000,  6.990684, lc};
Point(13) = {4.438894, 4.750000,  8.960816, lc};
Point(14) = {9.893936, 4.750000,  -1.452595, lc};
Point(15) = {7.150548, 8.500000,  -6.990684, lc};
Run Code Online (Sandbox Code Playgroud)

是网格的一部分吗?

我需要这个的原因是我需要在这些特定点施加边界条件。

如果这在其他软件中更容易,我也很乐意改变。我希望有人能帮帮忙。

先感谢您。

小智 5

答案很晚了,但无论如何它可能会有所帮助。如果点的索引为 p,体积或表面积之一为 q,则:

Point{p} In Volume {q};
Run Code Online (Sandbox Code Playgroud)

或者如果它在 Surface 上:

Point{p} In Surface {q};
Run Code Online (Sandbox Code Playgroud)