☰
湍流预混火焰燃烧仿真:模型选型与LES算例实操指南
2026/9/28 14:05:00 网站建设 项目流程

做燃烧仿真这几年,我最大的感受是:层流预混火焰是书本里的理想模型,而湍流预混火焰才是工程里真正绕不开的硬骨头。无论是燃气轮机燃烧室、航空发动机加力燃烧室,还是工业炉窑、爆震波推进系统,你去看它的反应区基本都是湍流预混或部分预混状态。这篇就围绕“湍流预混火焰”这个主题,把我在实际项目中常用的仿真建模思路、模型选型逻辑、算例搭建流程和踩过的坑一次性讲透。全文面向已经跑过基础CFD、但刚接触燃烧仿真或者想系统梳理预混燃烧建模方法的工程师和研究生,我会尽量把每个选择背后的“为什么”也讲清楚,而不是只给一堆参数。

1. 为什么湍流预混火焰是燃烧仿真里的硬骨头

1.1 先搞明白你面对的是什么:预混火焰的本质

预混火焰的核心特征是燃料和氧化剂在进入反应区之前已经充分混合,燃烧反应由温度梯度自维持地向未燃气体传播。这个薄薄的反应区有个专属名字叫“火焰面”,其厚度通常在毫米量级甚至更薄。甲烷常压下的层流预混火焰厚度大约在0.5到1毫米,火焰传播速度也就是层流火焰速度,甲烷-空气当量比1.0附近约为0.4米每秒。

这里要建立两个直观概念。第一,火焰厚度远小于工程燃烧室的特征尺寸,一个几厘米尺度的燃烧室里面可以容纳几十上百个火焰厚度,仿真时如果网格分辨率不够,火焰面就会被数值扩散“抹平”成一团糊状的高温区,热释放率分布完全失真。第二,层流火焰速度(约0.4 m/s)远小于燃烧室内的流速(通常几十米每秒),说明湍流脉动对火焰面的拉伸、褶皱和局部熄灭起着决定性作用。你看这两个数量级差距,就能理解湍流预混燃烧仿真的核心困难在哪里:本质上是在处理一个多尺度、强非线性、化学与湍流强耦合的物理过程。

1.2 湍流带来的三重新难点

湍流对预混火焰的影响可以从三个层面来理解,这也是我在方案设计阶段反复权衡的出发点。

第一是火焰面的几何变形。湍流涡旋会不断褶皱火焰面,增大火焰表面积的同时也改变局部火焰的结构。大尺度涡把火焰面卷成大尺度的褶皱,小尺度涡则改变火焰面的局部曲率和应变率。火焰表面积增大直接意味着燃烧速率增大,所以湍流燃烧速度往往比层流火焰速度高好几倍,某些状态下可以达到5到10倍甚至更高。这个放大效应如果模型处理不准,你算出来的燃烧效率、出口温度分布就会全部偏离。

第二是局部熄灭与再着火。湍流拉伸可以将局部火焰面拉伸到无法维持反应的程度,导致火焰局部熄灭,随后又可能被周围的已燃气体重新点燃。这种局部熄灭和再着火过程在接近贫燃吹熄极限的工况下特别常见,燃气轮机燃烧室往往恰恰工作在接近贫燃极限的区域来降低NOx排放。整个火焰处于一种不稳定的动态平衡中,这对稳态求解器是灾难性的,必须依赖非定常方法(LES)才能捕捉。

第三是化学反应与湍流的时间尺度竞争。湍流混合的快慢和化学反应的快慢谁占据主导,直接决定了火焰属于哪种燃烧模式,也直接决定了该用哪类模型。判断依据就是著名的Damköhler数和Karlovitz数。Damköhler数定义为流动时间尺度与化学反应时间尺度的比值,当它远大于1时,化学反应足够快,火焰面很薄,可以用火焰面假设;当它接近或小于1时,反应不再局限于薄层,整个区域内都在缓慢反应。Karlovitz数描述的是湍流小涡尺度与火焰内部结构的相对大小,它决定小涡能否穿透火焰面干扰其内部结构。这两个无量纲数就是判断燃烧模式的两把尺子,下面我会详细展开。

