在gmsh中复制结构化表面/网格

时间:2018-03-09 16:15:12

标签: 2d mesh

我试图用gmsh中的简单几何形状构建一个大型结构,我想使用结构化(四边形)网格。我首先创建该形状,然后根据需要复制和翻译它以构建我的最终结构。

问题是,即使我将原始形状的线条和曲面定义为超限,但是一旦我复制并翻译它,该属性就会丢失。检查此示例代码是否为正方形:

Point(1) = {0, 0, 0, 1};
Point(2) = {0, 1, 0, 1};
Point(3) = {1, 1, 0, 1};
Point(4) = {1, 0, 0, 1};
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};

Transfinite Line {1, 2, 3, 4} = 10 Using Progression 1;
Transfinite Surface {6};
Recombine Surface {6};

Translate {0, 1, 0} {
  Duplicata { Surface{6}; }
}

我使用结构化网格获取原始正方形,但重复的正方形没有此属性。 复制曲面时是否有可能保留结构化网格?

  

编辑:似乎确实没有可能复制结构化体积或表面。问题是这些属性与网格本身直接相关,而不是几何。并且网格不能重复。

1 个答案:

答案 0 :(得分:2)

有可能。

您可以使用GMSH Geometry.CopyMeshingMethod属性,该属性负责复制重复或已翻译几何实体的网格划分方法。默认情况下,它已关闭。要打开它,您只需将以下行添加到GEO文件的开头即可。

Geometry.CopyMeshingMethod = 1;

现在,比较:

enter image description here

在GMSH 3.0.5上测试过,但应该适用于任何现代版本。