"传热学仿真—主题076-火焰辐射特性",这个主题,说实在话,在燃烧仿真里属于那种不做不知道、一做就上头的内容。凡是跟炉膛、锅炉、发动机、热工装备打交道的人,迟早会碰到一个问题:高温火焰到底传递了多少热量给周围的壁面?这个数值算不准,后面的温度场、热应力、热效率全都要跟着偏。而火焰辐射特性的仿真正是解决这个问题的钥匙。
火焰辐射的本质是燃烧产物在高温下以电磁波形式向外发射能量。它跟导热、对流的最大区别在于,辐射不需要介质,接近光速传播,而且能量大小跟温度的4次方成正比。所以在高温场景下,辐射往往占传热总量的80%以上,甚至更高。你光算对流和导热,根本没法交代。
这篇文章围绕火焰辐射特性这件事,把仿真里最核心的东西过一遍:辐射传热方程怎么理解、高温气体和碳烟的辐射特性怎么处理、工程上用的辐射模型各自适合什么工况、实操时参数怎么设、算出来怎么验证、还有那些我踩过无数次的坑。适合谁看?准备做燃烧方向仿真的学生、刚接触热工设备优化的工程师、以及被锅炉和燃烧器辐射热量算不准搞得头疼的同志,这篇应该能帮你省下不少折腾功夫。
1. 火焰辐射特性的底层逻辑:从光谱到辐射传递方程
1.1 火焰辐射的本质:气体光带与碳烟连续谱
火焰辐射特性这个词听起来有点唬人,拆开其实就是两件事:第一,火焰发出了多少辐射能量;第二,这些能量在不同波长上是怎么分配的。第一件事决定了总的辐射热流有多大,第二件事决定了你该用什么样的模型去算它。这两点搞明白,后面模型选什么、仿真参数怎么设,就都有章可循了。
燃烧产物里,主要的辐射贡献者是二氧化碳、水蒸气和碳烟。二氧化碳和水蒸气属于气态分子,辐射能量集中在特定波长附近,形成一条一条的吸收带。比如二氧化碳在4.3微米附近有一个很强的吸收带,水蒸气在2.7微米和6.3微米附近也有强吸收带。这些吸收带之外的光谱区间,气体几乎是透明的。换句话说,气体不是像黑体那样全波长均匀辐射,而是在特定波段里“亮”,在其他波段里“看不见”。
碳烟颗粒就完全不同。它是固体颗粒,辐射光谱近似连续,像一个小灰体,在很宽的波长范围内都会辐射。火焰中看到的黄色发光,主要就是碳烟颗粒发出的。温度越高、碳烟浓度越大,黄色越明显,辐射强度也越大。在一些明亮扩散火焰里,碳烟贡献的辐射能量甚至超过气体辐射,占了绝对大头。
对做仿真的人来说,这层理解是最基本的门槛。你不管用什么软件、什么模型,最后都是在回答同一组问题:这个网格单元里的气体温度是多少?二氧化碳和水蒸气的分压是多少?碳烟体积分数是多少?把这些量定准了,火焰辐射特性的计算才有基础。
这里还要补充一个工程上常被忽略的点:火焰辐射的能量主要落在哪个波段,直接影响你后处理时看什么数据。按维恩位移定律,2200K左右的火焰,辐射峰值波长大约在1.3微米附近,而大部分能量分布在0.8到10微米之间。这个区间正好覆盖了很多红外测温仪和辐射热流计的响应波段。所以仿真和实验对照时,一定要确认仪器的光谱响应范围,别把全谱辐射强度直接和一个只测某波段的传感器读数硬比,那是对不上的。
1.2 辐射传递方程与光学厚度
火焰辐射仿真绕不开辐射传递方程,行业里通常缩写为RTE。忽略散射、只考虑吸收和发射的一维形式是这样写的:
dI/ds = κ(Ib - I)
其中I是辐射强度,单位是W/(m²·sr);Ib是黑体辐射强度,只跟温度有关;κ是吸收系数,单位是1/m;s是沿传播方向的路径长度。如果还要考虑散射,就在右边加一项关于散射相函数的积分项。不过大多数火焰辐射场景里,散射的作用相对次要,很多工程计算干脆把散射系数设为0,只保留吸收和发射。
从这条方程里能悟出不少东西。等号右边第一项κIb代表沿路径上介质发射进来的能量,第二项-κI代表介质对已有辐射的吸收衰减。于是辐射强度在某一点的最终值,取决于传播路径上介质温度、浓度以及路径本身的长短。这就引出一个关键概念:光学厚度τ。
τ的定义是吸收系数沿路径的积分,τ = ∫ κ ds,无量纲。τ远小于1时,路径上基本不消耗辐射,这种情况叫光学薄;τ接近或者大于1时,介质对辐射有显著的吸收和再发射,叫光学厚。同样是1米长的火焰,在一个大气压下,某些波长的吸收系数可能只有0.01,有的却达到几十,光学厚度在不同波段能差出好几个数量级。
举一个很直观的例子。假设某段火焰温度为1800K,平均吸收系数按气体主导估算为0.5每米,火焰特征尺寸是2米,那么τ大约就是1。这个量级意味着辐射在火焰里传播时会被显著吸收,但又没有完全被屏蔽,属于典型的“半厚”状态。这时候很多简化模型都会失真,必须认真求解RTE。
为什么单独把光学厚度拎出来讲?因为建模策略都围着它转。光学薄场景,辐射主要由局部温度和发射率决定,计算简单;光学厚场景,辐射被反复吸收和再发射,局部近似往往不灵。而真实火焰大部分介于两者之间,这也就是为什么辐射模型的选择不能随便拍板,得先判断工况到底在哪个区间。
我自己做项目时的习惯是,开局先不做精细模型,用手算或者快速二维粗算估算一下光学厚度量级。τ小于0.1,可以直接用体发射模型,省时又稳定;τ大于5,P-1这类扩散近似就能胜任;卡在0.1到5之间的,老老实实用离散坐标法DO。这个简单判断能帮你避开一堆无谓的计算试错。
2. 火焰辐射仿真模型怎么选:气体、碳烟与求解器
模型选错,结果白算。同一个炉膛,一个人用灰气体模型,一个人用全谱带模型,算出来的壁面热流可能差出百分之二三十。所以这里必须认真比较,至少要把气体辐射、碳烟辐射、辐射传递求解器这三件事分开看。
2.1 高温气体辐射特性:灰气体、WSGG与全谱带
真实气体光谱是非常不均匀的,逐波长精确计算需要的波段成百上千,在线计算根本不现实。工程仿真里主要有三条路。
最粗暴的叫灰气体模型,把整段光谱当成一个与波长无关的等效吸收系数,相当于把一根带毛刺的光谱曲线拉平成直线。好处是计算量极小,缺点也明显,在温度变化剧烈的火焰区域误差很大,经常低估辐射传递。早期有些简化热平衡代码还在用,现在的燃烧CFD已经不把它当首选。
中间路线是加权总灰气体模型,行业里叫WSGG,全称是Weighted-Sum-of-Gray-Gases。它的思路是把真实气体的光谱效应拆成若干组“灰气体”的线性叠加,每组灰气体有一个吸收系数和一个随温度、组分变化的权重。具体计算时,先根据局部的二氧化碳和水蒸气分压查表得到权重系数,再对每组灰气体求解辐射方程,最后加权求和。这样既保留了气体光谱“带内强、带外弱”的主要特征,计算量又能控制在可接受范围。目前主流CFD软件基本都内置了WSGG,通常三到四组灰气体就已经有不错的精度,是工程燃烧仿真的主力模型。
精度要求再往上走的,是全谱带模型或者窄带模型,把光谱按波数分成几十甚至几百个区间,逐区间求解辐射传递方程。这类模型能得到非常接近实验的光谱辐射数据,但计算量成倍上升,更多用在辐射精确测量、火焰光谱预测这类偏研究性的场景,常规工程交付极少选择。
选型时我的原则很简单:做炉膛整体热平衡、壁面热流预测,WSGG足够;需要看火焰局部光谱特性、分析污染物生成耦合的,才考虑全谱带。算力有限但结果要求不低,可以先用WSGG跑稳态主工况,发现问题再把关键工况升级为全谱带验证。另外要注意不同版本WSGG实现的差异,有的按三组灰气体实现,有的是四组,不同版本物理对应关系不完全一致,交付报告里最好把模型版本和灰气体组数写清楚。
这里还想多说一个实操细节。很多工程仿真用的还是“平均吸收系数”这种更粗糙的做法,比如给整个炉膛填一个固定κ值。这在单一工况、温度变化不大的情况下还能凑合,但火焰辐射天然是强非线性问题,吸收系数随温度和组分变化剧烈,固定κ值的适用范围非常窄。你要是做的项目涉及负荷变化、燃料切换,一定要用能随场变量更新的辐射特性模型,否则算出来的热流分布就是一张过期地图。
2.2 碳烟辐射:火焰发光的“主角”怎么处理
碳烟在火焰辐射里地位极其特殊。它的体积分数通常只有十的负七次方到十的负五次方,看起来微不足道,可它在红外区段的吸收能力,往往比气相二氧化碳和水蒸气高出几倍甚至一个数量级。所以很多明亮火焰里,碳烟贡献的辐射能量能占到火焰辐射总热流的70%以上。仿真里如果不处理碳烟,壁面热流算出来经常偏低,而且偏得非常多。
工程仿真处理碳烟辐射,通常分两步。第一步是确定碳烟分布,要么直接给气相燃烧模型加上碳烟质量分数输运方程,要么根据火焰类型和燃烧经验给定体积分数分布。第二步是把碳烟视为吸收性灰介质,在辐射模型里加一个与碳烟体积分数成正比的吸收系数项。碳烟对光的散射相对吸收处于次要地位,大多数工程计算直接忽略散射,不会带来明显代价。
这里必须多说一句:碳烟体积分数的数值能不能乱给?答案是绝对不行。吸收系数与碳烟体积分数基本是线性关系,你从十的负六次方改成十的负五次方,辐射热流可能就翻倍。我手头有个印象很深的项目,某加热炉仿真一开始漏了碳烟模型,算出的炉壁热流只有实验值的55%。后来补上碳烟项,体积分数按同类型实验数据给定,热流立刻回到了实验值的90%以上。那次之后我就养成了条件反射,凡是涉及明亮火焰,先问碳烟模型开没开。
当然碳烟分布不是哪都能猜准的。有条件的话,用消光法、激光诱导炽热法之类光学手段实测几个截面的碳烟体积分数;测不到,就参考同类型燃料、同类型燃烧器的公开发表数据和经验公式。总之,碳烟模型可以基于经验,但参数必须有出处,不能拍脑袋。
碳烟模型本身也有颗粒粒径和聚集形态的影响,理论上碳烟吸收系数跟粒径、折射指数、聚集态都有关。不过工程计算通常取一个等效吸收系数,把这个复杂因素吸收进标定参数里。做高精度光谱分析时,才需要考虑碳烟粒径分布对光谱斜率的影响。对于常规热流预测,用等效吸收系数是合理的简化。
2.3 辐射传递求解器:DO、P-1、S2S怎么配
气体和碳烟的辐射特性解决了“介质怎么发射、怎么吸收”的问题,接下来还要回答“辐射能量怎么在空间里传递”,这一步交给辐射传递求解器。
| 求解器 | 适用场景 | 主要局限 |
|---|---|---|
| P-1 | 光学厚、几何复杂、追求稳定快速 | 光学薄和强各向异性场景误差大,热流方向性差 |
| 离散坐标法(DO) | 大部分火焰场景,能处理散射和壁面辐射 | 内存和计算开销大,角度离散度需要调 |
| 表面辐射(S2S) | 透明介质、主要看壁面间辐射 | 无法处理火焰这类参与性介质,燃烧仿真基本不适用 |
实际项目里,DO是绝对的主力。它对光学厚度、几何形状、壁面辐射的适应面都很宽,默认配置往往就能达到工程需要的精度。代价是计算量大,比如三维模型角度离散参数从4×4提到8×8,方向数量变成原来的四倍,内存和耗时同步上涨。P-1的优势是快,在光学厚大空间里能较快给出约略的热流分布,适合方案阶段的趋势判断和粗筛。S2S模型从设计上就针对透明介质,火焰和高温烟气这类参与性介质不属于它的适用范围,做燃烧仿真时一般直接排除。
角度离散是DO模型里最需要调的参数。通用CFD软件里常见4×4或8×8,方向越多方向分辨率越高。判断方法很简单:算完成后看壁面热流分布有没有“阶梯状”条纹,有就说明角度不够粗,往8×8甚至更高提;没有条纹或者条纹很轻,4×4就能用。我们做过的一些项目里,4×4算出来的总热流误差在几个百分点内,但局部热流峰值会被抹平,如果是做热应力分析,建议还是用更细分的方向。
除了角度离散,DO模型还有几个参数需要留意。一是空间离散格式,二阶格式比一阶格式精确,但更容易发散;二是辐射迭代次数,要保证每个流场迭代步内辐射方程充分收敛,否则残差会在时间步里“欠松弛”,拖着能量方程一起震荡。这些参数在具体软件里位置不同,但作用机制是一样的,调起来万变不离其宗。
3. 实操设置与参数配置:一步一步把火焰辐射仿真跑起来
理论知识说了一大堆,最终还是要落到软件界面和参数表格里。这一章按我自己的操作习惯,把从网格到收敛的全流程讲清楚。不同软件界面上按钮名称不完全一样,但底层逻辑是共通的。
3.1 几何简化与网格控制
火焰辐射仿真对网格的要求和普通流场仿真不太一样。导热对流问题需要壁面附近细网格去分辨边界层,而辐射传热主要是一个体积效应,靠的是每个网格单元的温度、吸收系数和彼此之间的视线传递。网格太粗,火焰区的温度梯度根本捕捉不到,辐射源项就会失真;网格太细,对辐射计算的整体收益却不明显,白白增加计算时间。
我一般把网格设计分成两段来考虑。第一段针对燃烧和流动,火核区域和近壁边界层按燃烧仿真的常规要求加密,保证火焰温度场和组分场正确。第二段针对辐射,额外关注光学厚度大的区域,把这个区域再加密一档,防止“高温火团”被嵌进一个粗大的单元里。实际操作时,可以先跑一套粗网格得到火焰大致位置,再局部加密,效率和准确度都好于一开始就全区域密密扎扎。
网格无关性验证也有一套固定动作。取三套网格,密度大约按1.5倍递增,比较的目标是关心的壁面平均热流和局部峰值热流。当两套邻近网格之间热流变化小于5%,就认为网格已经基本无影响。我见过不少新手上路就追求精细化网格,结果摆弄了一周网格,后来发现辐射热流对网格本来就不高度敏感,粗网格值已经可以接受,时间是白耗了。
网格质量上,辐射模型对单元形状没有对流模型那么敏感,但极度扭曲的单元还是会造成辐射方向离散时的插值误差。我的底线是正规化的质量指标别低于0.3,单元扭曲率尽量控制在0.8以下。做燃烧仿真本来温度梯度就大,再叠上辐射源项,数值稳定性会比单纯流场更容易受坏网格影响。
3.2 燃烧与辐射的耦合设置
火焰辐射仿真的最终结果高度依赖温度场。温度差了100K,辐射热流按四次方关系就可能差出百分之二三十。所以燃烧模型的准确性,是辐射仿真成功的先决条件。但燃烧模型和辐射模型同时开启时,又很容易出现数值不稳定。
稳妥的启动顺序,我建议分三步。第一步,关闭辐射模型,只跑流动和燃烧,先把温度场稳定下来。第二步,打开辐射模型,但采用“冻结”方式,先让辐射传递方程算几次,把辐射源项加到能量方程,观察温度场响应。第三步,每隔若干迭代步更新一次辐射场,逐步耦合到收敛。这个顺序能避免一开始就全耦合引发的剧烈震荡。实际项目中用这个思路跑锅炉炉膛燃烧仿真,比直接全耦合的收敛性稳得多。
辐射场更新的迭代频率也有讲究。每1步更新一次辐射场理论上是全耦合格局,但边界条件不稳定容易发散;每50步更新一次又太滞后,温度场已经变化了,辐射场还停留在旧状态。我常用的节奏是初始阶段每10步更新一次,稳定后逐步放宽到每20到30步。判断标准很简单,看能量方程的残差曲线没有周期性波动,说明耦合节奏是匹配的。
燃烧模型和辐射模型之间的耦合,还有一个容易被忽略的点:热释放率分布。如果燃烧模型算出来的反应区位置偏了,辐射源项当然跟着偏,这种偏差靠辐射参数是救不回来的。所以流程上我会先严查一整套无辐射工况的火焰结构,确认着火点位置、火焰长度、最高温度都和实验或经验数据对得上,再开辐射。前面烧得不对,后面辐射全是空中楼阁。
3.3 材料物性与边界条件
火焰辐射涉及的物理性质参数,比普通流场仿真要复杂一些,重点集中在三个方面。
第一个是吸收系数和灰度模型。如果用的是WSGG,要在软件里确认气体吸收模型设定的组分是否包含二氧化碳和水蒸气,分压来源对不对。有的软件默认只算二氧化碳,水蒸气贡献被漏掉,辐射热流会低估。这一点在天然气、氢气这类水蒸气产物多的燃料里尤其明显,漏掉水蒸气的后果往往很严重。
第二个是碳烟相关参数。开启碳烟辐射模型后,要给定碳烟体积分数或者碳烟质量分数分布,并确认吸收系数关联式是否合理。这部分最容易出错,也最容易被人忽略。如果你是用经验公式推算的碳烟分布,建议在交付报告里把公式、系数出处和适用范围都写清楚,别让后来接手的人一头雾水。
第三个是壁面发射率。这是我最想强调的边界条件。壁面发射率代表真实壁面相对于黑体的辐射能力,取值从0.05到0.95跨度巨大。抛光的金属表面发射率极低只有0.05左右,而氧化后的金属表面、耐火材料表面通常在0.8到0.9。很多火焰辐射热流算低的案例,查到最后都是这里出的错。火焰是热源没错,但壁面发射率决定它能接收多少热。后面常见问题部分我还会展开讲。
入口出口边界也不能用默认值糊弄。烟气出口一般设成压力出口,同时给定出口辐射温度的合理初值。如果出入口辐射边界设置不当,会造成本不该有的辐射损失或者辐射回流,影响整个热平衡核算。一些封闭炉膛内壁彼此之间也有大量辐射交换,壁面温度分布不均匀时,这种壁面间辐射对局部热流影响很大,要留足够的统计。
3.4 收敛判定与热平衡核算
辐射模型收敛与否,残差数值只能做参考,更可靠的判据是物理量的平衡。我最常用的两个指标,一个是温度场和壁面热流是否随迭代不再明显变化,另一个是整个计算域的能量平衡是否闭合。这里的能量平衡要单独算辐射部分:把壁面所有面单元上的辐射净热流积分,得到总辐射传热量,再和燃烧释放热量做比较。一般燃烧设备中,辐射散热占总释放热的比例大致在10%到40%这个区间,如果算出来明显超出,说明辐射模型或者边界条件有问题,需要回头排查。
这里我提供一个简单的估算例子:假设一台方形炉膛内燃料释放热为1兆瓦,壁面面积约20平方米,辐射散热占比25%,那壁面平均辐射热流就是250千瓦除以20平方米,得到12.5千瓦每平方米。这个量级和常见工业炉的实验测量值是对得上的。如果仿真积分出来的辐射热流总量明显偏离这个比例,不要先怀疑设备,先怀疑自己的模型配置。
还有一个小技巧是分区域监控。总热流平衡很好,不代表局部正确。在炉膛的侧墙、顶部、底部几个关键位置分别放监视点,输出辐射热流随迭代的变化曲线,这样能直观看到哪里还没稳定,防止出现“总平衡掩盖局部偏差”的情况。
能量方程建议用双精度求解。这个操作不需要额外解释太多,火焰辐射计算涉及温度四次方和大量小数值权重,单精度累加误差容易被放大,双精度带来的额外时间开销相比整体求解时间并不算高,值得花这个成本。
4. 验证与校准:仿真结果靠什么说话
辐射仿真最容易被质疑的就是结果怎么证明是对的。火焰本身温度高、危险大,实验测量又有不少困难。所以验证工作不是可选项,是交付的底线。
4.1 基准案例与实验数据的对照方法
我做火焰辐射仿真时,验证的顺序通常是从简到繁。先跑一个已经公开发表过的轴对称扩散火焰基准算例,这种算例有详细的温度、碳烟体积分数、壁面或者下游辐射热流测量数据。计算模型和实际项目保持一致,然后把关键截面上的辐射热流计算值和实验值画在一张图上对比。
对照时别只盯平均值,要看趋势和峰值。辐射热流沿轴向分布是双峰还是单峰、峰值出现在什么位置、峰值大小差多少,这些才是判断模型是否抓对物理的关键。假如温度场分布和实验吻合,但辐射热流整体偏低,基本可以认定辐射环节有问题;如果温度场偏差很大,那先回去调燃烧模型,别在辐射参数上白费劲。这个顺序观念必须养成。
基准算例跑通后,再把同一套模型参数用到实际项目上。这里有一个常见的坑:基准算例是实验室尺度小火焰,实际项目是工业尺度的炉膛,气体辐射特性模型参数虽然差不了太多,但光学厚度和壁面发射率差别很大。也就是说,基准验证证明了“方法可行”,实际项目还必须验证“参数适配”。
验证过程中还要处理好实验测量本身的不确定性。辐射热流计有视角系数和响应时间的问题,热电偶测量又有导热损失和辐射误差,这些都会让实验数据带上自己的“滤镜”。仿真和实验对照时,尤其在局部峰值附近,容许一定程度的偏差是正常的。我看到不少同行把实验数据当成绝对真理来拟合,反而忽略了实验本身的误差范围,这种做法并不值得提倡。
4.2 火焰发射率与吸收系数的校准技巧
火焰发射率这个概念,实验上可以通过测量火焰某方向上的辐射强度反推出来。仿真中,火焰发射率主要来自气体光谱模型和碳烟模型,二者合在一起决定了火焰整体的辐射能力。项目过程中如果手头有实验发射率数据,校准一下很有价值。
校准顺序我建议这样:先固定壁面发射率和气体模型,单独调碳烟吸收系数。因为碳烟在明亮火焰里影响最大,而且它跟体积分数的关联相对简单。比较目标可以是火焰轴向某几个点的发射率,或者某区域的平均辐射热流。调整步长不要跨量级猛改,每步改个20%到30%,观察响应方向,通常两三步就能收敛到一个合理区间。
如果没有实验数据,也要做敏感性分析。把碳烟体积分数或吸收系数在合理范围内做上下浮动,看看辐射热流的波动范围有多大。这个波动范围就是你交付结论的不确定度。很遗憾这个习惯在不少工程师那里被省略了,但我强烈建议保留。因为最终业主问“你这个辐射热流到底准不准”的时候,你能给出一个区间而不是一个干巴巴的单值,专业度高下立刻体现出来。
校准过程中还有一类细节值得注意:气体模型里二氧化碳和水蒸气的比例不是固定的。不同燃料燃烧后产物的当量比不同,生成的二氧化碳和水蒸气比例就不同。这些组分的分数会直接影响吸收系数查表结果。校准的时候,如果发现气体贡献部分和实验对不上,先核对燃料的总包反应方程和组分输运结果,再调整模型参数,顺序不能反。
这里特别提醒一句,校准的目的是让模型更贴近物理,而不是让计算结果去“舔”目标值。为了拟合而把吸收系数调到夸张离谱,后患无穷,换个工况就原形毕露。参数调整一定要有物理依据,要么来自实验测量,要么来自同类型的出版数据。
5. 常见问题与排查思路:火焰辐射仿真里的那些坑
火焰辐射仿真做多了,踩过的坑数都数不过来。这里我把最典型的问题整理成速查表,再挑几个重点展开说说,都是我实际遇到过、最终排查解决的。
| 异常现象 | 可能原因 | 优先排查动作 |
|---|---|---|
| 温度场发散或温度爆表 | 辐射与燃烧全耦合、初值不合理 | 冷场起步,先冻结辐射干烧,再逐步放开 |
| 辐射热流整体偏低 | 碳烟模型没开、壁面发射率过小、水蒸气组分漏掉 | 依次检查碳烟开关、壁面发射率、组分设置 |
| 辐射热流异常偏高 | 吸收系数取值过大、壁面发射率虚高 | 核对吸收系数量级,检查材料表面状态 |
| 壁面热流分布出现条纹 | 离散坐标角度数不足 | 提升DO角度离散度从4×4到8×8 |
| 收敛曲线周期性震荡 | 辐射更新频率过快、松弛过大 | 降低辐射场更新频率,减小松弛因子 |
| 总热平衡对不上 | 出入口辐射边界设置不当 | 检查出入口辐射温度初值,核对辐射净热流积分 |
5.1 温度发散:最让人崩溃的启动问题
很多火焰辐射仿真的第一次失败,都栽在启动阶段。火焰燃烧模型本身非线性强,再加上辐射模型以后,能量方程又多了辐射源项,温度解算的耦合路径变长,初值不合理直接爆。我见过一回,某位同学新建算例后直接全模型开启跑,十分钟不到温度冲上物理极限,随后整个流场彻底崩掉。
解决思路非常简单粗暴:顺其自然,分步启动。先不开辐射,用均匀温度初值或者较低的冷场初始,让燃烧模型先建立起稳定的火焰温度场。等温度场出来、残差曲线平稳以后,再打开辐射模型。如果更怕震荡,可以先给辐射源项加权,头几百步权系数从0.1慢慢爬到1.0。这一套组合拳下来,我还没见过平复不了的启动发散。
还有一个细节是初始温度场千万不要设成实际火焰温度的高值,比如一上来就给全区域填3000K。这纯属给自己找麻烦,数值上相当于给守恒方程一个极大的瞬态源项,很容易造成局部温度过冲。我习惯先给一个均匀的初始温度,比如1000K上下,甚至更低,然后让燃烧模型通过化学反应自己把温度抬起来,这样火焰结构会更真实,启动也更稳。
5.2 壁面发射率:最容易忽略的重大嫌疑犯
好好唠唠开头提过的那个教训。某模拟项目里,燃烧温度场算得相当漂亮,模型的碳烟、组分也全都开了,唯独壁面辐射热流比实验低了两成。排查了整整一周,才在一个材质参数页面里发现了元凶:材料库里默认壁面发射率是0.05,那是抛光金属表面的典型值,而实际炉膛内壁早已氧化,发射率应该在0.8左右。0.05和0.8差了一个数量级,辐射换热当然对不上。
从那以后我给自己定了一条检查清单:第一眼看壁面发射率,第二眼看碳烟模型开关,第三眼确认吸收系数数量级。这三处是火焰辐射仿真里最常出问题的三个位置,远远高于其他参数的出错概率。如果你也遇到结果怎么调都偏低的情况,建议先跑一遍这三个选项再考虑其他动作。
壁面发射率不仅影响壁面接收的辐射量,还会影响壁面自身的辐射出射。炉膛这类封闭空间里,壁面之间以及壁面与烟气之间的多次辐射反射累计下来,效果会被放大。所以在热流积分、热应力分析场景里,壁面发射率的取值要按材料的实际表面状态来定,不是随便给一个工程默认值就能过关的。氧化程度、积灰情况、表面粗糙度都会改变它,必要时可以查同行业设备运行条件下的经验值。
5.3 辐射热流的条纹与震荡
壁面热流分布上出现条纹,原因通常在DO模型的角度离散度不够。角度方向数太少,辐射强度场在空间上的分辨率不够,壁面单元之间会出现类似摩尔纹的阶梯状分布。提升方向数能解决,但代价是内存翻倍、计算时间上涨。我的方法是看需要:如果只是看总量和趋势,4×4也能忍;如果要作为热应力分析的边界输入,直接上8×8,不要犹豫。
收敛震荡的问题就更普遍了。辐射和温度互相依赖,温度场动了,辐射源项跟着变;辐射源项变了,又反过来推温度场,每一步都有“过冲”的可能。对付震荡,核心就是降耦合速度:增加辐射场更新间隔,调小辐射源项的松弛因子,必要时开启温度场的亚松弛迭代。有些情况下,光是把辐射更新频率从每3步改成每15步,震荡就彻底消失,代价只是多等几十轮迭代时间,这是非常划算的妥协。
还有一类“隐性震荡”值得专门提一下:其实定性看起来收敛了,但辐射热流在统计值上还有缓慢漂移。这种情况通常是因为固壁温度没有完全平衡,壁面随着辐射吸收热量在慢慢升温。这时候不要急着结束计算,把壁面温度监测曲线拉出来看,等它彻底走平再收工。否则你拿到的热流数据可能还在“半山腰”上,后处理阶段再发现就得重算,代价颇高。
6. 写在最后的个人体会
最后分享一个我一直保留的习惯。每次火焰辐射仿真项目拿到结果,我都会先做一次“三问自查”:壁面发射率是多少?碳烟模型有没有真正参与计算?吸收系数是不是在合理量级?这三个问题回答利索了,才算数据能往外拿。我见过太多项目因为一个边界条件没设对,整个仿真的结论被人一句话问倒,那种场面真的很尴尬。
火焰辐射特性仿真确实有难度,但它难不在某个具体算法有多高深,而在于模型多、参数杂、交叉耦合强,任何一个薄弱环节都可能毁掉整体结果。按我前面讲的判断套路去控制模型选择、按分阶段启动去搞耦合、按热平衡去验收结果,其实这个题目完全可以在可控的时间和算力内拿下。希望这篇能让你少走几段弯路,也欢迎真正在项目里试过的朋友来回踩交流各自的参数心得。