跳转到内容

工程师的火灾模拟/FDS/输出

来自维基教科书,开放世界中的开放书籍

最后,用户规定输出量(DEVC、SLCF、BNDF、ISOF)。

所有输出量必须在计算开始时指定。在大多数情况下,如果信息没有从一开始就指定,则无法在计算结束后检索信息。

规定输出

[编辑 | 编辑源代码]

FDS 计算每个离散时间步长内每个数值网格单元的温度、密度、压力、速度和化学成分。通常有数十万到数百万个网格单元,以及数千到数十万个时间步长。此外,FDS 计算固体表面的温度、热通量、质量损失率以及其他各种量。

因此,用户必须仔细选择要保存的数据,就像在设计实际实验时一样。即使只保存了计算信息的极小一部分,输出通常也包含相当大的数据文件(可能有多个 G 字节!)。

请记住,所有输出量必须在计算开始时指定。在开始计算之前,仔细考虑应保存哪些信息。

气相的典型输出量包括

• 气体温度;

• 气体速度;

• 气体物质浓度(水蒸气、CO2、CO、N2);

• 烟雾浓度和能见度估算;

• 压力;

• 单位体积的热释放率;

• 混合分数(或空燃比);

• 气体密度;

• 单位体积的水滴质量。

在固体表面,FDS 预测与气相和固相之间的能量平衡相关的其他量,包括

• 表面和内部温度;

• 热通量,包括辐射和对流;

• 燃烧速率;

• 单位面积的水滴质量。

程序记录的全局量包括

• 总热释放率 (HRR)热释放率 (HRR);

• 洒水器和探测器激活时间;

• 通过开口或固体的质量和能量通量。

空间中单个点的各种量的时程历史或全局量(如火灾的热释放率 (HRR))保存在简单的逗号分隔文本文件中,可以使用电子表格程序(如 Openoffice.org Calc 或 Microsoft Excel)绘制这些文件。

大多数场或表面数据使用 Smokeview 进行可视化。FDS 和 Smokeview 协同使用来模拟和可视化火灾现象。Smokeview 通过显示动画示踪粒子流、计算气体变量的动画等值线切片和动画表面数据来执行此可视化。Smokeview 还在场景中任何地方的固定时间点显示等值线和固定数据的矢量图。

输出控制参数,DUMP

[编辑 | 编辑源代码]

命名列表组 DUMP 包含控制输出文件写入速率的参数,以及与输出文件相关的各种其他全局参数。

例如,NFRAMES 参数是每次计算的输出转储次数。默认值为 1000。设备数据、切片数据、粒子数据、等值面数据、3D 烟雾数据、边界数据、固相轮廓数据和控制函数数据每 (T_END - T_BEGIN) / NFRAMES 秒保存一次,除非另有说明。

下表总结了一些 DUMP 参数

参数 类型 描述 单位 默认值
NFRAMES 整数 每次计算的输出转储次数 1000

点测量设备,DEVC

[编辑 | 编辑源代码]

用于控制逻辑的相同设备 DEVC(参见第 [cha:Devices-and-control-logic] 章)用于保存空间中单个点处的给定量,以便可以将此量绘制为时间的函数,例如热电偶温度测量。

规定的 QUANTITY 记录为名为 mycase_devc.csv 的输出文件中的列。这种类型的文件可以导入任何电子表格程序。

示例

s °C °C
FDS 时间 TC_A01 TC_A02
0.00E+000 2.00E+001 2.00E+001
5.00E+000 2.98E+001 2.77E+001
1.00E+001 2.35E+001 2.26E+001

记录气相量

[编辑 | 编辑源代码]

例如,如果您只想记录给定点处温度的时程历史,请添加

 &DEVC XYZ=6.7,2.9,2.1, QUANTITY='TEMPERATURE', ID='T-1' /

将在输出文件 mycase_devc.csv 中添加一列,标签为 T-1。

FDS 报告在点 XYZ 所在单元格中计算的 QUANTITY 的值。

记录固相量

[编辑 | 编辑源代码]

在规定固相量时,请确保将探头放置在固体表面。由于网格并不总是与输入障碍物位置对齐,因此并不总是很明显固体表面在哪里。

为了帮助 FDS 找到合适的表面,请使用参数 IOR(方向索引)建议面的正确方向。

在某些情况下,FDS 仍然无法确定要指定哪个固体表面,在这种情况下,诊断输出文件中会出现错误消息。重新定位探头并重试。例如,该行

 &DEVC XYZ=0.7,0.9,2.1, QUANTITY='WALL TEMPERATURE',
     IOR=-2, ID='wt1' /