2. 模型选型:别急着上大模型,先想清楚你的工况

2.1 判断燃烧模式:Damköhler数和Karlovitz数说了算

我在带项目的时候,最忌讳的就是拿到一个工况直接上某种高级模型,不管物理过程是不是适用。湍流预混燃烧仿真的第一步,应该是估算你的工况到底处于燃烧模式图上的哪个区域。

先看两个特征量。层流火焰厚度δL是火焰面尺度的标尺,层流火焰速度SL是化学反应的标尺。湍流脉动速度u′和泰勒微尺度λ或者积分尺度l可以给你湍流的时间尺度和空间尺度。把这些组合起来:

  • Damköhler数 Da = (l/u′) / (δL/SL),本质是比较积分尺度涡的流动时间和火焰化学时间。
  • Karlovitz数 Ka = (δL/η)²,其中η是Kolmogorov尺度,本质是比较Kolmogorov涡的尺度与火焰内部厚度。

当Ka小于1时,最小的湍流涡都比火焰面内部结构大,火焰面内部保持完整的层流结构,火焰面模型(flamelet)成立。当Ka在1到100之间时,小涡可以进入火焰预热区但不至于完全破坏反应区,这是薄反应区(thin reaction zone)。当Ka远大于100时,湍流涡直接打碎反应区,燃烧进入分布式反应区,火焰面概念彻底失效。

我在实际项目中怎么用这套理论呢?以典型的燃气轮机主燃区为例,Da通常在1到10之间,Ka通常低于100,大多数工况确实还在火焰面或薄反应区范围内。这时候用火焰面类模型(如G方程、FGM)是完全合理的。但如果是强掺混的驻涡燃烧室、或刚喷入的高速反应射流,Ka可能很高,火焰面假设就要打个问号。先把这两个数算出来再选模型,会让你的方案有依据,跟同行或客户讨论时也更有说服力。

还有个工程上容易忽略的点是燃料种类。同样一个工况,氢气预混燃烧和甲烷预混燃烧的火焰厚度和化学反应时间可以相差一个数量级。氢气层流火焰速度接近3 m/s,厚度更薄,同等湍流强度下Ka会大不少,用甲烷标定的网格和模型参数直接迁移到氢气上通常会出问题。这几年氢能燃烧方向火起来之后,我不少同事在转氢燃料燃烧仿真时都栽在这上面。

2.2 常用模型体系的对比与选择逻辑

确定燃烧模式后,模型选型就有章可循了。预混火焰仿真常用模型大致分三类:火焰面几何类、化学反应加速类、输运PDF类。

火焰面几何类的代表是G方程(也常叫Level Set火焰面方程)。它的核心思路是主动追踪反应区位置,把火焰当作一个无限薄的间断,通过求解一个标量G的输运方程来确定火焰面的位置和传播速度。G = 0的等值面就是火焰面,火焰面以湍流燃烧速度ST向前传播。这个模型的好处是火焰面清晰锐利,对网格分辨率要求相对低,计算量小,适合做工程大尺度问题;难点在于需要给定湍流燃烧速度ST的经验封闭,以及火焰面与流场的双向耦合处理。我做过一些钝体稳焰的算例,G方程给出的火焰位置和实验吻合得不错,但火焰面厚度附近的热释放率峰值需再配合其他关系式才能给出。

化学反应加速类的代表是增厚火焰模型(TFC)和火焰面生成流型(FGM)。TFC的思路是把火焰面人为增厚几个网格尺寸,让现有网格能解析火焰结构,同时通过效率函数补偿增厚带来的火焰速度改变。FGM的思路更精巧,先在层流对置火焰或自由传播火焰计算中生成一个低维化学数据库,然后用一个或两个守恒标量(通常是反应进度变量c和混合分数Z)索引该数据库,避免直接求解上百个组分输运方程。FGM在实际项目中是我用得最多的模型,它保留了详细的化学动力学信息,计算代价又远低于全组分输运,特别是在做NOx、CO排放预测时非常有价值。

