计算流体力学
维基百科,自由的百科全书
计算流体力学(Computational Fluid Dynamics,簡稱CFD)是21世纪流体力学领域的重要技術之一,使用数值方法在计算机中对流体力学的控制方程进行求解,从而可预测流场的流动。目前有多种商业CFD软件问世,比如FLUENT,Phoenics,CFX,Star-cd等。
目前在工程领域CFD方法已经得到广泛的应用。美国海空军下一代F-35战斗机所使用的附面层分离进气道是CFD的成果之一。附面层分离进气道通过特殊设计形状的突起分离流速较慢的附面层以改善涡轮风扇发动机的进气流场。此设计比传统的附面层隔板方法可以减轻数百公斤重量,同时在一定速度范围内能够维持很好的分离效率。
CFD最基本的考虑是如何把连续流体在计算机上用离散的方式处理。一个方法是把空间区域离散化成小胞腔,以形成一个立体网格或者格点,然后应用合适的算法来解运动方程(对于不粘滞流体是欧拉方程,对于粘滞的是奈维尔-斯托克斯方程(Navier-Stokes equations))。另外,这样的一个网格可以是不规则的(例如在二维由三角形组成,在三维由四面体组成)或者是规则的;前者的特征是每个胞腔必须单独存储在内存中。最后,如果问题是高度动态的并且在尺度上跨越很大的范围,网格本身应该可以动态随时间调整,譬如在自适应网格细化方法中。
如果选择不使用基于网格的方法,也有一些可选的替代,比较突出的有:
- 平滑粒子流体力学,求解流体问题的拉格朗日方法,
- 谱方法,把方程映射到象球面调和函数(spherical harmonics)和契比雪夫多项式(Chebyshev polynomials)这样的基函数上的技术
- 格波尔兹曼方法(Lattice Boltzmann Methods),它在直角正交格点上模拟一个等价的中尺度系统,而不是求解宏观系统(也不是真正的微观物理)。
对于层流情况和对于所有相关的长度尺度都可以包含在格点中的湍流的情形,直接求解奈维尔-斯托克斯方程是可能的(通过直接数值模拟)。但一般情况下,适合于问题的尺度的范围甚至大于今天的大型并行计算机可以建模的范围。
在这些情况下,湍流模拟需要引入湍流模型。大涡流模拟和RANS表述(雷诺-平均奈维尔-斯托克斯方程(Reynolds-averaged Navier-Stokes equations)),和k-ε模型或者雷诺应力模型一起,是处理这些尺度的两种技术。
很多实例中,其他方程和奈维尔-斯托克斯方程要同时被求解。 这些其他的方程可能包括描述种类浓度,化学反应,热传导,等等。 很多高级的代码允许更复杂的情形的模拟,涉及到多相流(例如,液/气,固/气,液/固)或者非牛顿流体(例如血液)。
目录 |
[编辑] 方法论
所有这些方法都遵循同样的基本的程序。
- 问题的几何(物理界限)被定义。
- 流体占据的体积被分成离散胞腔(网格)。
- 物理建模得到定义 - 例如,运动方程+焓+种类不滅
- 边界条件被定义。这涉及到液体在问题的边界行为和性质。对于暂态问题,初始条件也要定义。
- 方程作为静态或者暂态被重复求解。
- 最后答案的分析和可视化。
[编辑] 离散化方法
给定离散化的稳定性通常在数值上建立,而不是象在简单的线性问题上那样可以解析的建立。必须特别小心才能保证离散化能够漂亮的处理不连续的解。欧拉方程和奈维尔-斯托克斯方程两者都可能有冲击波和接触表面。
在使用中的一些离散化方法包括:
- 有限体方法(Finite volume method)。这是“经典”或者说标准的方法,在商用软件和研究用程序中最为常见。统治方程在离散的控制体积上求解。这个积分方法导致了一个本身就保守(也就是说,密度这样的量保持了物理上守恒)的方法。
-
- 其中Q 是被守恒的变量的向量,而F是流量的向量。
- 有限元素法(FEM)。这个方法在固体结构分析中很流行,但是也可以用于流体。但是,FEM表述需要特殊处理来保证保守的解。
- 有限差分方法。这个方法有历史上的意义而且易于编程。现在只在特殊化的代码中使用。
- 边界元方法。流体占据的边界被分割成表面网格。
[编辑] 湍流模型
直接数值模拟(DNS)捕捉了所有相关尺度的湍流运动,所以不需要对最小的尺度建立另外的模型。该途径及其耗费资源,在现代的机器上对于复杂的问题甚至可能无法达成,因而对于流体运动最小尺度的模型还是有必要的。
[编辑] 雷诺-均值奈维尔-斯托克斯
雷诺-均值奈维尔-斯托克斯方程 (RANS)是湍流最古老的方法。统治方程的一个系综版本被用于求解,它引入新的外(表)观应力(apparent stresses),称为雷诺应力。这加入了未知数的一个二阶张量,对于这个张量有很多提供不同的关(封)闭级别的模型。下面是常见的误解:RANS方程不适用于有一个时变平均流的流场,因为这些方程是‘时间-平均’的。事实上,统计不稳定(在非静态)流可以同等对待。这有时被称为URANS。没有任何雷诺平均方法中的先天缺陷使得这个情况不能被处理,但是用于闭合(封闭)方程的湍流模型必须要在均值中的变化发生的时间相对于包含大部分能量的湍流运动的时间尺度相对较大时才正确。
[编辑] 大涡流模拟
大涡流模拟 (LES) 是一种技术,其中更小的涡流被滤掉并用亚格点尺度模型来建模,而更大的能量的涡流则被模拟出来。该方法通常比RANS模型需要更细化的网格,但是比DNS解所需要的网格粗的多。
[编辑] 分离涡流模拟
分离涡流模拟(Detached eddy simulation,DES)是RANS模型的一个修改,其中模型在细到足够使用LES计算的区域切换到亚格点尺度表述。接近固体边界的区域和涡流长度尺度小于最大格点尺寸的区域被交给RANS模式的解。随着涡流长度尺度超出格点尺寸,区域使用LES模式。所以格点解析度不象纯LES要求那样高,因此大大减少了计算开销。虽然DES最初为Spalart-Allmaras模型而建立(Spalart等人, 1997年),它可以用其它RANS模型实现(Strelets, 2001年),通过适当的修改RANS模型中隐含或显式地涉及到的长度尺度。所以虽然基于Spalart-Allamaras模型的DES象带墙模型的LES一样作用,基于其它模型的DES(譬如两方程模型)行为就像混合RANS-LES模型。格点的生成比简单的RANS或LES更为复杂因为要做RANS-LES切换。DES是一种非区域途径并会产生一个跨越解的RANS和LES区域的单一的光滑速度场。
[编辑] 求解算法
离散化完成后要进行的方程系统的基本求解由很多数值线性代数的为人熟知的许多算法完成。可以使用静态的迭代方法,譬如对称高斯-赛得尔(Gauss-Seidel)或者渐进松弛(successive overrelaxation),或者克雷洛夫子空间法(Krylov subspaces)。在后者中,解的余数在非线性算子的一个子空间的正交基上最小化。克雷洛夫子空间法通常和一个预条件算子(preconditioner)和一个内牛顿迭代一起使用。对于非线性问题不幸的是,正交基不能通过短循环来构造(相在一般的共轭梯度法中那样),而必须存储整个的序列的向量。
[编辑] 应用
这些技术广泛用于工程设计或者分析和流体交互作用的设备,例如车辆,飞行器,泵,化学装置和通风系统等等。 该技术也用于计算机图形学,因为动画家不能象控制固态人物那样简单的处理流体,因而必须使用CFD技术结合交互工具,达成动画影片或游戏中的流体模拟。
有许多求解奈维尔-斯托克斯方程的商用软件包。这些商用包的例子包括下面这些(按字母序排列): AVL/FIRE, CFX, FLUENT, KIVA, NUMECA, Phoenics, 和STAR-CD。其它软件包作为附件或CFD工具的补充产品使用。这些包括用于后置处理的FieldView和求解细节化学运动学的KINetics。
[编辑] 软件
- OpenFOAM 现在GPL版权的前商用软件
- NASA 提供CFD软件给美国居民
- GERRIS GPL版权不可压缩流体求解器
- 管道系统液体流有一个功能完备的演示,它使用样品流体来做评估,可以下载使用
- Atmos
- Stoner流水线模拟器
- 流水线工作室 包括一个评估版的下载(~ 132 M)
- Olga 2000
- CFD Studio 学习CFD问题的教学软件
- Hysys
- Comet 商用有限体方法
- Channelflow Channelflow采用"谱方法" (GPL)
- Net-Pipe
- NEKTON "谱元素法(SEM)"
- Exa Powerflow "格波尔兹曼方法"
- Enzo是开源宇宙模拟代码,采用自适应网格。
- FLASH对非商业应用免费,使用自适应网格,对于天体物理流可压缩求解器
- STAR 工业CAD-嵌入流模拟器
- FLUENT 用于一大类自由曲面流应用的CFD代码
- FLOW-3D 特别适用于自由曲面流应用的CFD代码
- Intelligent Light - FieldView的制作器
- Tecplot CFD 后置处理,绘制,图形和可视化软件
- COSILAB -用于层流和湍流中的化学的软件和CFD插件
- Reaction Design - 用于化学运动学的软件和CFD插件
- Flotherm 商用CFD软件,强调电子屏障,正交网格
- COMSOL Multiphysics (也称 FEMLAB) 商用有限元包,用于多物理包括CFD
- CFX Ansys的CFD-代码
- TAU 无结构有限体CFD-代码,来自DLR,用于飞机和直升机
- FLOWer 结构化有限体CFD-代码,来自DLR,用于飞机和直升机
- Moldex3D 商用CAE软件,用于铸模
- Pointwise - Gridgen的制作软件
- Metacomp Technologies, Inc. - CFD++的制作软件