其他分享
首页 > 其他分享> > SnappyHexMesh(之七)创建二维几何体

SnappyHexMesh(之七)创建二维几何体

作者:互联网

转载:知乎大神 中国空气动力研究与发展中心 力学博士 刘云楚 的文章

5.5.3可创建二维几何体

二维几何类型如下表所示:

圆面片(searchableDisk)

基于原点、法线方向和半径值定义厚度为零的圆面。指定体加密时,加密方法只能使用distance模式。

命令用法如下:

disk

{

type searchableDisk;

origin (2 2 2);

normal (0 1 0);

radius 1;

}

通过体加密后效果如下所示:

图1. 圆面体加密效果图

有界平面(searchablePlate)

用户可以指定与坐标系对齐的有限平面。通过定义最小对角线坐标点origin与xyz方向跨度长度值span。有界平面为二维几何,设置span参数时用户必须在两个方向上指定跨度,第三个方向必须为零。指定体加密时,加密方法只能使用distance模式。

命令用法如下:

plane

{

type searchablePlate;

origin (2 2 2);

span (2 2 0);

}

通过体加密后效果如下所示:

 

图2. 有界平面体加密效果图

5.5.4高级几何处理

平面切割(searchablePlane)

用户可通过定义无界平面切除几何体部分区域,并保留平面法线方向上的网格。可以根据以下3种方法创建平面:1、平面由点和法线向量定义。2、平面由3点定义,平面法向满足右手法则。3、采用代数平面方程:ax+by+cz+d=0定义。指定体加密时,加密方法只能使用distance模式。

命令用法如下:

例一 :由点和法线向量定义的平面

plane

{

type searchablePlane;

planeType pointAndNormal;

pointAndNormalDict

{

basePoint (1 1 1);

normal (0 1 0);

}

}

例二:由平面上的3个点定义的平面

plane

{

type searchablePlane;

planeType embeddedPoints;

embeddedPointsDict

{

point1 (1 1 1);

point2 (0 1 0);

point3 (0 0 1)

}

}

例三:由平面方程定义的平面

plane

{

type searchablePlane;

planeType planeEquation;

planeEquationDict

{

a 0;

b 0;

c 1;

d 2;

}

}

通过体加密后效果如下所示:

图3. 平面切割效果图

缩放、转换与合并几何体(searchableSurfaceCollection)

用户创建或导入三维几何体以后,snappyHexMesh允许用户对已有几何体进行缩放,并支持本地坐标系中对几何体平移与旋转操作。用户通过定义scale(Xa Yb Zc)参数可以对该几何体进行xyz方向缩放。通过改变本地坐标系原点坐标origin实现平移操作,通过向量(e1、e2)、(e2、e3)或(e3、e1)的组合定义旋转角度。另外也支持用户通过命令mergeSubRegions对多个几何体进行布尔求和。

命令用法如下:

用户创建或导入三维几何:

Cylinder

{

type triSurfaceMesh;

file "Cylinder.stl";

}

图4. 导入圆柱体

几何操作过程为:对圆柱体进行Y方向缩放2倍,再复制缩放后的圆柱体到y轴方向0.08m处,并合并两个新几何体。

具体命令如下:

twoCylinders

{

type searchableSurfaceCollection;

mergeSubRegions true; //是否合并两个几何体

Cylinder_cope1

{

surface Cylinder;

scale (1 2 1);

transform

{

coordinateSystem

{

type cartesian;

origin (0 0 0);

coordinateRotation

{

type axesRotation;

e1 (1 0 0);

e3 (0 0 1);

}

}

}

}

Cylinder_cope2

{

surface Cylinder;

scale (1 2 1);

transform

{

coordinateSystem

{

type cartesian;

origin (0 0.08 0);

coordinateRotation

{

type axesRotation;

e1 (1 0 0);

e3 (0 0 1);

}

}

}

}

}

新生成的几何体如下图所示:

图5. 变形合并后圆柱体

缝隙修复searchableSurfaceWithGaps

修复原理为在缝隙处用垂直于原面向量的两个小向量(大小根据gap参数指定)移动测试向量。用+和-来测试此向量,仅当两个都记录为匹配时,稍微扩展测试向量(使用SMALL)以解决几何边界数值误差。软件使用多个稍微偏移的基础表面来确保网格不会穿过间隙。

用户必须先在在几何字典(geometry)中定义几何三角面元,软件在此基础上识别(并封闭)缝隙,修复缝隙尺寸通过gap指定。

命令用法如下:

sphere.stl

{

type triSurfaceMesh;

}

sphere

{

type searchableSurfaceWithGaps;

surface sphere.stl;

gap 1e-3;

}

标签:之七,SnappyHexMesh,加密,定义,几何体,平面,如下,type
来源: https://www.cnblogs.com/Xiwang-Sun/p/15370725.html