输运PDF类模型则是求解组分概率密度函数的输运方程,在数学上最完备,能捕捉局部熄火和再着火,但计算量巨大,工程上很少用于常规设计迭代,更多集中在科研级应用中。

实际选型我一般遵循这么几条判断:

场景推荐模型理由
大尺度燃烧室稳态流场评估G方程计算量小,火焰位置捕捉好
排放预测(NOx、CO)FGM保留化学细节,可输出组分场
局部熄火、回火、动态燃烧不稳定FGM或TFC配合LES需要捕捉非定常传热传质过程
基础燃烧机理研究直接数值模拟(DNS)或PDF方法需要完整刻画湍流-化学耦合

无论选哪个模型,我都要强调一点:燃烧模型的上限取决于你给的网格和流动解的质量。预混火焰的火焰面厚度本来就薄,如果你的近火焰区网格是几毫米的量级,那再先进的燃烧模型也救不回来。下一章我就以常见的钝体稳焰预混射流为对象,完整走一遍算例搭建流程,把网格要求、边界条件、求解器设置都落到实处。

3. 实操环节:从0搭建一个预混火焰LES算例

3.1 算例背景与几何:先拿网格说事

我选一个大家接触比较多的验证算例来演示,经典的Volvo钝体稳焰预混燃烧室。它结构简单,由一个圆形或方形截面的直通道和一个中心钝体组成,甲烷-空气预混气从上游进入,流经钝体后在钝体后方的回流区中稳定火焰。这个算例的实验数据公开、模型简单,特别适合用来验证湍流预混燃烧模型,我在做模型验证阶段时反复跑过它。

先说几何和网格的关键参数。燃烧室通道边长约0.1米量级,钝体宽度约0.04米左右。这里有个最重要的问题:火焰区网格应该多细?基于层流火焰厚度δL来说,经验法则是火焰面附近网格尺度应小于δL的5到10分之一。按甲烷当量比0.55到0.7估算,δL大约在0.5到1毫米量级,所以火焰面附近网格尺度至少要做到0.1到0.2毫米。你把整个计算域的网格量估算一下就会发现,通道内采用LES的分区加密策略后,总网格量几百万就到瓶颈了,这还算可控。

如果用的是FGM模型,火焰内部结构被数据库解析,对流场网格的要求可以放宽——火焰面区网格甚至可以比δL大数倍,因为详细的火焰结构不需要物理网格去解析,让经验关系式去处理。这就是FGM在工程上省计算量的另一个重要原因。但即使如此,你仍然需要保证速度场的小尺度涡被有效解析,否则湍流脉动对火焰的拉伸效应会失真。

网格生成阶段还有几个实操经验。钝体后方的回流区是整个火焰稳定的核心区域,网格需要加密且尽量避免用高偏斜度的四边形或六面体单元,回流区中心尽量不要出现极度扭曲的单元,否则湍流涡在这里会被数值抹掉。入口前段要预留一段足够长的平直段,使湍流充分发展并给定合理的湍流边界层,不要直接在钝体上游几十毫米就给定均匀速度场,否则钝体前的速度剪切层失真,回流区位置和长度都会跑偏。我早期做这个算例时在入口直段上偷过懒,结果回流区长度偏差超过20%,后来老老实实加长了入口段。

3.2 边界条件、初始场与点火策略

边界条件的设置是整个算例里出错率最高的环节之一。预混火焰的入口是燃料和空气的均匀混合物,我要看的是当量比和入口速度。Volvo算例的典型入口条件可以这样设置:入口平均速度取17米每秒左右,湍流强度取10%上下,当量比0.55,入口静温取常温。压力出口给定环境背压,壁面采用无滑移绝热条件,或者根据实验给定壁面温度分布也可以。

