ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Pyrosim隧道火灾模拟:建模、网格与通风策略实战指南

Pyrosim隧道火灾模拟:建模、网格与通风策略实战指南 把一栋房子直接拉长几千倍它并不会变成隧道——这是我带过很多从建筑防火转到隧道项目的新手之后最想说的一句话。用Pyrosim做隧道火灾模拟的人一开始大半都会踩同一个坑拿着房间火灾的思路堆模型边界条件、通风口、网格全都按老一套来结果算完的流场怎么看都不对劲。隧道火灾的特殊性在于烟气在细长受限空间里沿轴向蔓延控烟效果完全取决于机械通风策略火灾和通风是强耦合的两个过程这正是Pyrosim这类CFD工具适合做深入分析的原因。这篇我用自己的一个公路隧道模拟项目为主线把建模思路、网格划分、通风口处理、多工况对比以及一路踩过的坑完整过一遍尽量让后来的朋友少走弯路。现在的PyroSim已经被Ansys收购了全名叫Ansys PyroSim但做火灾仿真的人还是习惯叫它Pyrosim。它底层用的求解器是NIST的FDSFire Dynamics Simulator本身是一个在大涡模拟框架下的火灾专用CFD工具。隧道火灾模拟里它最大的优势不是画网格多方便而是能同时算清楚“燃烧释放的热量”和“机械通风带来的流场”之间的相互作用——这在做复杂通风策略分析时几乎是不可替代的。1. 隧道火灾与普通房间的物理差异先决定通风策略再动手建模1.1 细长受限空间的烟气运动规律普通房间火灾里烟气从火源上升形成羽流撞到顶棚后发展成顶棚射流蔓延到墙壁后开始向下沉降最后在房间里形成一个相对稳定的热烟气层。这时候我们常用的评估指标是“烟气层界面高度”“能见度”“温度随时间变化”这些。隧道完全是另一种场景。它的横向宽度有限高度一般也就5到8米但纵向可能延伸几百米甚至几千米。烟气在顶棚附近积累后没办法像房间那样向四周均匀扩散只能沿着隧道纵向往两端蔓延。于是核心问题从“烟气层在哪个高度”变成了“烟气前锋跑到了哪里”“烟气在哪个断面沉降到了人员呼吸高度”。这个区别直接影响你的模拟方案。在房间里模拟模型长宽高差不多网格好画、边界简单火源放中间基本就能代表大部分工况。在隧道里你必须提前想清楚烟气会往哪个方向跑、跑多远然后决定模型要建多长、通风怎么布置、测点放在哪。如果这些在建模前没有想清楚后面做出来的结果大概率只是“看起来很专业的错误答案”。1.2 Back-layering隧道火灾里最关键的物理现象隧道纵向通风也就是从一端向另一端吹风是最常见的控烟手段。但这里有一个非常反直觉的现象如果风速不够烟气会逆着通风方向往回跑从火源上游的隧道口冒出来。这种现象叫烟气回流back-layering往回蔓延的那段距离叫回流长度。打个比方你厨房里煎牛排冒了烟抽油烟机风力开到最大烟顺着烟道往上走但如果抽油烟机风量不够烟就会从油烟机边缘翻出来在厨房里四处飘。隧道里的情况就是如此纵向通风相当于那个抽油烟机烟气回流就是翻出来的烟。回流长度和纵向风速之间存在一个临界关系风速从零开始增大回流长度逐渐缩短当风速超过某个值之后回流长度降为零烟气完全被压制在火源下游。这个风速值就是工程里反复提到的临界风速critical velocity。所有复杂通风策略的设计本质上都是在和这个临界风速博弈——要么让整体风速超过临界值要么通过局部排烟改变烟气运动路径让某个断面的有效风速达到控烟要求。1.3 设计火源功率HRR怎么定火灾模拟中热释放速率HRR是最重要的一个输入参数。很多初学者直接随便设一个值或者上网找一篇论文的参数就用了这种做法在隧道项目里会带来很大麻烦。隧道里的火源功率和车辆类型强相关。一辆小轿车完全燃烧HRR大概在5MW左右一辆大型公交车或大巴大概20MW一辆满载货物的重型货车可以到50MW甚至100MW以上。国内城市隧道的防排烟设计一般取20MW或30MW作为设计火灾场景含有危险品运输通道或者长大隧道会用更高的设计值。我的建议是至少做两个HRR场景一个是常规车辆火灾20MW一个是失控货车或危险品场景30MW或者更高。原因很简单——HRR的差异会直接改变临界风速。火源功率越大烟气体积流量越大需要的纵向通风风速越高。如果一个方案只在20MW下验证过换成30MW可能回流就压不住了整个通风策略都要推翻重来。1.4 为什么“通风策略”不是简单边界条件到这里就能回答标题里的“复杂通风策略分析”到底复杂在哪了。如果你只是给隧道入口一个固定速度然后看烟气怎么运动这属于最基础的纵向通风工况不需要什么高级分析。真正复杂的是组合策略纵向通风加上顶部排烟竖井、分段射流风机联动、火灾区段送风下游区段排烟、半横向排烟系统切换等等。这些策略里通风口的位置、排烟量的大小、不同风机启停的时序都会和火灾烟气产生复杂的耦合效应。举个例子顶部排烟口如果布置在火源正上方高温烟气会被直接吸走火源下游烟气量骤减但火源上游的烟气回流问题并没有得到解决如果排烟口布置在火源下游40米处配合适当的纵向风速烟气会被“推”到排烟口附近再被抽走整个隧道的控烟效果都会好很多。这种空间位置和通风量之间的优化只有通过CFD模拟才能看得清楚。这也是Pyrosim在隧道项目中真正的价值所在——它能把流动、燃烧、传热放在同一个物理模型里求解而不是像通风网络软件那样把火灾当作一个简单的热源边界。2. 模型简化与网格划分1200米隧道怎么算得动还算得准2.1 隧道几何简化不要完全照搬CAD刚开始做隧道模拟的人最大的误区是想把隧道CAD图纸完完整整搬进Pyrosim里。弧形拱顶、装饰板、电缆桥架、排水沟、检修道、信号灯恨不得每一个细节都画出来。这种精神值得肯定但完全没必要。FDS这种火灾模拟工具本质上解决的是烟气运动和传热问题不是结构细节问题。影响烟气蔓延的主要几何参数是隧道净高、宽度、断面形状和纵向坡度。装饰板、管线桥架这些细碎结构放进模型里不仅增加网格负担还会在LES计算中产生大量不必要的湍流伪影。我的习惯是横断面用简化的马蹄形或矩形把净高和净宽保证准确。如果隧道顶棚有明显弧形建议做成上圆下方的简化断面而不是直接压平因为顶部弧度会影响烟气在顶棚下方的聚集形态和贴壁射流的发展。纵向坡度在隧道火灾中影响很大特别是坡度和通风方向一致或相反时浮力效应会显著改变烟气运动路径这个必须在模型里体现出来。2.2 D*判据网格尺寸到底定多细网格尺寸是火灾模拟里决定成败的一个参数也是最容易出错的地方。FDS官方手册里给了网格分辨率判据用火源特征直径D*来评估D* [Q / (ρ∞·Cp·T∞·√g)]^(2/5)其中Q是火源功率Wρ∞是环境空气密度kg/m³Cp是空气比热容J/kg·KT∞是环境温度Kg是重力加速度m/s²。以20MW火源为例代入环境参数算出来D*大概3.2米30MW大概3.8米。FDS推荐网格尺寸取D*/4到D*/16之间也就是20MW场景下网格大概在0.2米到0.8米之间。网格太粗火源区的温度场会被过度耗散烟气温度偏低、回流长度偏小、临界风速被低估网格太细计算量成倍增加实际项目根本跑不动。2.3 多区域网格设计火源附近加密远端粗化一条1200米长的隧道如果全程都用0.25米网格算一下网格数量1200米除以0.25就是4800个断面如果10米宽、8米高就是40乘32总共4800乘40乘32614万个网格。FDS跑这个规模用一台8核工作站可能要跑一个月。这显然不现实。所以必须做多区域网格MESH。我的做法是火源区火源上游30米到下游80米网格加密到0.25米或0.3米这个区域是燃烧和烟气生成的核心区分辨率必须保证。过渡区火源区两侧各50到100米网格放大到0.5米。远端区剩余隧道段网格放到0.75米或1米。这样网格总数可以控制在100万到200万之间计算时间压缩到几天之内。关键点在于相邻MESH之间的网格尺寸比例尽量保持整数倍关系比如0.25米区域旁边接0.5米区域这样Pyrosim在做网格间插值的时候误差更小。如果比例是1:1.5或者1:3这种非整数倍界面上会产生不必要的数值噪声。2.4 计算域截断和OPEN边界如果你关心的是火源附近到下游300米范围内的烟气温度和CO浓度其实不需要把1200米隧道全部建出来。截取“火源上游100米下游300米”共400米的隧道段两端用OPEN边界代表与大气连通的开敞空间可以大幅减少计算量。OPEN边界在FDS里本质是压力边界允许流量自由进出。但这里有一个重要的注意事项截断位置不能离火源太近。如果火源离下游OPEN边界只有20米烟气还没来得及充分发展和衰减就到了边界速度场会被压力边界“吸”过去烟气层分布会被严重扭曲。我实际测试过下游至少保留80到100米的缓冲段模拟结果才比较稳定。上游缓冲区可以短一些30到50米基本够用。如果你模拟的是真实隧道且两端有大型风机段或防火门就不能简单用OPEN需要把实际的边界构造建出来或者在边界处设置对应的通风量。3. Pyrosim实操材质、火源、通风口和竖井怎么搭才不出幺蛾子3.1 隧道壁面与路基表面设置隧道壁面材料通常用混凝土。Pyrosim自带混凝土材料热物性参数大概是导热系数1.2到2.0 W/(m·K)比热容900到1000 J/(kg·K)。如果没有特殊要求直接用内置的CONCRETE即可。但要注意设置合理的厚度一般0.3到0.5米就够太薄了热传导算不准太厚了浪费网格。路面和壁面不一样我不建议设成混凝土。隧道火灾中很多时候沥青路面会参与燃烧但除非你的研究目的是分析路面燃烧对火灾发展的影响否则不要在模型里加入路面燃烧——那需要额外的热解模型结果会变得极难控制。更稳妥的做法是把路面设为INERT惰性表面只参与热量交换不参与燃烧。很多新手容易忽略表面设置对结果的影响。壁面是INERT还是CONCRETE差值比想象中大得多。INERT表面不吸收热量火灾烟气温度偏高浮力驱动更强烟气前锋跑得更远回流长度也可能被高估CONCRETE表面会吸收一部分热量烟气层温度下降回流长度缩短。隧道模拟里一定要用有热惯性的真实材料不能用默认的INERT偷懒。3.2 火源设置HRRPUA与t²火曲线Pyrosim里设置火源通常是在一个矩形表面上定义燃烧表面。需要设置两个关键参数HRRPUA单位面积热释放速率和火源面积两者相乘就是总HRR。例如设计功率30MW燃料面积12平方米HRRPUA就是30000kW/12m²2500kW/m²。实际操作中先锁定额定总HRR再调整燃料面积这样参数耦合关系清晰改起来方便。另一个容易被忽略的设置是火灾增长曲线。真实火灾不是瞬间达到最大功率的都有一个增长过程。工程上常用t²火模型描述分慢速、中等、快速、超快速四类。NFPA给出的参数是慢速燃烧增长系数0.0029 kW/s²中等0.0117 kW/s²快速0.0469 kW/s²超快速0.1876 kW/s²。在Pyrosim中你可以用RAMP曲线定义HRR随时间的变化。比如一个快速增长的30MW火源可以设置T0时F0T60秒时F0.5T120秒时F1.0然后维持稳定。注意这个RAMP必须仔细设置否则计算结果完全不可信。我见过不少案例就是忘了设Ramp Up火源一启动就是30MW顶棚温度瞬间飙升烟气前锋速度异常快整个控烟策略评估全部失真。CO产率和碳烟产率也需要确认。在FDS的化学反应里CO产率默认值通常偏低如果你要分析CO浓度对应的安全防护距离需要根据燃料类型调整CO yield到0.02到0.1 kg/kg左右碳烟产率soot yield对能见度计算影响很大一般设0.1左右。3.3 通风口实现的两种方式隧道纵向通风在Pyrosim里有两种常见实现方法。方法一在隧道入口断面设置一个Supply Surface直接给一个速度边界。比如设置速度2.5m/s正对隧道内部吹风。这种方式简单直接适合基础纵向通风工况。方法二用一个小Box模拟射流风机段把Box的一个面设置为风机出口面用Vent或速度边界定义。这样做的好处是可以同时布置多个风机分别启停模拟分组联动控制策略。顶部排烟竖井的做法类似在顶棚开一个开口设为Exhaust Vent需要定义排烟量。注意这里排烟量是体积流量Pyrosim里用面速度和面积的乘积来控制。比如一个2米乘4米的排烟口要排50m³/s的烟气面速度就是50/86.25m/s。这个风速不要设得太高否则局部抽吸速度过大会影响烟气的自然分层。有一点特别想提醒排烟口的位置不要放在火源正上方。这个错误太常见了之前我也犯过。排烟口正对火源会把刚产生的高温烟气直接抽走看起来下游很“干净”但火源上游的烟气回流完全没有被解决而且排烟系统实际抽走的是核心燃烧产物而不是沿隧道蔓延的烟气这种“短路”效应会让模拟结果严重偏离工程实际。排烟口放在火源下游20到40米处通常更合理。3.4 测量与输出布置建模阶段就要规划好结果输出等算完再回去补测点就晚了。我习惯在顶棚下方0.1到0.5米处布置一排热电偶DEVC沿隧道纵向每5到10米一个用来测量烟气到达时间和峰值温度。这排热电偶对判断烟气前锋位置非常有用。在人员呼吸高度比如距地面2米处也布置一排热电偶和CO浓度测点这是安全评估的核心数据。如果有需要还可以在重点断面布置速度测点用来分析通风风速的实际分布。切片和等值面也很重要。在隧道纵截面设置温度和CO切片可以直观看到烟气的分层和蔓延形态在顶棚下方一定高度设置水平切片能看烟气的水平扩散范围。输出频率不用太高每秒一帧或每两秒一帧已经足够分析用太高了结果文件会非常大。4. 通风策略分析实测多个工况跑一遍怎么判断临界风速和最优方案4.1 工况矩阵设计示例设计通风策略模拟时我习惯先跑单因素工况再做组合工况。以30MW火源、隧道高度7米为例工况纵向通风风速顶部排烟量目的Case A0 m/s无自然通风基准Case B1.5 m/s无低风速控烟效果Case C2.5 m/s无中等风速控烟效果Case D3.5 m/s无高风速逼近临界风速Case E2.5 m/s50 m³/s纵向通风排烟组合Case F1.5 m/s100 m³/s低风速大排烟量组合每个工况模拟物理时间一般600秒到1200秒。600秒基本可以等火灾发展到稳定阶段1200秒可以看到更长时间的烟气蔓延趋势。在硬件条件有限的情况下可以先跑600秒看趋势稳定后决定是否延长。这六个工况全部跑完按网格规模不同单机可能需要一两周。实际操作中建议先用较粗网格做预跑把明显不合理的工况筛掉再对最关注的Case C和Case E用细网格精算。4.2 后处理里怎么定位烟气前锋和回流长度判断烟气前锋位置很多人第一反应是用温度切片。这当然可以但温度前锋和可见烟气前锋并不完全一致——热烟气前锋先到烟气颗粒到达会稍晚。如果你要分析人员疏散场景下的烟气威胁看CO浓度或能见度更准确。我的经验是在隧道纵截面输出CO体积分数切片用0.01%或0.05%的等值面ISO-Surface来判断烟气前锋位置。这个阈值比较好用因为隧道内CO背景浓度几乎为零一旦出现明显升高就是烟气到了。同时用Soot Density或Visibility输出辅助判断能见度低于10米的区域就是人员无法安全通行的区域。顶棚下方的热电偶温度曲线也可以辅助定位。烟气前锋到达某一点时顶棚温度会有一个明显的“台阶式”跳升从环境温度升到几十度甚至上百度。把这个温度突变点的位置和切片结果交叉验证基本可以确定烟气前锋位置。回流长度也是一样的思路在火源上游布置若干热电偶和CO测点看哪些位置出现了温度升高或CO浓度升高。最上游那个有信号的点与火源之间的距离就是回流长度。4.3 用数据逼近临界风速跑完Case B、C、D后把不同风速下的回流长度整理出来你会得到类似这样的趋势1.5m/s时回流长度约60米2.5m/s时回流长度约10米3.5m/s时基本看不到回流烟气全部压向火源下游。那么临界风速就在2.5到3.5m/s之间。这时可以用经验公式做交叉验证。工程上常用Oka和Atkinson的无量纲公式Vc* 0.40 × (Q*)^(1/3)大功率区其中Vc* Vc/√(gH)Q* Q/(ρ∞·Cp·T∞·g^(1/2)·H^(5/2))。用30MW、高7米代入计算得到临界风速大约3.2m/s和模拟的区间吻合得不错。如果模拟值明显偏离经验公式比如超过30%的偏差就要回头检查网格、边界和通风口设置是否有问题。需要指出的是FDS模拟中烟气前锋会有一定湍流脉动回流长度不是一个完全稳定的值会出现前后波动。所以建议把“回流长度小于5米”视作已有效抑制回流而不是死抠“必须为零”。4.4 复杂组合策略的对比结论简单纵向通风的优势是系统简单、控制逻辑清晰但要注意风速设得越高烟气被推向下游的速度越快下游烟气蔓延范围也越大。如果你只有纵向通风没有下游排烟措施大量高温烟气会一直蔓延到隧道出口出口附近人员疏散条件会非常恶劣。加顶部排烟后情况明显改善。我实测的Case E纵向2.5m/s排烟50m³/s相比Case C纵向2.5m/s无排烟虽然火源附近温度分布变化不大但下游50米之外的顶棚温度和CO浓度显著降低。烟气在排烟口处被大量抽走实际蔓延长度缩短了将近一半。更有意思的是Case F把纵向风速降到1.5m/s但把顶部排烟加大到100m³/s下游控烟效果反而比Case C更好。这说明在组合策略里纵向风速不一定必须超过临界风速只要排烟口的位置和排烟量配置合理烟气可以在到达危险距离之前被有效收集。这种“以排烟为主、送风为辅”的思路在长大隧道里往往比单纯堆高纵向风速更节能、更有效。当然Case F有一个前提排烟口必须在火源下游适当位置。如果排烟口布置不合理风速不足时烟气照样会在火源上游形成回流。所以组合策略设计时要重点看两个指标火源上游是否出现回流、火源下游多少距离处烟气沉降到呼吸高度。5. 最容易翻车的五个细节网格、边界、RAMP、短路和稳定性5.1 网格太粗导致火源区“燃烧不起来”有个项目里我把远端网格放到1米想着能大幅加快计算速度结果火源上游的回流长度比对标文献少了差不多30%。问题出在火源区附近网格确实太粗了LES的分辨率不足以解析火羽流的卷吸结构燃烧产生的热烟气被数值耗散抹平浮力驱动变弱。后来火源区加密到0.3米远区保持1米回流长度明显回升结果和理论公式就对得上了。网格对隧道火灾的影响不是均匀的——火源周边30到50米是最敏感的区域这里的网格必须保证分辨率远区可以粗一些但过渡不能太突兀。5.2 OPEN边界不是万能出口缓冲区要留够OPEN边界是最容易用错的设置。有次我为了省网格把火源直接放在距离下游OPEN边界30米的位置结果下游烟气层很快就被边界“吸”走了温度场出现了一个不正常的低压区烟气蔓延距离被严重低估。老工程师的经验是下游缓冲区至少保留80米最好是100米以上。如果你只关心火源附近的结果可以截短模型但截断处的流场边界会带来一定的误差需要在结果判读时留出余量。上游缓冲区30到50米通常够用因为烟气正常情况不会逆流太远但如果你的模型风速很低、回流很强上游缓冲区也要加长。5.3 RAMP曲线设置错误导致HRR异常Ramp Up设置错误很难发现因为Pyrosim不会报错。比如有一个案例里我设了RAMP但坐标写反了——F先设为1.0后续才是0.0相当于火源功率先峰值后归零整个模拟场景完全失真。正确的做法是建完模型后先运行一个30秒钟的快速测试检查火源面的热释放速率输出曲线是否符合预期。Pyrosim里可以输出HRR历史曲线确保火源功率按照设定的t²曲线增长达到设计值后保持稳定。这一步花不了多少时间但能避免白跑几天的坑。5.4 排烟口离火源太近引发短路效应前面提过排烟口放在火源正上方会形成短路。这里再强调一下隧道顶部排烟的“有效控制半径”是有限的烟气从火源上升到顶棚后需要一定水平距离才能充分发展。如果排烟口直接放在火源上方抽走的基本是火羽流中心的高温核心烟气对下游的烟气蔓延控制帮助很小。短路的另一个标志是排烟口温度异常高超过500℃甚至更高而下游测点温度不高。这说明排烟口在“抢”火源核心区的烟气。正常的排烟口温度应该低于火羽流核心温度在300到500℃区间取决于排烟量和混入冷空气的多少。5.5 计算发散/负密度先查CFL再查边界FDS偶尔会报出负密度或者NaN导致计算中止。最常见的原因有几种网格长宽比太大比如某个方向网格1米另一个方向0.2米导致CFL条件难以满足通风口速度突变太大初始就有剧烈扰动边界面的法线方向设反了导致流体被抽出计算域而不是流入。排查顺序上我先看CFL曲线如果时间步在崩溃前一直处于临界状态基本就是网格比例问题。如果CFL正常再看通风口设置和边界法线方向。Pyrosim里边界Surface的方向有明确指示箭头建完模型后逐面检查一遍比出错后再排查省时得多。还有一个小技巧即使一切设置正确建议在通风口启动时加一个Ramp。让风速从0逐步提升到设计值而不是一开局就以全速吹风。这样能显著减少初始压力波和CFL风险计算结果也更接近实际风机的启动过程。我现在的习惯是风机提速时间设30到60秒既保证稳定又不影响后续分析。做隧道火灾模拟这些年最大的体会是这类项目里90%的问题不是软件不会操作而是物理概念不清晰就急着建模。多花一点时间在“烟气往哪跑、通风怎么控、网格够不够细”这几个问题上远比纠结某个按钮在哪来得重要。希望这篇能帮你在做Pyrosim隧道模拟时少走一些我当年走过的弯路。
返回列表