10第十讲 非结构网格生成方法
- 格式:pdf
- 大小:1.59 MB
- 文档页数:37
模拟casson流体的非结构化网格simple算法非结构化网格算法是一种用于模拟高复杂度流体流动的数值方法。
它已成功应用于模拟Casson流体的研究。
Casson流体是一种悬浮流体,具有十分复杂的粘弹性性质和粘性,其可塑性比一般流体要大。
因此,精确模拟Casson流体流动的计算过程较为复杂,传统的结构化网格CSG(Computational Structured Grid)数值模拟方法难以满足其误差要求,因此非结构化网格算法(Unstructured Grid)会非常有效。
非结构化网格算法主要包括多种算法,如Delaunay Triangulation(DT)、Voronoi Diagram(VMD)和Simple Polygon Representation(SPR),以及基于特征曲线的算法等。
Simple算法是其中比较简便的方法,它通过建立和更新网格,构建紧凑的网格单元,使模拟的结果尽可能精确。
Simple算法由两个阶段组成。
第一个阶段是构建模拟场所需要的非结构化网格。
注入物理空间盒子中,先将已知边界和控件网格单元按已知几何空间形状建立,然后再填充内部扩充到未知面的随机网格单元,提高该空间网格的精度和复杂度,以完成模拟。
第二个阶段是更新非结构化网格单元,使它们更加紧凑,以满足模拟的要求。
重新排列网格单元的顺序,使其与物理る空间的几何形状保持更为一致,从而降低误差。
结合Simple算法,可用于计算Casson流体流动方程,模拟Casson流体具有耦合性质的流动情况。
Simple算法可以更好地反映流体流动的实际情况,更精确地处理流体流动现象,使研究者在复杂流体流动环境中获得更准确的结果。
另外,由于该方法的算法简单,模拟的精度高,因此被广泛应用到研究Casson悬浮流体的研究中。
解析二维非结构网格生成方法及其应用王盛玺;陈冬冬;宋松和【摘要】提出弱区域指示函数描述流场形状并证明了其存在和不唯一性;利用该函数基于Delaunay方法依据流场尺度生成二维非结构网格.其中,边界引力有效解决了流场边界恢复和内嵌边界问题,弹簧振子和正三角形趋进技术有效改善网格质量.最后,弹簧振子随着弱区域指示函数的演变与监测函数的指导成功应用到自适应网格生成.【期刊名称】《计算机工程与应用》【年(卷),期】2010(046)026【总页数】6页(P227-232)【关键词】非结构网格;弱区域指示函数;自适应网格;弹簧振子;边界引力【作者】王盛玺;陈冬冬;宋松和【作者单位】国防科技大学,数学与系统科学系,长沙,410073;中国人民解放军63892部队,研究所二室;国防科技大学,数学与系统科学系,长沙,410073【正文语种】中文【中图分类】V211.3在科学和工程计算中,有限元法日益显示出强劲的实力和旺盛的生命力。
运用上述方法解决实际问题时均要对计算区域进行离散,生成计算网格。
网格按其网格点在平面的拓扑分布可以分为结构网格和非结构网格两类。
二维非结构网格的基本思想基于如下假设:三角形是二维平面最简单的形状,任何平面区域都可以被三角形单元所填满,即任何平面区域都可以被以三角形为单元的网格所划分。
非结构网格没有网格节点的限制,网格点周围的节点数和单元数都是可变的,因而具有很强的灵活性,易于控制网格单元的大小、形状以及位置,能较好地处理复杂区域边界,并且可以根据流场背景信息的要求科学合理地分布网格点疏密进行自适应计算。
基于这些优势,非结构网格技术的深入研究已经成为当前计算科学中的一个重要方向。
此外,网格生成也是计算机图形学(CG)、计算机辅助设计(CAGD)和计算机辅助工程设计(CAED)等一系列应用研究中必不可少的技术步骤。
目前常用的生成非结构网格的方法主要有(约束)Delaunay三角剖分方法、阵面推进法(Advancing Front Methed)和四叉树(Quadtree)。
非结构化网格生成技术研究及应用的开题报告一、选题背景随着计算机技术的发展,越来越多的工程问题需要进行数值模拟计算,而数值计算离不开网格。
网格作为数值计算的离散化基础,其质量直接决定了计算结果的准确性和可靠性。
传统的结构化网格虽然可以确保一定的网格质量,但却不能完全满足实际问题的要求,因此非结构化网格逐渐成为了数值模拟中常用的网格形式。
非结构化网格不仅可以更好地表示不规则的复杂几何形状,还可以灵活地调整网格密度以满足不同区域的精度要求。
然而,非结构化网格生成的复杂性和困难度也十分显著。
目前非结构化网格生成技术主要分为手工生成和自动化生成两类。
手工生成的方式需要耗费大量人力物力,而且准确度依赖于操作人员的经验水平,很难保证网格的质量。
自动化生成则可以快速、高效地生成大规模的非结构化网格,但仍需克服复杂几何形状与高质量网格生成难题。
因此,开展非结构化网格生成技术研究并探索其应用,具有重要的理论和实践意义。
本论文旨在系统地研究非结构化网格生成算法,尤其是基于加密技术和自适应技术的网格生成方法,探索其在工程问题中的应用。
二、研究内容1. 非结构化网格生成技术概述:回顾非结构化网格的定义、特点及分类等基本概念,介绍当前非结构化网格生成的主要技术路线和方法。
2. 基于加密技术的非结构化网格生成方法:介绍加密技术的基本原理,并探讨其在非结构化网格生成中的应用。
重点关注加密算法的选择、网格节点与单元的加密方式、加密网格体的构建等技术细节。
3. 基于自适应技术的非结构化网格生成方法:介绍自适应技术的基本概念和原理,探讨其在非结构化网格生成中的应用。
重点关注自适应策略的设计、网格质量评估与优化、网格局部加密与全局加密等技术细节。
4. 探索非结构化网格在工程问题中的应用:以流体力学、结构力学、地质工程等为例,介绍非结构化网格在工程问题中的应用,探讨网格质量对计算结果的影响,说明非结构化网格的优越性。
三、研究意义1. 对于非结构化网格生成技术的研究,可以明确非结构化网格的定义与特点,为工程问题提供更精确的数值计算基础。
ICEM网格生成流程预览说明:预览图片所展示的格式为文档的源格式展示,下载源文件没有水印,内容可编辑和复制Chapter 3二维非结构壳/面网格生成(2、3)1. 创建几何模型:Point --- Curve --- Surface --- Part --- Topology 2.定义网格参数2.1.定义全局网格参数2.1.1 定义网格全局尺寸:Scale factor、Max element2.1.2 定义全局壳网格参数:Mesh type、Mesh method2.2 定义Part网格尺寸3. 生成网格并导出3.1 生成网格,检查网格质量3.2 保存网格文件:Save mesh as…3.3 选择求解器:Output --- Select solver3.4 写入:Output --- Write inputChapter 4三维非结构自动体网格生成(自上而下)(2、3)1. 创建几何模型:Point --- Curve --- Surface --- Part --- Topology --- Body2.定义网格参数2.1.定义全局网格参数2.1.1 定义全局网格尺寸:Scale factor、Max element2.1.2 定义体网格全局参数:Mesh type、Mesh method2.1.3 定义棱柱网格全局参数:Grow Law、Initial height、Ratio、No.2.2 定义Part网格尺寸3. 生成网格并导出3.1 生成网格,检查网格质量3.2 保存网格文件:Save me sh as…*.uns3.3 选择求解器:Output --- Select solver3.4 写入:Output --- Write input三维非结构自动体网格生成(自下而上)(4)首先导入壳网格,在壳网格的基础上拉伸生成棱柱体网格,再填充棱柱体网格和远场边界之间的空隙。
(壳网格---棱柱体网格---体网格)。
结构化网格和非结构网格的适用性问题关于结构化网格和非结构网格的适用性问题有些前辈认为,数值计算中应采用结构化网格,如果非结构网格则计算结果将“惨不忍睹”。
搞压气机计算的同行也认为,必须用结构化网格。
然而,对复杂的计算域,如果采用结构化网格必然造成网格质量的急剧下降,扭曲加大等问题,这时是不是应该采用非结构网格?对此问题的看法是:1、非结构网格使用很方便,外型越复杂就越显示出其优越性;至于计算结果的精度,就要看非结构网格在单元网格面、体积处理上方法是不是比结构网格要差。
就fluent软件而言,它是用体积积分法求解雷诺平均方程的,在单元网格面、体积处理上方法好像是按非结构网格方法处理的。
你就是按结构网格方法来生成网格,进入fluent中,进行数值计算时都是按非结构网格来处理,所以在fluent中,你用结构化网格方法生网格,和用非结构网格计算没多大区别!以上仅代表个人看法。
2、计算精度,主要在于网格的质量(正交性,长宽比等),并不决定于拓扑(是结构化还是非结构化)。
例如同样的2d的10×10的正交网格,fluent 采用非结构化方式对网格编号,另一种软件按结构化网格处理,如果其它条件相同,二者的精度应该是一样的。
3、我们通常所说的非结构化网格,第一映象就是网格质量差,不正交的,编排无规律的网格的三角形网格或四面体网格,实际上一个二维区域的三角形网格,如果控制得好(如相邻控制体中心的连线与公共边基本接近正交的话),其与结构化网格(网格正交性好)的精度是一致的。
4、我个人感觉采用结构化网格还是非结构化网格,主要看解决什么问题,如果是无粘欧拉方程的话,只要合理布局,结构和非结构都能得到较为理想的结果。
但如果涉及到粘性影响的话,尤其在壁面处,结构网格有一定优势,并且其对外形适应性差的缺点,也可以通过多块拼接网格解决。
事实上,目前有的非结构网格软件,也开始借鉴结构网格的优点,在壁面处进行了类似结构网格的处理,如cfx的壁面加密功能。
序号仪器名称单位需购数量主要参数主要功能(5)数据可自定义1秒到24小时的采样频率;(6)2组LED状态指示灯,显示系统运行及通讯状态;(7)2个RS232串口,支持USB扩展;1个10/100Mbps以太网端口;2个USB端口;(8)4个0-2Vdc模拟输出;4个开路输出;支持4个可编辑短信事件报警(9)支持PC,以太网,RS232/RS-485,无线适配器,无线电,GSM/GPRS/UMTS,卫星通讯;(10)低能耗<4mW;(11)*设置通过无线方式自动上传所有测量数据到物联网数据获取与处理系统软件平台;(12)32M内存,最大可扩展到4G扩展通道16个模拟通道,2个数字通道,2个事件通道3通用传感器3.1空气温湿度传感器温度范围:-50~70℃;温度精度:±0.1℃*湿度范围:0~100%;湿度精度:1.5%(5~95%,23°C),2%(<5,>95%,23°C)3.2净辐射波长范围:0.3-60nm测量范围:0-2000w/m2精度:≤5%3.3三维风速风向风速测量范围:0~60m/s精度:≤1.5%(0~20m/s)分辨率:≤0.01m/s启动风速:≤0.01m/s风向测量范围:0~359°序号仪器名称单位需购数量主要参数主要功能精度:±2°(0~25m/s)分辨率:≤1°工作温度:-40~70℃3.4总辐射传感器波长范围:305~2800nm测量范围:0-2000W/m2非线性错误:±1.2W/m2线性错误:<±2%(1000W/m2)*标准:一级WMO(ISO9060)3.5植物茎流传感器测量参数:探头内四个电压信号,用以计算绝对茎流值1)每小时蒸腾速率2)每天蒸腾速率3)整个植株水分茎流量;4)整个作物蒸腾量2.探头类型测量植株直径范围1)SGB9-WS8-12mm2)SGA10-WS9-13mm3.6叶温传感器测量范围:-20℃到+60℃,精度:0.1℃3.7植物茎杆变化传感器测量范围:5-25mm3.8土壤水分感器测量范围:0~100%vol序号仪器名称单位需购数量主要参数主要功能测量精度:±3%输出信号:0~1.2V3.9土壤温度传感器测量范围:-20℃到+60℃精度:±0.125℃输出:热电阻3.10土壤热通量传感器感应元件:thermopile测量范围:<2000W/m2精度:±3%热漂移:小于2%(-10~40℃)热导率:0.5W/m℃工作温度:-40~80℃四数据传输GPRS数据无线传输:接口:DB9RS232/422;串行数据速率:110-57600b/s;SIM卡3V/5V;内嵌标准TCP/IP协议栈,数据永远在线;支持据名或IP访问中心。
gmsh⽣成⾮结构⽹格详解(之⼀)
Gmsh ⽣成⾮结构⽹格详解(之⼀)
在流体计算中,我们经常要⽣成⼆维⾮结构⽹格。
利⽤Gmsh软件可以快速⽣成,我们下⾯可以看⼀个例⼦,例⼦在gmsh的tutorial⽬录中:
下⾯是t4.geo的完整说明:
同样的⽅式可以在Line Numbers、Surface Numbers、V olume Numners上打钩,可以看到每个对象的编号。
现在可以⽣成⼆维⽹格了,选择Mesh->2D
注意,这⾥的⽹格包括了洞内的⽹格,这是因为我们定义了2个Physical Surface,分别是“22”和“24”。
⽣成的⽹格包括了这两个⾯的信息。
当你与计算程序连接的时候,对⽹格的相关信息要进⾏处理。
在图上看的时候,你可以选择Tools->V isibility 如果
你只想看“24”的话,
就会出现下⾯的结果。
想要的⽹格。
ICEM多个周期的非结构化网格划分方法1.首先划分好一个周期内的非结构化网格,在此网格内定义有周期性边界的part,如果该part名称定义为periodic,为了后续工作的顺利,建议修改,否则读入fluent中会出错。
2.选择Edit mesh 中的transform mesh,rotate 按钮,如下图所示:面板中可以选择复制的个数,rotate轴,旋转的角度,需要把merge node 和delete duplicate elements选项勾上,merge node建议用Automatic.点击确定即可。
3.导出mesh,导入fluent中时,旋转时的周期性边界会生成一个中间截面,fluent默认为wall,修改为interior即可使用。
注意事项:1.ICEM网格中分为体网格和边界网格,旋转时不可以分别旋转,可以通过显示体网格以及所有的边界网格来实现,但网格较大时不推荐,可以将所有part 和mesh隐藏起来,选择使用工具条上的第4个按钮,选择全部element)。
2.旋转时merge node的tolerance如果ICEM的默认值不合适,会造成周期性边界无法完全重合,因此ICEM导出网格时会出现not referenced by grid 的错误,直接skipping 周期性边界的part,例如如下错误:Warning: found face with periodic nodes near node 183, but no twin face. Warning: found face with periodic nodes near node 62, but no twin face. Checking mesh:interior faces : 318864interior walls : 3024boundary faces : 8672Creating face section for 330560 faces.318864 faces of part FLUID.698 faces of part INLET.684 faces of part OUTLET.Skipping part PP (not referenced by grid).4266 faces of part WALL.自然无法导入到FLUENT中,FLUENT提示的错误为:Building...meshCell Centroid is xc -96.902191 yc 105.333557 zc 59.888897 WARNING: cell 5 of thread 9 has NULL face pointer 3.Clearing partially read grid.Error: Build Grid: Aborted due to critical error.Error Object: #f解决此类错误的方法为:重新加密周期性上的网格或者向反方向旋转同样的角度,总之使ICEM能够采用默认的tolerance,进而正确输出周期性边界的part即可。
非网格生成原理非结构网格的生成,以二维三角形网格为例•Voronoi 图,又叫泰森多边形或Dirichlet 图,它是由一组由连接两邻点直线的垂直平分线组成的连续多边形组成。
Voronoi 图3V4、v6、v8、v7、v5组成的多边形内的点到7点的距离最小(相对于其它1、2、…)。
由这些多边形组成的图为Voronoi图•Voronoi图定义是:假设V=(v1,v2,…..,vn),N>3是欧几里德平面上的一个点集,并且这些点三点不共线,四点不共圆。
用d(vi,vj)表示点vi,vj间的欧几里德距离。
设x为平面上的点,则区域V(i)=(xE2|d(x,vi)<=d(x,vj),j=1,2,….,N, ji)称为Voronoi多边形(V—多边形)。
各点的V-多边形共同组成Voronoi图。
Voronoi 图和Delaunay 三角网Delaunay三角网•Delaunay三角网的定义是:有公共边的Voronoi 多边形称为相邻的Voronoi多边形。
连接所有相邻的Voronoi多边形的生长中心所形成的三角网称为Delaunay三角网。
•Delaunay三角网是Voronoi图的伴生图形Delaunay三角形(粗线)和V oronoi多边形(细线)5Delaunay三角网与Voronoi图Delaunay三角网的唯一性;没有任何其它三角形顶点在三角形的外接圆内部,反之,如果一个三角网满足此条件,那么它就是Delaunay三角网; Delaunay三角网中的三角形最接近于等边三角形Delaunay三角网有以下特性:Delaunay三角网的特性(空外接圆)•空外接圆性质:在由点集V所形成的Delaunay三角网中,其每个三角形的外接圆均不包含点集V中的其它任意点;•空外接圆性质也称为circle准则,是点集中每三个点所构成的三角形成为Delaunay三角形的充要条件。
空外接圆特性circle 准则示意图,图(b)正确Delaunay三角网更接近于等边三角形•最大的最小角度性质:在由点集V 所能形成的三角网中,Delaunay 三角网中三角形的最小角度是最大的。
Delaunay三角网的特性(最大的最小角)最大化的最小内角•Delaunay 三角网的各种算法主要分为三类:•分治算法•逐点插入法•三角网生长法•下面主要介绍逐点插入法。
Delaunay 三角网的算法分类逐点插入算法示意图在已有网格中,每次插入一个新节点P,在网格中找出包含P的三角形T,然后从T开始递归搜寻外接圆包含点P的三角形,并删除这些三角形,形成一个多边形(图中阴影部分),连接它的各个顶点和形成新的三角形,这可以保证网格为Delaunay剖分。
然后进行迭代,直至所有节点处理完。
逐点插入算法示意图在已有的Delaunay 网格中引入新点在新点周围,利用逐点插入算法对网格划分进行局部更新描述网格的数据结构struct point{double x, y;double density;double sumx,sumy, sums;int mark;int number ;int renumber;}struct edge {int node1,node2; int mark; double long;int number;int renumber; }struct triangle {int a, b, c; int number;int ea, eb, ec;int sa, sb, sc;int mark; double xv, yv, R, r;int renumber; }•e为vironoi顶点所在三角形单元的编号;a、b、c为相邻vironoi顶点的编号struct v_node{double x,y;int number;int e;jnt a,b,c;}•因子。
对三角形单元,其质量因子定义为:三角形单元质量评价标准jjR r 2=网格划分整体质量的优劣•为了便于衡量网格划分整体质量的优劣,我们引入了平均因子、和最差因子,这几个因子分别定义为:二维任意域内Delaunay三角网格的全自动生成•Lawson提出了用逐点插入法建立Voronoi三角网的算法思想。
Lee和Schachter,Bowyer,Watson,S1oan,Macedonio 和Pareschi,F1oriani 和Puppo,Tsai先后进行了发展和完善。
逐点插入算法的基本步骤是:•(1) 定义一个包含所有数据点的初始多边形;•(2) 在初始多边形中建立初始三角网格,然后迭代以下步骤,直至所有数据点都被处理;•(3) 插入一个数据点P,在三角网中找出包含P的三角形e,把P与e的三个顶点相连,生成三个新的三角形;•(4) 用LOP算法优化三角网;•(5) 网格的光滑化;•(6) 节点与单元编号的优化。
初始多边形的生成和进行几何和拓扑不相容处理•初始网格生成算法的基本步骤可以描述为:•a、根据给定要求,对计算区域边界进行离散,得到边界的离散点集;•b、定义一足够大的能够覆盖整个计算区域的大三角形;•c、从边界点集中取出一个未处理的边界点作为新加点,利用A.Bowyer算法将其引入原有网格划分中;•d、检查边界点集中是否存在未处理的边界点,如果存在,则返回执行步骤c。
•e、检查已有划分是否与流场边界保持一致,如果存在没有包括在网格划分中的边界连线,则将其存入数组R中;否则,已有网格划分包括了所有边界连线,执行步骤g。
•f、对包括在数组R中的所有边界连线,将该连线的中点作为新加入点引入到原有网格划分中。
直至R为空,执行步骤g。
•g、逐一检查网格中的三角形单元,如果一个单元的重心位于计算域外,则删去这一单元,即进行拓扑不相容处理。
边界的离散点集•M 为边PQ 的中点,C A 为▲PAQ 的外心,X 为新插入的结点。
新插入的节点在Voronoi 边上。
也可以把新插入的节点放在三角单元的外心处(称之为Voronoi 顶点法)。
以下介绍第一种情况内部节点的生成•式中的p为MQ的长度,q为M和C A两点之间的距离,是校正后▲PQX的外接圆半径,是校正前▲PQX的外接圆半径,是一个和P、Q两点网格密度有关的经验函数。
内部节点的生成•重复插入内部节点,直到生成的三角形网格满足用户的要求为止。
LOP算法优化三角网•局部优化过程LOP(Local Optimization Procedure)是所有生成D—三角网算法都要用到的关键过程。
理论上说,不论用何种方法生成的三角网,只要用LOP过程进行处理,就能使它变为D—三角网。
这样一个重要的过程其实非常简单,它就是运用D—三角网的性质对由两个有公共边的三角形组成的四边形进行判断。
如果其中一个三角形的外接圆包含第四个顶点,则将这个四边形的对角线交换。
•常用光滑化方法包括Laplacian方法、以面积为权的光滑化和以边长为权的光滑化。
设与点P 相连的点P i (i=1,2,…,k )到P 的距离为Li ,这些点与P 连成的三角形的面积为S i ,则以上三种光滑方法的坐标调整公式分别为:网格光滑化处理网格光滑化处理二维三角网格的数量关系•E:三角形数;•N 、Nb、Ni:顶点数、边界点数和内点数;•S、Sb、Si:边数、边界边数和内边数;•H:内环数;平面三角形网格满足下列数量关系:•N-S+E=1-H•3E=2Si+Sb•Sb=Nb•E=Nb+2Ni-2+2H•Si=Nb+3Ni-3+3H•S=2Nb+3Ni-3+3H局部加密•主要对相应位置处的三角单元外接圆半径进行控制•流程图EASY MESH•EASY MESH:开源代码•http://www-dinma.univ.trieste.it/nirftc/researc h/easymesh/非结构化四面体网格生成方法•三维Voronoi图是一组凸多面体组成的几何结构,可以构造出Delaunay四面体.空间几何体剖分的Delaunay四面体应具有如下特点:•(1)所形成的四面体互不重叠;•(2)所形成的四面体可以覆盖整个三维空间;•(3)任一点均不位于不包含该点的四面体的外接球内.•第三点是Delaunay四面体的一个重要性质,•也是生成Delaunay四面体的出发点.•同二维三角形网格初始化方法,首先给定求解区域边界面上一些点的坐标,由此确定三维空间的边界,这些点同时就作为一组初始Delaunay 四面体的顶点.做一个辅助长方体以及5个四面体包围这些顶点,这5个四面体分别为1236、1348、1568、3678、1368,见图2.按照Delaunay 四面体化方法,对边界点依次进行四面体网格的生成.所有四面体网格生成过程完成之后,将与1—8点连接的四面体以及不在区域中的四面体去掉,则网格初始化工作完成初始化网格生成Delaunay四面体的出发点•对于三维问题,假定存在一个初始网格,现在其中加入新点,则凡是外接球内包括新增点的四面体需要重新进行连接.方法是将所有外接球包括新增点的四面体的公共面去掉,连接新点与有关四面体的各顶点,则形成新的网格点分布.可以验证,这样生成的四面体为Delaunay 四面体.•以两个四面体网格为例进行说明,见上图.原四面体网格为ACDE和BCDE,在其中加入一个新点F.显然,两个四面体的外接球都包含了点F(左图).按照上述规则,将两个四面体的公共面CDE去掉,重新连接各顶点.新生成的四面体网格分别为ACDF、ADEF、ACFE、BCDF 、BDEF、BCEF.这6个四面体满足Delaunay四面体的3个特点。