这里值得展开说的是初始场和点火策略。LES的预混燃烧算例跟RANS不一样,它的流场本身就是非定常的,不能让火焰自己从头“长”出来。一个常见的做法是分步启动:先把冷态流场跑起来,等回流区、涡结构充分建立后,再在钝体后方的回流区内设置一个高温点火区域。点火区域的大小和位置要跟回流区的形状对齐,最好在回流区边界内部,因为回流区是低速区,高温燃气在此处驻留时间长,火焰容易被锚定住。如果点火区域放在回流区边界外的高速区,火焰很容易被直接吹走,算例直接走向吹熄,给你留下一个“火焰稳定性差”的错误结论。

初始高温区的温度设置也要讲究。不要直接用绝热火焰温度,因为流动尚未建立稳定,突然的剧烈膨胀会产生压力波,在出口边界反弹回来干扰流场。我习惯的做法是分两步走:先用一个中等偏高的温度(比如绝热火焰温度的0.7倍)把流场热身几百步,让密度场和速度场自适应,再切换到真实的火焰温度和反应进度变量分布。这就像启动一台发动机要先慢转预热一样,能显著减少初期的压力震荡。

还有边界条件里的湍流脉动生成。LES入口如果只给均匀速度,湍流需要走很长一段距离才能自发发展,这段距离往往比你的计算域还长。工程上常用两种方法解决:一种是在入口上游叠一个湍流生成器(比如合成涡法),另一种是采用一段辅助的湍流预生成计算,把发展充分的湍流场作为入口插值。我在Volvo算例中用的是合成涡法叠加在平均速度剖面上,它足够生成合理的入口剪切层湍流结构,又不至于引入过多的非物理大尺度涡。

3.3 求解器与数值格式设置

求解器设置我按结构化顺序来讲。空间离散方面,预混火焰LES最怕的是数值扩散。FLUENT、OpenFOAM、CONVERGE等主流软件里,LES对流项如果默认用一阶迎风,那火焰面会被抹得面目全非,热释放率峰值能掉一半以上。预混燃烧LES的对流项必须用有界二阶格式,典型做法是在火焰面附近使用有界中心差分,在流场均匀区保持低数值耗散。OpenFOAM里对应的就是bounded Gauss linear或类似的有界格式,FLUENT里选三阶MUSCL或带斜率限制的高阶格式也可以。

时间步长方面,LES的CFL条件限制很严格。我用的经验值是全局最大CFL不要超过0.5到0.8,对应的时间步长在通道流速17米每秒、网格0.2毫米量级下大约在微秒量级。如果用了显式反应源项,时间步长还要再受反应时间尺度的限制,FGM数据库查表之后这个影响通常可忽略,但严格来说还要照顾一下。跑一个充分发展的稳定火焰统计,时间上至少要走过几个回流区大涡翻转周期,每个周期对应长度尺度除以特征速度,换算成物理时间大概几十到一两百毫秒,放在微秒级时间步长下就是几万到几十万步。这个计算量比你想象的大,所以一开始不要追求时间精度,先跑通再抽查统计收敛性。

压力速度耦合在预混燃烧中还有个隐藏问题。燃烧放热会引起显著的热膨胀,密度变化剧烈,不可压求解器处理起来会触发压力修正迭代的收敛困难。工程计算里常见的处理是采用低马赫数可压缩求解器,把热释放效应放在能量方程里显式处理,压力场通过低马赫修正来耦合密度。如果你手里的求解器只有不可压算法,也能跑,但压力-密度解耦导致的密度震荡会频繁出现,遇到这种情况最好换用低马赫求解器,别硬扛。

关于湍流模型,虽然这章讲LES,但还是要提一句亚格子模型的选择。预混火焰的LES亚格子模型对计算结果的影响比想象中更重要,因为亚格子涡会贡献一部分火焰面褶皱。常用的是动态Smagorinsky模型或WALE模型,两者差异在回流强剪切区比较明显,WALE模型对壁面和回流区的处理更稳,不容易产生过高的亚格子粘性。我用WALE模型跑钝体稳焰算例的经验是:回流区长度预测比实验偏小3%到8%,这个偏差在验证算例的可接受范围内。

