开始之前
在开始本教程之前:
-
下载入门情景模型以跟进。
-
了解如何制造一个简单的燃烧器。
本教程将演示如何使用场景功能。您将学习如何创建场景、编辑对象属性、在不同场景之间禁用对象,以及运行模型中的所有场景
创建场景是 PyroSim 中一项强大的功能,旨在改善用户工作流程。场景允许使用单一几何模型创建和运行多个具有不同火灾和对象配置的模拟。例如,根据 NFPA 101 第 5.5 节设计火灾场景时,上限可能需要 8 个不同场景才能满足合规要求。场景功能减少了建模和模拟这些不同场景所需的时间和精力。
场景功能的优势包括:减少存储大型项目所需的硬盘空间、减少需要管理和更新的 PyroSim 文件数量,以及更容易批量运行模拟。
打开编辑场景对话框

首先,打开本教程顶部链接的 Getting Started – Scenarios.psm 文件。要打开编辑场景对话框,请点击主工具栏上的 Edit Scenarios 图标。图 1 显示了应出现的对话框。
对话框左侧的树状视图显示了该模型中定义的所有场景。默认情况下,只有一个场景被定义,并且在初始打开对话框时自动选中。
对话框右侧顶部列出了所选场景的 Scenario ID,下方给出了所选场景的 Description(描述)。描述文本字段可以编辑,以帮助管理和记录每个场景的具体信息。描述字段下方是 Disabled Objects(已禁用对象)文本框,列出了所选场景中被禁用的所有对象。
创建场景
要创建新场景,只需点击编辑场景对话框中的 New 按钮。对于本示例:
-
- 在编辑场景对话框中点击 New。
- 在新建场景对话框中,将场景名称修改为 Ground Floor。
- 在 Based On(基于)下拉菜单中,选择 Default。
- 点击 OK。
注意:Based On 下拉菜单根据另一个场景的配置设置新场景的初始配置。将创建 Based On 场景的新副本,并将名称更改为提供的名称。
以上步骤将在编辑场景对话框树中创建 Ground Floor 场景。重复步骤 1-4,这次将新场景名称修改为 Second Floor。创建两个新场景后,选择 Default 场景,然后点击 Delete。

现在,树中应只有 Ground Floor 和 Second Floor 两个场景,如图 2 所示。
编辑场景
在编辑场景对话框仍打开的情况下,选择 Ground Floor 场景,然后点击激活。

在 PyroSim 菜单栏中,活动场景下拉菜单位于编辑场景图标旁边,如图 3 所示。场景下拉菜单可用于选择哪个场景处于活动状态,而无需打开编辑场景对话框。
添加场景描述
在 Ground Floor 场景的描述字段中,输入以下描述,然后点击 Apply 保存更改:”此场景为首层走廊火灾,无灭火系统。”
同样,在 Second Floor 场景的描述字段中,输入以下描述,然后点击 保存更改:”此场景为第二层房间火灾,配有简单灭火系统。”
定义场景:禁用对象
场景主要通过选择性禁用来定义。以下步骤演示如何禁用对象以及在场景之间切换:
-
- 在 Floor View 下拉菜单中选择 2nd,以获得场景功能的清晰视觉呈现。
- 在导航树或 3D 窗口中,右键点击标有 Burner Vent – 2nd 的通风口。
- 在弹出菜单中,点击 Disable Object(s)。注意通风口从 3D 窗口中消失,并在导航树中出现删除线。
- 对标有 Thermocouple – 2nd、SD – 2nd 和 Sprinkler – 2nd 的设备重复步骤 2-3。
提示:可以同时选择多个对象,然后使用 CTRL 键同时禁用它们。
禁用第二层对象后,Ground Floor 场景现在与 Second Floor 场景不同。在 Active Scenario 下拉菜单中切换两个场景,可以看到第二层对象在 Second Floor 场景中仍然活动和可见,但在 Ground Floor 场景中不活动和不可见。
要完成两个场景的配置,切换到 Second Floor 场景,禁用 Burner Vent – Ground、SD – Ground 和 Thermocouple – Ground 对象。
查看已禁用对象
要获取两个场景的概览,点击 Edit Scenarios 图标打开编辑场景对话框。在场景树中选择 Ground Floor 场景。已禁用对象文本框现在显示了该场景中所有已禁用的对象。选择 Second Floor 场景将更新列表为仅显示该场景中禁用的对象。
修改场景中的对象属性
目前,场景仅显式追踪对象的启用和禁用。要在场景中修改对象参数,必须复制该对象,在副本中修改参数,然后在场景中禁用原始对象。以下通过调整 Second Floor 场景中火灾的热释放率来演示:
-
- 在 Second Floor 场景处于活动状态时,右键点击 Burner Vent – 2nd。
- 点击 Copy/Move。
- 在平移对话框中,选择 Copy 模式,然后点击 OK。这将复制通风口并创建 Burner Vent – 2nd01。
- 将 Burner Vent – 2nd01 名称修改为 Burner Vent 2000 – 2nd。
- 双击导航树中标有 Fire 的表面,打开编辑表面对话框。注意 HRRPUA(单位面积热释放率)的值。
- 点击 New 创建新表面。
- 将新表面名称修改为 Fire – 2000,并使用 Fire 表面作为模板表面。
- 在新表面的 Heat Release 选项卡中,设置 HRRPUA 为 2000 kW/m2,然后点击 OK。
- 双击 Burner 2000 – 2nd 通风口,将表面设置为新的 Fire – 2000 表面,然后点击 OK。
- 右键点击 Burner Vent – 2nd 通风口,点击 Disable Object(s)。
- 切换到 Ground Floor 场景。
- 右键点击 Burner Vent 2000 – 2nd 通风口,点击 Disable Object(s)。

