"Almost-structured" Gmsh 中的二维四边形网格

"Almost-structured" 2d quadrilateral mesh in Gmsh

我想使用 Gmsh 生成 two-dimensional 四边形网格。网格应该是这样的,它的单元格是 "as quadratic as possible" 具有给定的边长。也就是说,如果几何结构简单,我希望得到结构完美的网格,如果几何结构更复杂,我希望只出现局部失真。

考虑以下最小示例:

lc = 1;

Point(1) = {0, 0, 0, lc};
Point(2) = {10, 0,  0, lc} ;
Point(3) = {10, 4, 0, lc} ;
Point(4) = {0,  4, 0, lc} ;

Point(5) = {1,  1, 0, lc} ;
Point(6) = {3,  1, 0, lc} ;
Point(7) = {2,  2, 0, lc} ;


Line(1) = {1,2} ;
Line(2) = {3,2} ;
Line(3) = {3,4} ;
Line(4) = {4,1} ;

Line(5) = {5,6} ;
Line(6) = {6,7} ;
Line(7) = {7,5} ;


Line Loop(1) = {4,1,-2,3} ;
Line Loop(2) = {5,6,7} ;

Plane Surface(1) = {1,2} ;

尽管在其他简单的矩形几何体中只有一个小孔,但上面产生了一个高度非结构化的网格:

我的想法是这样的(取自 Automesh2d 的网站,一个商业网格生成器):

我能否也使用 Gmsh(或者就此而言,使用任何开源软件)获得类似的 "quasi-structured," two-dimensional 四边形网格?我非常感谢任何支持。

这应该可以使用 Transfinite Lines。您在某些点之间定义了一条超限线,在您的情况下是在大矩形的角点之间。这样做时,您可以指定应在此行中包含多少个节点。如果您在矩形的相对线上选择相同数量的节点,您应该做的很好。重新组合表面,你就完成了。 在这个简单的 YouTube-Tutorial 中,您将得到逐步指导。 我很快尝试了与您相似的几何形状,这就是我得到的:

Mesh