4. 常见问题与排查实录

4.1 火焰吹熄或点火失败

点火阶段最常见的现象是高温区设进去之后,火焰不但没有传播开,反而快速被吹熄,温度场很快回到冷态。第一步排查先看点火位置和速度场:把点火区域的速度矢量图拉出来,看点火区是否落在了回流区核心的低速区内。如果点火区刚好在回流区外的高速主流里,火焰根本没有驻留机会,被吹熄是必然的,这属于设置问题而不是模型问题。

第二步排查网格在点火区的分辨率。回流区核心网格如果是几毫米尺度,火焰面上一个网格都放不下,火焰传播速度被强行压低。我之前遇到过类似情况:把网格从2毫米加密到0.3毫米之后,同样的点火策略就成功了。此外也要检查入口温度边界,预混气温度如果比设计值低太多,火焰传播速度会明显下降,这相当于实际工况变了。如果你跑的是贫燃极限附近的工况,这个因素尤其敏感,入口温度差10到20K就可能决定火焰能不能维持。

4.2 热释放率过低或火焰面模糊

跑稳以后,如果发现热释放率分布比实验低,而且火焰区像一个宽厚的高温带而不是锐利的火焰面,这个现象十有八九是数值扩散造成的。一阶格式、过粗的网格、过大的亚格子粘性,三者都会造成同样的表象:火焰面被抹宽、峰值被抹低。

排查思路也是三步走。先看火焰区内的等效网格尺度和格式,确认对流项用的是有界高阶格式而非默认一阶;再看亚格子粘性量级,如果亚格子粘性比层流粘性大两个数量级以上,要检查是模型参数问题还是网格不够;最后对比压力场和速度场,确认回流区速度剖面和实验是否吻合,流场如果偏差大,火焰面褶皱自然不对,热释放率也就跟着失真。某些案例里,热释放率峰值偏低其实是全局当量比设置偏低导致的,把入口组分核对一遍,经常会发现混合分数偏差了零点零几,这足以让温度峰值下降几十K。

4.3 火焰位置漂移与不对称

火焰稳定位置比实验位置更靠下游,或者火焰面一侧偏移,这个问题在钝体稳焰算例中经常出现。火焰往下游漂移说明火焰传播速度不足以抵抗来流速度,回流区稳焰能力被低估。核心怀疑对象是湍流燃烧速度的封闭模型。G方程里ST的表达式通常是基于局部湍流强度和层流火焰速度的经验关系,这些关系都有适用范围,气体组分、当量比、压力一变就可能失准。我在处理这类问题时,会先用实验数据反向校核ST系数,再重新跑一轮。

火焰不对称往往不是物理现象而是数值现象。几何和边界条件完全对称的算例,火焰却偏向一侧,通常是回流区两侧的湍流涡结构被数值不对称地处理了。排查点包括:计算网格里回流区两侧的单元是否对称、边界条件两侧的湍流脉动是否对称、燃烧模型的亚格子效应对两侧是否完全等效。如果找不到明显的数值不对称来源,可以考虑延长统计时间再观察——回流区的抖动本质上就是非对称的,火焰两侧来回摆动也可能是物理的周期性涡脱落特征,需要统计时均来判断。

4.4 收敛困难与压力震荡

预混燃烧LES最常见的收敛问题来自密度剧烈变化引起的压力-速度解耦。表现是压力残差平台、速度场出现棋盘状分布、温度场出现局部数值振荡。最有效的措施是把压力基求解器切换到耦合式压力求解,或者采用低马赫预conditioning。如果没法改求解器,就降低时间步长、提高压力迭代内迭代次数,但代价是计算时间显著增加。

另一个容易被忽略的压力震荡来源是出口边界条件。预混火焰出口有热膨胀后的高温高速气流,如果出口边界用了简单零梯度压力条件,涡和压力波会在出口反射回来干扰上游流场。工程上常见的对策是出口加一个缓冲区或者非反射边界条件,给湍流结构一个衰减和排出通道。我曾在出口缓冲区长度不足一倍通道特征尺寸的算例里反复看到回流区位置周期性振荡,加了缓冲区之后这个问题就消失了。

