开展CFXの正确姿势
Posted by Mars . Modified at
CFX计算CFD的一些经验与关键点
网格生成
- 注意先设定
ICEM
软件的并行计算核心数; - 导入模型后,必须先进行模型修复;
- 定义必要的part后,将多余的几何元素删除干净;
- 结构化网格划分:
- block采用从外向内的方式进行:1)应该先充分分析几何形状的特点,设计合理的块划分方式;2)然后在整体上用切割工具,对原始块进行合理地切分;3)然后对需要进行O型切分或Y型切分的块进行切分;4)删除多余的块,然后进行关联和移动操作;
- 移动Block的顶点时,尽量避免单独移动一个顶点,尽量选取对齐的多个顶点同时移动,并善于使用移动顶点下方的Fix锁定轴功能;
- 移动/关联需采取从内向内外的方式,外部顶点或边线关联后,块内部的顶点或线应当及时移动到内部合理位置,以免以后看不清造成混乱;
- 尽量减少采用与三个视图轴均不平行的视角操作,尽量采用正对三个坐标轴的视图操作,并对应对齐的顶点时刻保持对齐状态。
湍流模型选取
稳态计算
0方程模型
- 快速求解其他湍流模型所需要的初始场;
- 不能用于最终结果求解;
层流模型(None)
- 低雷诺数层流(Re ≤ 2000);
- 边界层无分离;
k-epsilon
- 大多数工程问题;
- 不适用于以下情况:边界层分离、平均应变率突变、旋转流动、流过弯曲表面;
SST k-omega
- 被设计用于准确模拟逆压梯度造成的边界层分离;
- 低雷诺数流动;
- 模拟转捩流动(应用 Transition Turbulance Model);
- 如果存在边界层分离再附着,可使用Reattachment Modification Model;
注意,适用
SST
模型需保证:
- y+ ≈ 1;
- 至少在边界层内设置10个点;
Explicit Algebraic 雷诺应力模型(EARSM)
- k-e 和 BSL 模型的扩展;
- 可捕捉二次流、流线弯曲、系统旋转;
BSL雷诺应力
- 适用于
k-epsiolon
无法准确模拟的边界层分离流动
;
SSG雷诺应力
- 强烈各向异性,比如旋转流动;
- 平均应变率存在突变的流动;
- 强烈的流线弯曲;
- 应变场复杂的流动;
- 二次流;
- 浮力流动;
SSG模型具有以下特性:
- 鲁棒性较弱,计算量大,对复杂流动难以应用;
- 收敛慢;
- 时间步长应相应缩短。
瞬态计算
LES (大涡模拟) 模型
LES不适用以下情况:
- 雷诺数 Re<5000;
- 需要给出全部尺度湍流细节的情况(此时需用直接数值模拟DNS);
- 流动可能不稳定,存在大尺度剪切层摆动或涡脱落;
- 流动可能非定常,存在拟序结构(如:旋风);
- 浮力流动,存在大的由底层加热(或由较轻的流体在较重的流体下面)所造成的不稳定区域;
- 已知使用传统RANS方法求解失败的流动(如:高度各向异性湍流);
- 因存在小尺度过程,需对湍流结构进行良好展现的情况(如微观混合流动、化学反应流);
- 需计算流动产生噪音的情况,尤其是重点考察宽频贡献;
- 其他需要流体波动信息的情况(波动应力、阵风等);
- 任何你可以承受等待一周的时间来获取结果的情况。。(8-16核CPU);
注意,LES有以下特点:
- 可以给出湍流结构的细节,如压力波动等
- 使用网格尺度来过滤湍流
- 需使用各向同性网格,最好使用四面体网格而不是六面体网格
- 求解精度和网格分辨率息息相关,其网格通常应划分到泰勒尺度以内
Detached Eddy Simulation(分离涡模拟)模型
- 非空气动力学构件绕流(建筑,桥梁等);
- 交通工具绕流,存在大量的分离区(汽车,火车,卡车);
- 产生噪音的物体外绕流(如汽车后视镜);
- 存在大量分离的机翼失速绕流;
注意,分离涡模型有以下特点:
- 在边界层外采用RANS,在边界层分离区采用LES;
- 最大网格间距很重要:用于DES 限制器开关,网格需具有足够精度;
- 相较于RANS,计算密集程度超出一个数量级;
- 不可使用对称边界;
计算
模型
检查模型尺寸,如模型尺寸不符transform mesh
到合适尺寸;
增加收敛可能性
- 打开双精度;
- 正确的边界条件设置:
-
鲁棒性最佳: 进口边界条件:速度/质量流量 出口边界条件:静压 入口总压是待预测的隐含变量。
-
鲁棒性好: 进口边界条件:总压 出口边界条件:速度/质量流量 入口速度是计算结果的一部分。
-
对初始猜测敏感: 进口边界条件:总压 出口边界条件:静压 质量流量是计算结果的一部分。
-
非常不可靠: 进口边界条件:静压 出口边界条件:静压 非常不推荐的组合。入口总压级别和质量流量都是待预测的隐含变量(对系统是非常弱的约束)。
-
绝对不可使用: 出口边界条件:总压 流体流出总压指定的出口边界,是无条件不稳定的。
对于有超过两个入口或出口的流场,其他开口应该设定为Opening边界。这是因为这些其他边界流体既有可能> 流入,也有可能流出,流动方向应该是计算结果的一部分。
-
- 渐进式求解:
- 先计算一阶迎风格式,然后将结果作为初始值计算高精度格式;
- 湍流数值精度可以先进行一阶精度,再计算高精度;
- 入口速度渐进法: 如求解10m/s的入口速度结果,可以先设置1m/s入口速度,后逐步迭代计算;
- 模型渐进:在
Solver Control -> Advanced Option -> Turbulence Control
中设置转换迭代数目
为5
(含义是在初始的几个计算步内使用 Zero-Equation Model,防止发散); - 混合求解格式(Specified Blend Factor)下,从
0
逐步提高混合比到1
。(blendFactor为1时比High Resolution更精确,但鲁棒性更差); - 跨声速问题:最难求解的区域是 Ma=1 附近区域。先降低入口流速设置为稍低值(全局亚声速),再把收敛解作为初始场,提高入口流速,求解最终结果;
求解器设置
- 计算步数设置为
100000
,RMS设置为1e-5
; - 如自动时间步长发散,可选用物理时间步长;
物理时间步长 = 1/3 * (特征长度 / 特征速度)
如出现“残差跳动”,则将时间步长÷4。如果多次仍跳动,考虑是否有非定常现象。
- 对于速度跨度比较大的流场模拟,可以设置局部时间尺度;
局部时间尺度模拟可以用于前期计算增加收敛可能性,但不能用于最终结果的计算。
- 固体域的时间步长,应该比流体域时间步长大得多,至少为流体域步长的
100~1000
倍; - 输出控制中,设置合理的
backup interval
,防止中途断电或发散导致工作丢失; - cfx-solver起动前,设置合理的并行核心数(最大核心数 - 1);
- cfx-solver起动前,选取合理的初始化流场;
- 如果计算爆出孤立域错误(
isolated regions
),手动开启忽略孤立域检测项;具体操作:insert -> solver -> expert parameter -> convergence control -> check isolated regions -> t改为f。