指定面向负 y 方向的墙壁的表面温度。

矢量场
流场的切片

记录积分量

[编辑 | 编辑源代码]

除了点测量之外,DEVC 组还可以用于报告积分量。例如,您可能想知道门或窗户的质量流出量。要报告此内容,请添加该行

 &DEVC XB=0.3,0.5,2.1,2.5,3.0,3.0,
     QUANTITY='MASS FLOW', ID='mf1' /

请注意,在这种情况下,指定的是面而不是点。

QUANTITY='HRR'热释放率 (HRR) 可用于计算域子集内的总热释放率。在这种情况下,六元组 XB 应定义体积而不是面。

请记住,避免跨越多个网格边界的表面或体积:FDS 必须决定在积分中使用哪个网格。

动画平面切片,SLCF

[编辑 | 编辑源代码]

SLCF 名称列表组参数允许您记录多个点的各种气相量。切片是指整个域的子集。它可以是线、面或体,具体取决于 XB 的值。

如果给定的 SLCF 线具有属性 VECTOR=.TRUE,则可以在 Smokeview 中创建动画向量。如果两个 SLCF 条目位于同一平面上,则只需其中一条线具有 VECTOR=.TRUE。否则,将创建冗余的速率分量切片集。

例如,该行

 &SLCF PBX=0.8, QUANTITY='TEMPERATURE', VECTOR=.TRUE. /

记录了 x~=~0.8 平面上的温度和动画速度矢量

下表总结了一些 SLCF 参数

参数 类型 描述 单位 默认值
QUANTITY 字符串 要输出的量的名称
VECTOR 逻辑 包含流向量 .FALSE.
XB(6) 实数 m
PBX, PBY, PBZ 实数 平面 m

动画边界量,BNDF

[编辑 | 编辑源代码]

BNDF 名称列表组参数允许您记录所有固体障碍物上的表面量。与 SLCF 组一样,每个量都用单独的 BNDF 行规定。但是,不需要指定物理坐标,只需指定 QUANTITY。

例如,该行

 &BNDF QUANTITY='WALL_TEMPERATURE' /

记录所有固体障碍物面的 WALL_TEMPERATURE。

对于某些输出量,需要通过 PROP 名称列表组指定其他参数。在这种情况下,将字符串 PROP_ID 添加到 BNDF 行,以告诉 FDS 在哪里可以找到必要的额外信息。

请注意,BNDF 文件可能会变得非常大,因此在规定时间间隔时要小心。

减少输出文件大小的一种方法是关闭所需障碍物上边界信息的记录。在任何给定的 OBST 行上,如果包含字符串 BNDF_OBST=.FALSE.,则该障碍物不会被考虑用于边界量的输出。要关闭所有边界记录,请在 MISC 行上设置 BNDF_DEFAULT=.FALSE. 然后,可以使用 BNDF_OBST=.TRUE. 在相应的 OBST 行上重新打开各个障碍物。可以使用 BNDF_FACE(IOR)=.TRUE. 控制给定障碍物的各个面,其中 IOR 是方向的索引。

场切片

下表总结了一些 BNDF 参数

参数 类型 描述 单位 默认值
QUANTITY 字符串 要输出的量的名称

动画等值面,ISOF

[编辑 | 编辑源代码]

ISOF 名称列表组用于指定气相标量量的输出,作为三维动画等值线。例如,300°C 温度等值面显示气体温度为 300°C 的位置。可以通过以下行保存三个不同的温度值

 &ISOF QUANTITY='TEMPERATURE',
     VALUE(1)=50., VALUE(2)=200., VALUE(3)=500. /

其中这些值以 °C 为单位。

等值面

任何气相量都可以通过等值面进行动画处理,但要小心。要渲染等值面,必须在每个输出时间步长在每个网格单元中计算所需的量。对于像 TEMPERATURE 这样的量,这不是问题,因为 FDS 会计算它并保存它。但是,烟尘密度或氧气需求在每个网格单元中计算时会消耗大量时间。

下表总结了一些 ISOF 参数

参数 类型 描述 单位 默认值
QUANTITY 字符串 要输出的量的名称
VALUE(3) 实数 等值线值

逼真的烟雾和火焰

[编辑 | 编辑源代码]

