本节书摘来自异步社区《精通CFD动网格工程仿真与案例实战》一书中的第1章,第1.2节,作者: 隋洪涛 , 李鹏飞 , 马世虎 , 更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.2 CFD分析方法与基本步骤
精通CFD动网格工程仿真与案例实战
计算流体力学(Computational fluid dynamics —CFD)是一门通过数值方法求解流体控制方程组来预测流体的流动、传热、传质、化学反应等相关物理现象的学科。CFD计算结果对产品的概念设计、产品详细设计、产品问题查找与分析以及重新设计产品都有很大的帮助。最近几年,CFD分析在工业设计中发挥着越来越大的作用。CFD分析与实验都是解决问题的工具,两者相互补充。CFD分析的优点在于能得到流场中任意位置的任意物理量的值,便于问题的分析。在实际应用中,它能够减少实验次数,从而降低实验成本。
1.2.1 CFD分析方法
CFD常用的数值方法有有限差分法、有限元法和有限体积法。边界元法在CFD中应用较少,在计算电磁学领域应用相对较多一些。有限差分法是最经典的方法,它将微分方程离散到网格点上,将方程中无限小的微分化为有限小的差分来求解。有限差分法在流体力学中应用广泛,发展也比较成熟。但为了能获得高精度的差分格式,通常要求网格十分光滑,否则会导致较大误差。对复杂几何的流动,难以做到网格十分光滑。有限元法是把积分形式的方程离散到有限小的集体单元里求解。有限元法对网格的要求较小,既可以是结构化网格也可以是非结构化网格。但为了保证解的精确性,有限元法在每隔单元里要进行某种加权积分,计算时内存占用量大且耗时。有限体积(finite volume)法,首先将计算域离散成一组控制体(网格单元);然后在这组控制体上求解质量守恒、动量守恒、能量守恒、组分守恒等方程组,将偏微分方程组离散为代数方程系统;然后通过数值的方法求解所有的代数方程组,逐渐接近流场的真实解。有限体积法优点是首先是对网格的正交性没有特别要求,可以大量使用非结构化网格,从而可以对复杂几何问题进行求解;其次是计算时该算法对内存的占用很小,便于精细地模拟流场细节。
FLUENT解算器是基于有限体积法的,Polyflow和FIDAP是基于有限元法的。目前,FLUENT测试的网格单元数量已经突破10亿,并行效率很高。
1.2.2 CFD分析基本步骤
CFD软件一般分为三部分:前处理器、解算器和后处理器,如图1.1所示。这也就形成了CFD分析的基本步骤。
步骤1 :物理问题的分析与前处理。
步骤1.1:定义模拟的目标。
步骤1.2:确定模拟的计算域范围。
步骤1.3:设计与生成网格。
步骤2:解算器执行。
步骤2.1:设置数值模型。
步骤2.2:计算并监控解的过程。
步骤3:后处理。
步骤3.1:检查计算结果。
步骤3.2:分析并考虑如何修正模型。
https://yqfile.alicdn.com/654e4342ae4f2ad33c64c1db448518aaada9d661.png" >
下面较详细地了解每一步的工作。
步骤1 :物理问题的分析与前处理。
步骤1.1:定义模拟的目标。
从多年技术支持工作来看,许多工程师很关注软件的操作或算法的选取,经常忽视对物理问题的分析。而实际上用CFD软件解决问题时最重要的是对物理问题的分析,定义适当的模拟目标、对物理问题合理简化、确定合适的模拟方法。在定义模拟目标时,需要很清楚地回答如下一些问题。
(1)需要得到什么样的结果(如压力降,质量流率或阻力等)?这些结果将被如何使用?
在回答上述问题时,首先需要分析物理问题中包含哪些物理现象(如湍流、可压缩性、辐射等),哪个或哪几个物理现象是主要的,哪些是次要的;然后考虑哪些是必须简化假设的;其次是可以做哪些简化假设(如对称简化、周期性简化等);最后考虑软件中有哪些模型可以解决问题,还有哪些物理现象需要编写特有的UDF来解决。
(2)需要什么样的模拟精度?
模拟的精度要合理,并不是越高越好。
(3)需要多长时间得到计算结果?
模拟的周期也影响着目标的确定,如果时间紧就需要更多的简化,如果时间宽松就可以模拟得更加详细些。
步骤1.2:确定模拟的计算域范围
首先要考虑如何将关心的问题从一个完整的较大的系统中隔离出来;然后取定计算域的起始与终止位置,在确定此计算域范围时要分析在边界上是否有边界条件信息、这些边界条件类型能否与这些信息匹配、是否能将计算域的边界确定在有合理数据的位置;其次分析问题能否简化为二维问题或轴对称问题。
如图1.2所示,假如关心的问题是旋流分离器的分离效果,对周围管道、阀等部件不关心。那么就可以将其中的旋流分离器从整个系统中分割出来,而不必对整个系统进行模拟。而分割出来的旋流分离器的进口和出口可以给出一组边界值,通过分析就可以模拟出旋流分离器的特性。
步骤1.3:设计与生成网格
图1.3所示是FLUENT所支持的网格类型。根据几何的复杂程度和流动特点选择合适的网格单元类型。对于简单的几何,一般情况下四边形、六面体网格的质量较高,而且单元数量较少(相对于三角形、四面体网格而言)。如果网格线与流动方向一致时,四边形、六面体网格还可以降低伪耗散。对于复杂几何(如图1.4所示汽车发动机舱网格),网格线与流动方向一般不会一致,此时四边形、六面体网格并没有特别的优势,而三角形、四面体网格对复杂几何的适应能力很强,建议使用三角形、四面体网格。有些情况下,根据几何特点可使用混合网格。图1.5所示为发动机阀门口混合网格,右边直管部分几何规则使用六面体网格;弯管部分有阀门几何复杂,使用四面体网格;从六面体网格到四面体网格由金字塔形五面体网格过渡;到了下面缸体部分,几何又很规则,此时用三棱柱五面体网格。对于一些复杂的比较特殊的几何还可以考虑使用不连续网格(non-conformal mesh),即网格面两侧的网格节点对应,网格线不连续。图1.6所示为油膜冷却不连续网格。流体从下部箱体内通过很小的孔喷到上部非常大的空间内,由于上部大空间与喷孔的几何尺度相差太大,很难用统一尺度来生成网格。此时可以上下两部分分别按照自己的尺度生成网格,然后两个区域之间以不连续的网格界面对接,计算时物理量会在此界面上插值。
生成网格时,不仅要考虑网格的类型,而且要考虑网格的分辨率问题。首先,考虑网格的密度能否足够分辨出关键的几何,如一个圆形面至少需要5个以上网格单元才能近似模拟;其次,考虑梯度大的区域网格是否足够密;再者,考虑是否可使用网格自适应技术提高网格的分辨率。
最后还需要考虑网格的数量与计算机条件(如内存、CPU数量与速度)相匹配。
综上所述,判定网格质量好坏的标准有如下几条:
(1)网格数量要足够,尤其是要能足够分辨关键几何;
(2)梯度大的地方网格密,梯度小的地方网格可以疏(以节约计算资源);
(3)网格从密到疏的过渡要均匀;
(4)网格等角度扭曲率要尽可能小,一般情况下四面体网格的等角度扭曲率小于0.85,六面体网格的等角度扭曲率小于0.8,复杂几何的非关键位置此要求可适当放松;
(5)六面体网格长宽比要尽可能小,一般情况下不大于1∶3,边界层网格等特殊情况下可适当放松此要求;
(6)根据几何复杂程度和流动特点合理搭配使用四面体和六面体网格。
根据上述标准和长期的应用实践可以逐渐培养读者对CFD网格的审美观,最终能够很顺利地对各种几何作出漂亮的、高质量的CFD网格。
步骤2:解算器执行
步骤2.1:设置数值模型
对于一个给定的问题,需要作如下工作:
(1)选择物理模型,如湍流、燃烧、多相流等;
(2)定义材料属性,如流体、固体、混合材料等;
(3)指定工作条件;
(4)指定边界条件;
(5)提供初始值;
(6)设置解算器控制参数,如松弛因子、库朗数等;
(7)设置收敛监控曲线。
步骤2.2:计算并监控解的过程
离散守恒型方程是通过数值迭代的过程进行计算的,直到收敛。判断收敛的标准如下:
(1)迭代一定的次数;
(2)残差降低一定的量级,一般情况下需要降低3个以上量级;
(3)残差不再进一步降低,即残差曲线参数值随迭代的继续进行基本保持不变;
(4)全局守恒量达到平衡(如管道的流量进出口数值相等)或特征物理量曲线平直(如阻力、升力等);
是否收敛需要使用上述标准综合判断。收敛解的精度也是需要关注的,它主要与下列因素有关:
(1)物理模型的精度;
(2)网格的分辨率;
(3)问题的设置。
因此,为了提高解的精度,需要对上述问题细致地考察。
步骤3:后处理
步骤3.1:检查计算结果
当计算收敛之后,需要检查计算结果并提取有用的数据。一般情况下,可以通过彩色图像、曲线和具体物理量的数值报告来提取数据。图像和曲线可以回答如下一些问题:
(1)全局流态是否合理?
(2)某些区域是否出现了分离?
(3)什么地方形成激波、剪切层等?
(4)关键的流动特性是否准确计算出来?
回答这些问题时,需要基于流体力学基础知识。
具体物理量的数值报告可以帮助我们定量的分析结果:
(1)力/力矩;
(2)平均换热系数;
(3)某些物理面的面积分与体积分;
(4)通量平衡。
步骤3.2:分析并考虑如何修正模型
在对结果进行分析的基础上,需要考虑如何修正模型改进计算结果。首先考虑物理模型的合理性,如需要分析流动是否是湍流,是否是非定常,是否有可压缩性,是否有三维效应等;其次是分析边界条件的正确性,如计算域是否足够大,边界条件的类型是否恰当,边界的值是否合理等;另外分析网格是否足够,如网格是否需要自适应以提高计算精度,解是否与网格无关,边界的分辨率是否需要改进等。根据上述分析,相应的对问题设置进行调整以获得更加理想的计算结果。