Second Floor 场景现在有了不同的热释放率。此过程可以复制用于任意数量的其他对象属性,不仅是 HRRPUA 或通风口。
运行场景
现在两个场景已创建并定义,接下来需要运行它们。场景可以像任意其他模型一样单独运行——通过切换 Active Scenario 下拉菜单中的场景,然后以串行、并行或集群模式运行。但这种逐个运行方式在处理大量场景或大型模拟时可能很耗时,而且每次都会覆盖同一个结果文件。这是预览单个场景结果的好方法,但不适合批量运行模拟。
相反,应使用 Export Scenarios 功能来按顺序运行所有场景。
导出场景批处理脚本
-
- 点击菜单栏中的 File 按钮。
- 将鼠标光标悬停在 Export 按钮上,然后在弹出菜单中点击 Export Scenarios。
- 在保存对话框中,选择保存模型和导出批处理脚本的位置,然后点击 OK。
- 模型和脚本保存后(可能需要一分钟),将打开一个新的 Windows 资源管理器窗口,其中包含 run_scenarios-Getting_Started_-_Scenarios.bat 文件。
@SETLOCAL @ECHO off @ECHO [%~n0] Beginning at %time% SET PATH= SET PATH=%PATH%;C:\Program Files\PyroSim 2020\fds SET PATH=%PATH%;C:\Program Files\PyroSim 2020\fds\mpi SET PATH=%PATH%;C:\WINDOWS SET PATH=%PATH%;C:\WINDOWS\system32 SET I_MPI_WAIT_MODE=1 SET OMP_NUM_THREADS=1 SET OMP_STACKSIZE=16M ECHO [%~n0] Scenario "Ground Floor" beginning at %time% PUSHD Getting_Started_-_Scenarios-Ground_Floor runfds.exe mpiexec.exe -n 1 -localonly fds.exe Getting_Started_-_Scenarios.fds POPD ECHO [%~n0] Scenario "Second Floor" beginning at %time% PUSHD Getting_Started_-_Scenarios-Second_Floor runfds.exe mpiexec.exe -n 1 -localonly fds.exe Getting_Started_-_Scenarios.fds POPD ECHO [%~n0] Completed at %time% pause
此批处理脚本将运行 PyroSim 刚刚生成并保存的所有场景。各个 FDS 和其他配置文件位于批处理文件所在目录下的文件夹中。在 Windows 资源管理器中,右键点击批处理脚本并点击 Edit 可查看脚本内容。脚本的前 11 行为 FDS 和 MPI 设置环境变量并打印输出。其余代码逐一进入场景文件夹、运行每个场景,然后返回项目根目录。
默认情况下,批处理文件使用与 PyroSim 的 Run Parallel 命令基本相同的配置按顺序运行每个模拟。它使用 runfds.exe 程序,这是 PyroSim 附带的便利应用程序,以”低于正常”的系统优先级启动 fds.exe——这是为在运行模拟时继续使用 PC 的用户提供的体验优化功能,对无人值守运行几乎没有性能影响。
要运行批处理脚本,请在 Windows 资源管理器中双击批处理脚本,或通过命令行运行它。这将打开一个新的命令提示符窗口并开始模拟。模拟完成后,通过打开 PyroSim 在上述各个场景目录中生成的 *.smv 文件查看 3D 结果。
参考资料
[1] NFPA 101, Life Safety Code, Section 5.5.
-e1750215042767.png)