当您使用默认混合分数燃烧模型进行火灾模拟时,FDS 会自动创建两个输出文件,这些文件由 Smokeview 渲染成逼真的烟雾和火焰。

使用 FDS 进行火灾模拟的简单示例

默认情况下,输出量烟尘的 MASS FRACTION 和 HRRPUV(每单位体积的热释放率)用于可视化。

热释放率 (HRR)

[编辑 | 编辑源代码]

与总能量预算相关的量在逗号分隔文件 mycase_hrr.csv 中报告。此文件会自动生成。

该文件包含六列。第一列包含以秒为单位的时间。第二列到第五列包含积分能量增益和损失,所有单位均为 kW。第二列包含总热释放率,第三列包含对所有边界(固体和开放)的辐射热损失,第四列包含对边界的对流和辐射热损失(即流出或流入域的能量),第五列包含传导到固体表面的能量。第六列包含以 kg/s 为单位的总燃料燃烧率。它仅作为对总热释放率的检查。

示例

s kW
FDS_HRR_Time HRR
0.00E+000 0.00E+000
5.00E+000 2.04E+002
1.00E+001 2.16E+002

能见度

[编辑 | 编辑源代码]

如果您使用混合分数方法进行火灾计算,则烟尘会与所有其他主要燃烧产物一起跟踪。

通过烟尘的距离 L 传递的单色光 I 的强度根据以下公式衰减

光消光系数光消光系数 K,是烟尘颗粒密度,和质量比消光系数 Km 的乘积。与燃料相关的质量消光系数

如 [Mulholland 2002] 所示,可以通过使用以下公式估算烟尘的能见度

其中 C 能见度系数 是一个无量纲常数,表征通过烟尘查看的物体类型。

由于 K 随域中的点而变化,因为它取决于烟尘密度,因此能见度 S 也随之变化。

请记住,FDS 只能跟踪其生产率和成分已指定的烟尘。预测两者都超出了当前版本模型的能力。三个参数控制烟尘的产生和能见度;每个参数都在 REAC 行上输入

• SOOT_YIELD 是转换为烟尘的燃料质量的比例。

• MASS_EXTINCTION_COEFFICIENT,即方程 [eq:Km] 中的 Km。默认值为 8700 m2/kg,这是木头和塑料火焰燃烧的推荐值。

• VISIBILITY_FACTOR,即方程 [eq:S] 中的 C。对于发光信号 C=8,对于反光信号 C=3。默认情况下 C 为 3。

能见度 S 通过 QUANTITY 关键字 VISIBILITY 输出。

上层和下层

[编辑 | 编辑源代码]

消防工程师通常需要估计燃烧隔间内热烟上层和较冷下层界面位置。相对简单的火灾模型,通常被称为双区模型区域模型,直接计算该量,以及上下层的平均温度。在像 FDS 这样的计算流体动力学 (CFD) 模型中,不存在两个不同的区域,而是一个连续的温度剖面。然而,已经开发了一些方法来估计连续垂直温度剖面上的层高和平均温度。

可以使用输入文件中的 DEVC 行指定 LAYER HEIGHT、UPPER TEMPERATURE 和 LOWER TEMPERATURE 量。例如,条目

 &DEVC XB=2.0,2.0,3.0,3.0,0.0,3.0,
     QUANTITY='LAYER HEIGHT', ID='whatever' /

在 z~=~0 到 z~=~3 之间生成 x~=~2 和 y~=~3 处烟层高度的时间历程。如果使用多个网格,则垂直路径不能跨越网格边界。

热通量和热辐射

[编辑 | 编辑源代码]

有各种方法可以记录固体边界处的热通量。如果你想记录到表面的净热通量,q对流 + q辐射,使用 QUANTITY='HEAT FLUX'。各个分量,净对流热通量和辐射热通量,分别是 CONVECTIVE HEAT FLUX 和 RADIATIVE HEAT FLUX。

如果你想将预测的热通量与测量结果进行比较,你通常需要使用 GAUGE HEAT FLUX。NET HEAT FLUX 和 GAUGE HEAT FLUX 之间的区别在于,前者是能量被固体表面吸收的速率;后者是指如果表面是冷的或使用 GAUGE_TEMPERATURE 指定的某个温度,将被吸收的能量量。

所有上述热通量输出量都在固体表面定义。

与结构模型接口

[编辑 | 编辑源代码]

