在三维分析中经常用到四面体,六面体,金字塔等三维实体网格,其中四面体因为其容易自动化生成,适应性好,数值计算方便等优点,在多物理场三维有限元分析中得到广泛应用。
几何特点
通常我们拿到四面体的是四个点的坐标,利用点可以计算出边,面的数据,在计算中要保持数据的一致性,即点,边,面的顺序要有固定规律。
以面为例,通常按照右手规则,三点顺序连接成面的法向量要一致朝外。
四面体计算中经常要用到任意四面体的体积和四面体角度
以上指标的计算方法C 源码可在 www.cae-sim.com 下方资源下载
网格质量评估
除了常见的最大边,最小边,最大角,最小角等。还有以下四种评估指标:
1.Aspect ratio:取得最大的边长A,取得最短的高度H(高度定义为一个顶点到对面的距离)。最大边长除以高度:A/H即为Aspect Ratio
2.坍塌比:
计算公式:(H/Sqrt(A))/2.14
H为顶点到对面的高度,
A为顶点对面的三角形面积,
坍塌比范围为0到1,1是正四面体,0为完全坍塌
3.二面角
六条边,每条边关联两个面的夹角,总共有六个角
通常取最大最小的二面角评估网格质量
4.扭曲度:
单元体积与相同大小外接球条件下的理想四面体体积之比
计算公式:实际体积/理想体积
正四面体值为1
常见的四面体几何错误包括:
1.自由点,边,面,
2.重复的点,边,面和实体
3.四点共面
4.相邻两点距离或Aspect ratio超过数值计算误差
对于高阶单元,四面体网格的几何和质量计算方法相同。
网格质量是如何影响仿真精度的
几乎所有书籍解释就是网格质量差,会造成误差大,计算精度不够。
但其实网格真正对仿真精度的影响来自两方面:网格密度和网格分布。
看一个场景:假设现在网格已经最优,达到最理想状态,我们将其中两个相邻网格加密,使其网格质量变差,但其实仿真精度并不受影响,只是网格分布变差,网格密度增加。
换句话说,除去数值计算误差,网格质量并不直接影响仿真精度!而是差质量的网格造成网格整体密度不够和分布不合理!
自由度
在网格技术中,我们经常提到自由度,其实自由度是有限元的概念,而非网格,自由度是在单元上的一种属性。一个自由度表示一个计算变量。比如热分析单元每个顶点上只有一个自由度,即温度;而位移则至少有XYZ三个自由度,考虑到旋转,则有更多自由度;电磁场至少有电场XYZ,磁场XYZ六个自由度。
此外对于相同拓扑的网格类型,也可以根据自由度的个数来定义不同的单元,比如四面体单元在ANSYS中至少有Solid185,Solid187,Solid92等。
形函数
求解应力应变,以节点位移为形函数参数的单元:
一次线性单元和二次曲线单元
其中L为体积坐标,三维单元的体积坐标可以参考任意一本有限元理论方面的书籍。
三次高阶四面体单元
以上图片来自于 朱伯芳《有限单元法原理与应用》
电磁矢量四面体单元
电磁矢量四面体单元高阶形函数
图片来自于金建铭 《The Finite Element Method in Electromagnetics》
四面体和六面体之争
之前看过很多关于六面体和四面体的争论,大意上是说六面体要优于四面体,在网格选择上尽可能使用六面体。
从有限元理论上看,六面体确实只需比四面体更少的网格,就能达到更高的精度。但是对于实际工程中的模型,一方面自动化六面体生成和加密都比较困难,需要更多的手工操作,耗时耗力;另一方面六面体在很多计算中有更多限制和要求,比如自锁沙漏等现象,要人为加密网格或者缩减积分,需要一定的工程经验;最后各个领域的要求不太一样,一般CFD流体计算中六面体偏多,在无法生成六面体的地方需要混合四面体网格,热仿真对网格拓扑要求不高,电磁很少用到六面体,一般的争论在结构仿真中,而结构仿真大多一般用1,2维单元,体单元在局部位置分析较多。
综上所述,其实并不存在六面体和四面体哪个更好的问题,只是对于实际的工程问题,基于工程师的的经验,计算资源,仿真类型,需要选择合适的单元。
主流开源,商业网格引擎都提供了对四面体的支持。包括GMsh,Netgen,tetgen,phg,CGAL,VKI,meshgem,Simmetrix等等。
另外有过一份关于全球公开的四面体网格开源和商业软件的总结,并不是最新。
复 制链接到浏览器中查看:
http://www.robertschneiders.de/meshgeneration/software.html