我还想特别提醒一个跟FGM模型相关的坑:反应进度变量c的输运方程容易因源项过强而出现局部越界、产生数值震荡。解决方法是限制c在0到1之间,并在求解时保证c的对流有界,否则c的超界会导致FGM查表失败。FGM数据库本身也需要注意边界条件,当c接近0或1、Z偏离设计值时,数据库外推可能给出非物理的负反应速率。这些细节看起来琐碎,但它们在几百万元CPU核时的算例里爆炸时,代价一点都不可爱。

5. 后处理与数据提取

5.1 热释放率与火焰面定位

算例算稳之后,分析阶段的核心工作是提取热释放率场和火焰面位置。热释放率的峰值位置就是火焰面的核心位置,在FGM模型里直接读取反应进度变量c等值面(通常取c = 0.5)作为火焰面即可。需要强调的是,单看瞬时的c等值面会抖动得很厉害,应该对足够长的统计窗口做时间平均后再提取火焰面位置,这样才具备与实验对比的意义。

温度梯度和OH自由基的空间分布也常用于火焰面识别。实验上常用PLIF手段获取OH信号,仿真里则可以输出OH质量分数场,两者对比时需要对齐空间坐标系和积分深度。我自己做对比时的一个体会是:仿真OH场比实验OH层更厚,一个原因是FGM数据库里的OH是在层流火焰面结构上计算的,与实际湍流火焰的OH分布存在固有偏差。这个不是bug,而是模型逼近的固有特点,跟审稿人或用户解释时要提前说清楚。

5.2 湍流火焰速度的分析

湍流火焰速度ST是预混火焰最核心的后处理量之一,它衡量的是湍流对燃烧速率的增强效应。从仿真数据里计算ST的方法很多,常用一种是统计通过一个垂直于流向平面的质量燃烧率流率,除以该平面的未燃气体密度和面积,换算成等效的传播速度。另一种做法是统计火焰面面积和局部层流燃烧速率乘积,再归一化。

这里的一个经验是:ST对统计窗口非常敏感,特别是火焰面波动明显的工况,统计时间不够的话ST会一直处于未收敛状态。我一般会监控ST随统计时长的演化曲线,当曲线进入稳定平台(波动小于5%)时才认为统计收敛。同时也要注意湍流燃烧速度的定义口径,是用未燃密度还是已燃密度来归一化,两者数值差异显著,对比文献数据时必须先确认对标口径,否则很容易得出“模型误差很大”的错误结论。

6. 实操总结与个人体会

回头看整个湍流预混火焰仿真流程,我觉得最核心的经验可以浓缩成三句话:先判断燃烧模式再选模型,先解决流场精度再谈燃烧模型精度,先跑通小算例再上大规模计算。燃烧仿真跟结构仿真很不一样,它不像应力分析那样“网格一加密结果就必然趋向正确”,燃烧现象里的多尺度耦合决定了结果的正确性取决于模型与网格的匹配程度。

我在实际项目中体会最深的一点是:不要迷信复杂模型。很多场景里,一个网格加密合理、边界条件精确、数值格式正确的FGM或G方程算例,比一个网格粗糙的PDF方法算例给出的结果可靠得多。模型复杂度从来不是精度的保证,物理假设与工况的匹配程度才是。

最后再分享一个小技巧:做任何新工况的预混燃烧仿真前,先跑一个层流预混自由传播火焰的一维算例,验证你的化学机理、FGM数据库和反应进度变量定义都与目标工况一致。这步只要花很少的计算资源,却能把后面几百万核时的LES算例里那些“因为机理标定错误导致结果偏差”的隐患提前排除掉。我踩过几次坑之后,就把这个一维校验固定成了团队的流程标准。按照这个流程往下走,你会发现湍流预混火焰仿真虽然复杂,但只要每一步都问清楚“为什么”,结果的可信度会大幅提升。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询