热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

fd和fdsFDS学习笔记(一)FDS中的基本概念

本文主要介绍关于fds的知识点,对【FDS学习笔记(一)FDS中的基本概念】和【fd和fds】有兴趣的朋友可以看下由【天将明bright】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【FDS,

本文主要介绍关于fds的知识点,对【FDS学习笔记(一)FDS中的基本概念】和【fd和fds】有兴趣的朋友可以看下由【天将明bright】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【FDS,火灾,数值模拟】相关技术问题。

fd和fds

FDS是火灾研究中常用的数值模拟软件,本文是FDS系统学习记录笔记。

本文学习过程参考FDS官方文档(NIST):FDS User Guide

FDS github地址:GitHub - firemodels/fds: Fire Dynamics Simulator

在github地址中可以获取FDS和SMV软件,以及相应的文档。

这一部分主要涉及FDS的基本概念:

一、在fds使用之前的相关概念

? ? ? ?1. FDS的输入文件是用文本输入的,在这里建议使用第三方图形用户界面(GUI)建立相应的火灾构筑物模型,可以使用PyroSim之类的进行可视化建模。

? ? ? ? 2.FDS可以在一台计算机上运行,可以使用单台计算机的一个或多个核,也可以在多台计算机上运行。

? ? ? ? 3.OpenMP:OpenMP可以用来管理计算过程中使用电脑内核数量,默认情况下,FDS将在一台计算机上使用大约一半的可用内核。

????????4.要更改FDS模拟可用的核数,可以设置一个名为OMP_NUM_THREADS的变量。

? ? ? ? 5.MPI(Message-Passing Interface):MPI即消息传递接口。MPI的主要作用是使得多台计算机或一台计算机上的多核能够运行多网格FDS作业。一般我们在运行模拟是都在同一台计算机,此处暂时不多做赘述,更多信息可以参考FDS User Guide3.2的内容。

二、FDS输入文件中的基本概念

? ? ? ? 1.输入文件命名:尽量使用有意义的英文名称。输入文件名中不应该有空格。请使用下划线字符来表示空格。

????????2.参数的命名格式:以&字符开头,后接相应的指令名称,后面是以逗号隔开的输入参数列表,最后以/结尾。例如:

&DUMP NFRAMES=1800, DT_HRR=10., DT_DEVC=10., DT_PROF=30. /

? ? ? ? 该条语句设置DUMP组的各个参数,但要确保以斜杠结束记录,否则该语句无法执行。

? ? ? ? 参数可以使用逗号、空格或者是换行符隔开,建议使用逗号和换行符。

? ? ? ? 3.注释和注解:注释和注解可以添加到文档中,但不要放在&和/包含区域内。

? ? ? ? 4.输入文件中的参数可以是整数、实数、字符串、逻辑参数(T或者F)、多维数组。

? ? ? ? 5.多维数组的赋值:如果第三层的第二种材料的质量分数为0.5:

MATL_MASS_FRACTION(3,2)=0.5

? ? ? ? 6.字符串可以用单引号或双引号括起来。但直接复制粘贴其他文本编辑器的内容,可能无法正确地读取标点符号。

三、FDS输入文件结构

? ? ? ? 1.fds的输入文件中可以以任何顺序排列,但最好以某种系统的方式组织它们。

? ? ? ? 2.FDS通常不会读取文件的最后一行,因此要以“&TAIL/”作为fds输入文件的结尾。

????????3.一个输入文件的一般结构示例:

&HEAD CHID='WTC_05', TITLE='WTCPhase1,Test5'/
&MESH IJK=90,36,38, XB=-1.0,8.0,-1.8,1.8,0.0,3.82 /
&TIME T_END=5400. /
&MISC TMPA=20. /
&DUMP NFRAMES=1800, DT_HRR=10., DT_DEVC=10., DT_PROF=30. /
&REAC FUEL ='N-HEPTANE'
FYI ='Heptane,C_7H_16'
C = 7.
H = 16.
CO_YIELD = 0.008
SOOT_YIELD = 0.015 /
&OBST XB= 3.5, 4.5,-1.0, 1.0, 0.0, 0.0, SURF_ID='STEELFLANGE'/ Fire Pan
...
&SURF ID ='STEELFLANGE'
COLOR ='BLACK'
MATL_ID ='STEEL'
BACKING ='EXPOSED'
THICKNESS = 0.0063 /
...
&VENT MB='XMIN', SURF_ID='OPEN'/
...
&SLCF PBY=0.0, QUANTITY='TEMPERATURE', VECTOR=T /
...
&BNDF QUANTITY='GAUGEHEATFLUX'/
...
&DEVC XYZ=6.04,0.28,3.65, QUANTITY='VOLUMEFRACTION', SPEC_ID='OXYGEN', ID='EO2_FDS'/
...
&TAIL /Endoffile.

? ? ? ? 4.建议在查看新场景时,首先选择一个类似于案例的预先编写的输入文件,进行必要的更改,然后以相当低的网格分辨率运行案例,以确定几何结构是否正确设置。因为当设置网格较多时,计算时间较长,先通过网格密度来验证方案是否正确。

????????

本文《FDS学习笔记(一)FDS中的基本概念》版权归天将明bright所有,引用FDS学习笔记(一)FDS中的基本概念需遵循CC 4.0 BY-SA版权协议。


推荐阅读
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 标题: ... [详细]
author-avatar
qlongjun
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有