FDS 为每个标记气体和固体之间界面的边界单元求解一维热传导方程,假设提供了材料层的材料特性。结果可以通过 DEVC 或 BNDF 输出传输到其他模型,这些模型预测墙壁或结构的机械响应。对于许多应用,一维热传导方程的解是足够的,但在固体内部横向热传导显着的情况下,可以采用另一种方法。FDS 包含绝热表面温度 (AST)绝热表面温度 (AST) 的计算,该量代表到固体表面的热通量,遵循 [Wickstrom 2007] 提出的想法。

显然,将信息传递给更详细的模型的目的是获得比 FDS 可以提供的更好的固体温度预测(并最终获得其机械响应)。

可视化拉格朗日粒子

[编辑 | 编辑源代码]

示踪粒子可以从通风口或障碍物中注入流场,如第 [sec:Injecting-Lagrangian-particles] 节所示,然后在 Smokeview 中观察。也可以绘制轨迹线。

常用的输出量

[编辑 | 编辑源代码]

下表显示了常用的输出量的整理列表。列“NameList”详细说明了可以在哪里指定相应的 QUANTITY:B 边界文件 (BNDF)、D 设备 (DEVC)、I 等值面文件 (ISOF)、S 切片文件 (SLCF)。

QUANTITY 描述 单位 NameList
NET HEAT FLUX 固体边界处的辐射热通量和对流热通量的总和 kW/m2 B,D
RADIATIVE HEAT FLUX 固体边界处的辐射热通量 kW/m2 B,D
CONVECTIVE HEAT FLUX 固体边界处的对流热通量 kW/m2 B,D
MASS FLUX* 指定物质在固体表面的质量通量 kg/m2/s B,D
MASS FRACTION* 指定物质的质量分数 kg/kg D,I,S
VOLUME FRACTION* 指定物质的体积分数 mol/mol D,I,S
LAYER HEIGHT 估计燃烧隔间内热烟上层和较冷下层界面位置的高度 m D
UPPER TEMPERATURE 上层温度 °C D
LOWER TEMPERATURE 下层温度 °C D
MASS FLOW 计算通过给定平面区域的集成质量流量。 kg/s D
HEAT FLOW 计算通过给定平面区域的集成热流量。 kJ/s D
VOLUME FLOW 计算通过给定平面区域的集成体积流量。 m3/s D
VISIBILITY 烟雾中的能见度长度 m D,I,S
SOOT VOLUME FRACTION 烟灰体积分数 mol/mol D,I,S
FED 基于 CO、CO2 和 O2 的有效分数剂量,如 [Purser 2002] 所提出的 D
TEMPERATURE 气体温度 °C D,I,S
THERMOCOUPLE 模拟热电偶的温度,通常接近气体温度。 °C D
WALL TEMPERATURE 固体界面温度。 °C B,D
ADIABATIC SURFACE TEMPERATURE 参见第 124 页第 14.12 节。 °C B,D
VELOCITY 气相速度 m/s D,I,S
NORMAL VELOCITY 气相壁面法向速度 m/s D,B
WALL CLOCK TIME 经过的挂钟时间 s D

∗这些量需要使用 SPEC_ID 指定气体物质。

以下是一些输出量的示例

 &DEVC XYZ=0.1,0,2.39, QUANTITY='THERMOCOUPLE',
     ID='2.4' / 
 &DEVC XB=0.1,0.1,0,0,0.0,2.4,
     QUANTITY='LAYER HEIGHT', ID='layer_h' / 
 &ISOF QUANTITY='TEMPERATURE', VALUE(1)=60.0 /
 &SLCF PBY= -3., QUANTITY='TEMPERATURE',
     VECTOR=.TRUE. /
 &BNDF QUANTITY='ADIABATIC SURFACE TEMPERATURE' /

有些输出量需要通过 SPEC_ID 指定物质名称,例如 MASS FRACTION 量。SPEC_ID 可以选择在执行混合分数计算时隐式定义的一种物质(燃料、氧气、氮气、水蒸气、二氧化碳、一氧化碳、氢气、烟灰、其他),或通过 SPEC 行定义的额外气体物质

 &SLCF PBX= 0.1, QUANTITY='VOLUME FRACTION',
     SPEC_ID='carbon dioxide' /
     volume fraction of carbon dioxide
     issued from mixture fraction model
     gas phase combustion model

&SLCF PBX= 0.1, QUANTITY='VOLUME FRACTION',
     SPEC_ID='CARBON DIOXIDE' /
     volume fraction of carbon dioxide
     defined in a SPEC namelist group
     and injected separately in the flow domain
华夏公益教科书