人生倒计时
- 今日已经过去小时
- 这周已经过去天
- 本月已经过去天
- 今年已经过去个月
大家好,我叫齐师兄。今天我们来学习高级班第四课的内容。“计算流体动力学的计算过程和算法”
CFD数值模拟一般遵循以下步骤:
(1)建立研究问题的物理模型,然后将其抽象为数学和力学模型。然后确定要分析的几何图形的空间影响区域。
(2)建立整个几何图形及其空间影响区域即计算区域的CAD模型,将几何图形的外表面和整个计算区域划分为空间网格。网格的稀疏性以及网格单元的形状会对 . 为了保证计算的稳定性和效率,不同的算法格式一般对网格有不同的要求。
(3) 加入求解所需的初始条件有限单元法基本原理和数值方法,入口和出口的边界条件一般为速度和压力条件。
(4) 选择合适的算法,设置一些特定的条件来控制求解过程和精度,求解要分析的问题,并将结果保存到数据文件中。
(5) 选择合适的后处理器(Post)读取计算结果文件,分析并显示。
以上步骤构成了CFD数值模拟的全过程。数学模型的建立将在后面的课程中讨论。
2、使用CFD方法模拟一些实际问题时,往往需要设置工作环境、边界条件、动量守恒和选择算法,尤其是算法的选择对模拟的效率和正确性影响很大,并且需要特别注意。
区域离散化就是用一组有限的离散点来代替原来的连续空间。实现过程是将计算出的区域划分为多个不重叠的子区域,确定每个子区域的节点位置和节点所代表的控制体积。节点是需要求解几何位置、控制体积、控制方程的应用或未知物理量的守恒定律区域的最小几何单元。
让我们来看看这张照片。左边是一个房间和一个三维模型。这是一个连续的空间。我们知道连续空间。里面有无数个节点。为了方便对这个三维空间的研究,我们将其划分为有限的小单元,这样便于计算机进行迭代计算。
常用的离散化方法:有限差分法、有限元法和有限体积法
1)有限差分法:是数值解法中最经典的方法。它将解区域划分为微分网格,用有限数量的网格节点代替连续解区域,然后使用偏微分方程(控制方程)的导数代入差分商,一个具有有限未知数的差分方程组在离散点导出。
这种方法产生和发展的比较早,也比较成熟。用它求解边界条件比较复杂,尤其是求解椭圆问题时,不如有限元法或有限体积法方便。
有很多方法可以构建差异。目前主要采用级数展开法。基本差分表达式主要有四种形式:一阶前向差分、一阶后向差分、一阶中心差分和二阶中心差分,前两种形式为一阶计算精度,后两种形式是二阶计算精度。通过在时间和空间上组合几种不同的差分形式,可以组合不同的差分计算格式。
2) 有限元法
有限元法是将一个连续解域任意划分为许多形状适当的微小单元,在每个小单元切片中构造一个插值函数,然后根据极值原理(变分或加权)变换问题的控制方程残差法)。为了得到元素上的有限元方程,将整体极值取为各个元素极值之和,即对局部元素进行合成,形成具有指定边界条件的代数方程组嵌入。函数是恒定的。
有限元求解的速度比有限差分法和有限体积法慢,在商业CFD软件中应用并不广泛。在常用的商用 CFD 软件中,只有 FIDAP 采用有限元法。
3) 有限体积法
有限体积法,又称控制体积法,将计算区域划分为网格,在每个网络周围做一个不重复的控制体积,对每个控制体积求微分方程进行积分,从而得到一组离散方程。
未知数是网格节点上的因变量,子域法加离散是有限体积法的基本思想。有限体积法的基本思想很容易理解,可以引出直接的物理解释。
离散方程的物理意义是因变量在有限控制体积中的守恒原理,正如微分方程表达因变量在无限小的控制体积中的守恒原理一样。
有限体积法得到的离散方程,要求因变量的积分守恒,对于任意一组控制组,自然也适用于整个计算区域,这就是有限体积法的优点。
有一些离散方法,如有限差分法,离散方程只有在网格极细时才满足积分守恒;而有限体积法即使在粗网格的情况下也能显示出精确的积分守恒。
就离散方法而言,有限体积法可以看作是有限元法和有限差分法的中间产物。
有限差分法更直观,理论成熟,精度可选。有限元法在应力应变和高频电磁场中的特殊优势正逐渐受到重视。使用有限差分法的优点是易于编程和易于并行化。
有限元法适用于处理复杂区域,精度可选。缺点是内存和计算量巨大,并行性不如有限差分法和有限体积法直观。
有限体积法适用于流体计算,可应用于不规则网格,适用于并行性。但准确率基本只有二阶。
该软件基于有限体积法。
控制方程离散化后,即可求解。下面介绍几种常用的压力-速度耦合求解算法。
1) SMPLE 算法
SMPLE算法是实际工程中应用最广泛的流场计算方法。属于压力修正的流场计算方法。该方法的核心是使用“猜测校正”过程。最多计算压力场,从而实现求解动量方程的自决
计算的基本思想可以描述为:对于给定的压力场,求解离散形式的动量方程,得到速度场。由于压力是假设的或不精确的,这样得到的速度场一般不满足连续性方程的条件。因此,必须校正给定的压力场。修正的原理是修正后的压力场对应于速度场在这个迭代层次上满足连续性方程
根据这一原理,将动量方程的离散形式规定的压力与速度的关系代入连续方程的离散形式,得到压力修正方程,再由压力修正方程得到压力修正值. 然后,根据修正后的压力场,得到一个新的速度场。然后检查速度场是否闭合
如果不收敛,则将修正后的压力值作为给定的压力场,开始下一级计算,直到得到收敛解。修正值构成速度修正计划。
2) 法律
该方法和算法的基本思想相同,不同的是算法改进了通量校正方法,加快了计算速度。
3)PISO算法
PISO算法的压力-速度耦合方案是算法家族的一部分,它是一种基于压力-速度校正之间高度近似关系的算法。并且该算法的一个局限是在求解压力修正方程后新的速度值和对应的流量不满足动量平衡,因此必须重复计算直到满足平衡。
为了提高这种计算的效率,PISO 算法执行了两个额外的校正:邻域校正和倾斜校正。
PISO算法的主要思想是在解压修正方程阶段去除求和算法所需的双重计算。在一个或多个额外的 PISO 循环之后,校正后的速度将更接近地满足连续性和动量方程,这一过程称为动量校正或邻近校正。
PIsO算法在每次迭代中占用的CPU时间稍微多一点,但是大大减少了达到收敛所需的迭代次数,尤其是对于过渡问题,这个优势更加明显。
对于具有一定倾斜度的网格,单元表面质量流量校正与相邻单元的压力校正差异之间的关系相当简单,因为沿单元表面的压力校正梯度的分量最初是未知的,因此类似的选择步骤为在上述 PISO 接近校正中。
在初始化压力校正方程的解,重新计算压力校正梯度有限单元法基本原理和数值方法,然后用重新计算的值更新质量流量校正后,一个称为偏斜校正的过程大大降低了计算高度扭曲网格时遇到的收敛难度。
PISO 偏斜校正使我们能够以基本相同的方法从偏斜网格中获得与更正交网格上的解相当的解。