面向计算流体动力学的三棱柱网格生成方法
2015-07-13王学渊胥学金张征宇
王学渊 胥学金 张征宇
摘要:现有三棱柱网格的生成方法因不能避免负体积现象,从而使计算流体动力学(CFD)仿真分析失败,为此,提出三棱柱CFD网格生成方法,将三角形物面网格分为多个特征域与辅助域,创建特征框架与辅助框架以及域网格点的参数化模型,生成满意拉伸比的边界层三棱柱网格,避免了四面体在边界层网格填充效率不高的缺点。多个应用实例表明文中方法的正确有效,故有实用价值。
关键词:三棱柱网格;三角形网格;计算流体动力学
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2015)13-0244-03
Abstract: A method of generating prismatic grids for computational fluid dynamics(CFD), is presented to avoid terminating CFD calculation caused by prismatic grids of negative volume. In this method, a triangle mesh model is divided into several feature shells and assistant shells, on which the corresponding feature frames & assistant frames and parameterization of these shells is constructed, to produce desire prismatic grids and get higher filling rate compared to tetrahedral grids. This method is verified by some engineering cases, which shows it is useful.
Key words: prismatic grids; triangle meshes; CFD
计算流体动力学(CFD)采用的网格主要有:结构网格、非结构网格和半结构的三棱柱网格[1,2]。
结构网格方法易于生成物面附近的边界层网格、计算方法(湍流计算模型)比较成熟,缺点是物面离散时间长、单块网格边界条件的确定以及网格块之间各种相关信息的传递复杂,对复杂外形无法实现物面网格生成的“自动”;非结构网格方法可自动生成物面网格,因而能较好地处理边界,适用于模拟真实复杂外型,但网格填充效率低,粘性分析的计算周期太长;因此,兼有两者优点的半结构三棱柱网格受到青睐:与非结构的四面体网格相比,在其结构化方向(物面法向)上允许更大的时间步[2],同时基于半结构网格的代数化湍流模型相对简单得多,基于Navier-Stokes方程仿真3维流动现象所需内存少[1-5]。
但是,基于三角形物面网格阵面推进生成三棱柱网格的方法,对于复杂外形可能产生负体积三棱柱单元,致使CFD数值计算失败,故需要判断三棱柱单元间是否相交,极大增加了计算量。
为此,本文提出基于框架的三棱柱网格快速生成方法,以满足基于 CFD的产品外形优化对三棱柱网格快速生成技术的需求。
1 相关概念
定义1 给定三角形物面网格[T],若共享某边的两三角形夹角在30°至45°间,则将该边称为特征边;将[T]的特征边首尾相连围成的单连通三角形子集称为[T]的特征壳域,特征壳域组成的集合记为[Shellfeature]。为便于三棱柱网格生成,将[T]的非特征壳域分成多个单连通三角形子集,这些子集称为[T]的辅助壳域,辅助壳域组成的集合记为[Shellasst]。将特征(辅助)壳域的边界称为特征(辅助)环。
定义2 如图1所示,将特征环[loopfeaturei]的顶点沿其法矢推进形成的形体称为特征框架,记为[FrameFi]。同理辅助环[loopAi]的顶点沿其法矢推进形成辅助框架体,记为[FrameAi]。
定义3 将[loopfeaturei]([loopAi])称为特征框架(辅助框架)的源环,[loopfeature'i]([loopA'i])称为目标环。
将源环包围的单连通壳域称为源壳域,源环通过推进得到的目标环包围的单连通壳域称为目标壳域。将源环的顶点与目标环上对应顶点的连线称为框架的棱,连线的长度称为棱长。
定义4 棱分段是指将框架的每条棱按照相同的比例从源环开始到目标环结束分成多条线段的过程。棱的分段后,将图1中[vi]到[v'i]中间生成的节点称为中间节点。将框架的每条棱上层号相同的中间节点按其在源环上对应次序相连得到框架的中间环[loopmiddle'i],中间环包围的单连通三角形子集称为中间壳域。
规定框架具备以下性质:
① 框架由一个源壳域、一个目标壳域和一系列的棱组成;
② 源环和目标环必须拓扑结构相同(拥有相同数目的边);
③ 源壳域、中间壳域和目标壳域间的拓扑结构相同(拥有相同数目的三角形);
④ 棱可以是曲线段也可以是直线段,并且不同的棱相互间不能相交。
定义5 利用框架的性质3,将壳域边界环与壳域内网格顶点间的几何拓扑映射关系模型称为壳域参数化。如图2所示,设[vinside]为壳域的环[Loop]围城区域内的任一点,[vi]为[Loop]中的点,则:
[vinside=i=1kwivi,wi=λi/i=1kλi] (1)
式中:
[λi=tan(∠vi-1vinsidevi)+tan(∠vivinsidevi+1)vinsidevi] (2)
通过参数化源壳域的三角形网格点,以快速生成中间壳域与目标壳域的三角形。
2 基于框架的三棱柱网格生成
三棱柱体网格生成流程如图3所示。
2.1特征壳域拾取
根据定义1得到[T]的特征边集合,鉴于有些特征边的端点为2条以上特征边共享,直接首尾相连生成的特征环有二意性,故采用文献[6]中壳域拾取算法利用三角形网格的共边邻接关系得到[Shellfeature]和[loopfeature]。
2.2 特征框架生成
按定义2,将特征环的顶点沿其法矢方向按选定的推进曲线类型推进形成[T]的特征框架[FrameFi]。
判断特征框架的包围盒间是否相交,若相交则修改特征环的顶点推进的方向,重新生成[T]的特征框架。
2.3辅助壳域及其框架生成
通过交互式操作将非特征壳域分成多块单连通三角形子集,即可利用壳域拾取算法得到辅助壳域。调用特征体框架生成算法即可得到辅助框架。
2.4目标壳域生成
如图2所示,利用式(1)得到[Shellfeature]([Shellasst])中三角形顶点与[loopfeaturei]([loopAi])间的拓扑映射关系,得到计算目标环[loopfeature'i]([loopA'i])对应的三角形顶点的坐标,得到框架的目标壳域。
2.5 中间壳域生成
按照定义4.将框架的棱分段,得到框架的中间壳域的三角形顶点的坐标。利用文献[7]的方法对目标和中间壳域内点进行网格自适应,优化各三角形形态,避免出现畸变三角形。即可得到三棱柱网格集合。
2.6 三棱柱网格生成算法
输入:三角形网格模型[T]。
输出:三棱柱网格模型。
Step1 按定义1得到特征边集合,并利用壳域拾取算法得到[Shellfeature]和[loopfeature]。
Step2 按定义2推进[loopfeature]得到特征框架。
Step3判断特征框架的包围盒间是否相交,若相交则修改特征环的顶点推进的方向,转Step2。
Step4 交互式操作将非特征壳域分成多个辅助壳域,并利用壳域拾取算法得到[Shellasst]和[loopA]。
Step5按定义2推进[loopA]得到辅助框架。
Step6 根据式(1)计算每个框架目标壳域的三角形顶点坐标。
Step7 按定义4.将框架的棱分段,得到框架的中间壳域的三角形顶点的坐标;对目标和中间壳域内点进行网格自适应,优化各三角形形态。
Step8 输出三棱柱网格模型,停止。
3 实例
采用visual studio2005 C#开发了基于三角形网格模型粘性的三棱柱网格生成程序。
如图4所示,对输入Agard-B的三角形网格模型的机身处生成的三棱柱网格,进入如图5所示的模型特征边设置和预览界面,在机翼处设置边界阀值自动生成特征边,拾取出特征壳域,在框架生成和预览界面设置法矢推进曲线、推进步长和框架内层数等参数。得到相应的三棱柱网格(如图6所示)。图7为V型块三角形网格模型的三棱柱生成实例。
可见本方法产生的三棱柱结构很好,无棱柱交错,无负体积三棱柱网格单元,并且本方法可用于凹形三角形模型的三棱柱生成。
4 结论
本文提出的基于框架的三棱柱网格快速生成方法,通过合理设定特征框架与辅助框架的源环推进的方向与棱长,可生成满意拉伸比的边界层三棱柱网格,避免目前非结构网格方法在边界层网格填充效率不高的缺点;同时,因仅需判断框架是否相交,故计算量大大减小。多个应用实例表明文中方法的正确有效,故有实用价值。
参考文献:
[1] Samir Vinchurkar, Worth Longest P. Evaluation of hexahedral, prismatic and hybrid mesh styles for simulating respiratory aerosol dynamics[J]. Computers & Fluids 37 (2008) 317–331.
[2] Kallinderis Y, Ward S. Prismatic Grid Generation for Three-Dimensional Complex Geometries AIAA JOURNALVol. 31, No. 10, October 1993.
[3] Tysell L. Hybrid Grid Generation for Complex 3D Geometries. 7th International Conference on Numerical Grid Generation in Computational Field Simulations, Sep 25-28, 2000, Whistler, British Columbia, Canada.
[4] Alice J.Chen , Yannis Kallinderis. Adaptive hybrid (prismatic-tetrahedral) grids for incompressible flows[J]. International Journal for Numerical Methods in Fluids,1998 ,26(9).
[5] Kallinderis Y, Khawaja A, McMorris H. Hybrid Prismatic/Tetrahedral Grid Generation for Complex Geometries. Copyright ?1995 by the American Institute of Aeronautics and Astronautics,Inc
[6] Zhang Zhengyu. Key Techniques for Redesign of STL Model in Rapid Prototyping Manufacturing[D]. Xian: Xian Jiaotong University, 2004.
[7] Surazhsky V, Gotsman C. Explicit surface remeshing.In Symposium on Geometry Processing, 2003: 17-28..