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