Beruflich Dokumente
Kultur Dokumente
An introduction to
Fire Simulation
with FDS and Smokeview
Development
Download a revised version of this document from:
http://www.emanuelegissi.eu
You can participate in the development of this document. Please, contact me
at:
emanuele.gissi@gmail.com
This manual was produced using LYX and OpenOffice.org on Ubuntu Linux. The
LATEX file intro_to_fire_sim.tex was compiled on July 16, 2010.
Copyright notice
This work is licensed under the Creative Commons Attribution-Share Alike 3.0
License. To view a copy of this license, visit:
http://creativecommons.org/licenses/by-sa/3.0/
You are free to use, share, adapt this work. Remember to cite the sources and
to use the same open license for derivative work.
iii
iv
Preface
This manual was born as a small tutorial for students of fire safety engineering
courses. Then it grew to the current state.
The main goal of this manual is to introduce the student to the complex world of
fire simulation with Fire Dynamics Simulator and Smokeview, and complements
the official documentation. The official documentation remains an invaluable
source of reference for advanced users and this manual is heavily based on it.
Some large parts are even copy-pasted and adapted.
In this manual, topics are organized in a strict logical order and the basics are
thoroughly explained to improve the learning curve. Some advanced topics are
completely omitted for the sake of simplicity.
According to teaching experience, students understand the logic behind the Fire
Dynamics Simulator and become autonomous learners after 16 hours of course:
they learn to work independently and are able to develop reasonable engineering
level applications by themselves.
vi
Acknowledgments
People
The National Institute of Standards and Technology (NIST), a federal agency
within the Department of Commerce of the United States, is the major driving
force behind Fire Dynamics Simulator development.
The Fire Dynamics Simulator has been publicly released on 2000. Since its first
release, continued improvements have been made to the software based largely
on feedback from its users and on the hard work of some NIST employees.
Fire Dynamics Simulator documentation is written and maintained by Kevin
McGrattan, Bryan Klein, Simo Hostikka, and Jason Floyd from
various organizations. Their user support through the discussion group is always
complete, fast, and precious. In a simple word: friendly.
I owe to them large parts of this manual and most of my knowledge on fire
simulation. Thus, I thank them once more.
Ideas
This manual is open content and free, because its published in a format that
explicitly allows copying and modifying of its information by anyone.
Fire Dynamics Simulator itself is free and in the public domain. Linux1 and
Openoffice.Org2 are free and open source.
I thank the open source movement as a whole, as the best things in life are free.
Linux is an open source operating system. See http://www.ubuntu.com/ for an user
friendly Linux distribution.
2
Openoffice.org is an open source office and productivity program for Linux, MS Windows,
and MacOS X. See http://www.openoffice.org/ for further details.
1
vii
viii
Contents
1 Introduction
1.1
1.2
1.3
Simplification . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Inside FDS
2.1
2.2
Engineering applications . . . . . . . . . . . . . . . . . . . . . .
2.3
2.4
2.5
2.6
2.6.1
Hydrodynamic model . . . . . . . . . . . . . . . . . . .
2.6.2
Combustion model . . . . . . . . . . . . . . . . . . . . .
2.6.3
Radiation transport . . . . . . . . . . . . . . . . . . . . 10
2.6.4
2.6.5
Parallel processing . . . . . . . . . . . . . . . . . . . . . 11
2.6.6
Boundary conditions . . . . . . . . . . . . . . . . . . . . 11
2.7
Limitations of FDS . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.7.1
2.7.2
Rectilinear geometry . . . . . . . . . . . . . . . . . . . . 11
2.7.3
2.7.4
Combustion . . . . . . . . . . . . . . . . . . . . . . . . 12
2.7.5
Radiation . . . . . . . . . . . . . . . . . . . . . . . . . . 13
ix
CONTENTS
3 Running FDS
15
3.1
3.2
3.3
Version numbers . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4
Hardware requirements . . . . . . . . . . . . . . . . . . . . . . . 16
3.5
3.6
Installing on Windows XP . . . . . . . . . . . . . . . . . . . . . 17
3.7
First install . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.7.2
3.8
3.9
Performing a calculation . . . . . . . . . . . . . . . . . . . . . . 20
3.9.1
3.9.2
3.9.3
27
4.1
4.2
4.3
4.4
Keep it simple . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.5
4.6
Units of measurement . . . . . . . . . . . . . . . . . . . . . . . 36
4.7
4.8
4.9
Prescribing orientations . . . . . . . . . . . . . . . . . . . . . . 38
. . . . . . . . . . . . . . 31
xi
CONTENTS
5 General configuration
41
5.1
5.2
5.3
Miscellaneous, MISC . . . . . . . . . . . . . . . . . . . . . . . . 42
45
6.1
6.2
Prescribing a fire . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.3
Ignition . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
6.3.2
Burning . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.4
6.5
Flame extinction . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.6
7 Computational domain
55
7.1
7.2
Multiple meshes . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.3
7.4
7.5
8 Materials
63
8.1
8.2
Thermal properties . . . . . . . . . . . . . . . . . . . . . . . . . 64
8.3
Burning properties . . . . . . . . . . . . . . . . . . . . . . . . . 65
8.3.1
Solids . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
8.3.2
Liquids . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
8.3.3
8.4
Properties hell . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.5
xii
CONTENTS
69
9.1
9.2
10 Lagrangian particles
73
77
. . . . . . . . . . . . . . . . . . . . 89
CONTENTS
xiii
12 Solid geometry
93
105
113
xiv
CONTENTS
14.4 Animated planar slices, SLCF . . . . . . . . . . . . . . . . . . . 117
14.5 Animated boundary quantities, BNDF . . . . . . . . . . . . . . . 118
14.6 Animated isosurfaces, ISOF . . . . . . . . . . . . . . . . . . . . 120
14.7 Realistic smoke and fire . . . . . . . . . . . . . . . . . . . . . . 121
14.8 Heat release rate . . . . . . . . . . . . . . . . . . . . . . . . . . 122
14.9 Visibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
14.10Upper and lower layers . . . . . . . . . . . . . . . . . . . . . . . 123
14.11Heat fluxes and thermal radiation . . . . . . . . . . . . . . . . . 124
14.12Interfacing with structural models . . . . . . . . . . . . . . . . . 124
14.13Visualizing Lagrangian particles . . . . . . . . . . . . . . . . . . 125
14.14Frequently used output quantities . . . . . . . . . . . . . . . . . 125
15 Using BlenderFDS
129
133
List of Figures
3.1
3.2
3.3
3.4
4.1
4.2
4.3
6.1
6.2
6.3
7.1
7.2
7.3
xvi
LIST OF FIGURES
12.2 OBST, HOLE and VENT . . . . . . . . . . . . . . . . . . . . . . . 97
12.3 Setting boundary conditions to exterior boundaries of the computational domain . . . . . . . . . . . . . . . . . . . . . . . . . 98
12.4 Flow velocity on two sides of an oblique wall. Lower side has
SAWTOOTH=.FALSE. set. . . . . . . . . . . . . . . . . . . . . . . 103
14.1 Output of animated planar slices SLCF as viewed in Smokeview . 117
14.2 Output of animated boundary quantities, BNDF as viewed in Smokeview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
14.3 Output of animated isosurfaces, ISOF as viewed in Smokeview . . 120
14.4 Output of soot MASS FRACTION and HRRPUV as viewed in Smokeview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
15.1 A BlenderFDS session . . . . . . . . . . . . . . . . . . . . . . . 130
15.2 A BlenderFDS property panel . . . . . . . . . . . . . . . . . . . 131
15.3 Exporting a BlenderFDS model to an FDS input file . . . . . . . 132
16.1 Car parking plan . . . . . . . . . . . . . . . . . . . . . . . . . . 136
16.2 The entered geometry . . . . . . . . . . . . . . . . . . . . . . . 141
16.3 Heat release rate curve . . . . . . . . . . . . . . . . . . . . . . . 141
16.4 Thermocouples at the center of the car parking. . . . . . . . . . 142
16.5 Gas temperatures in front of window panes vs time. . . . . . . . 142
16.6 FED vs time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
16.7 Layer height vs time. . . . . . . . . . . . . . . . . . . . . . . . . 143
16.8 AST (Adiabatic Surface Temperature) boundary file at 1200 s. . . 144
16.9 Visibility slice file at 120 s. . . . . . . . . . . . . . . . . . . . . . 144
16.10Visibility (10 m) isosurface at 300 s. . . . . . . . . . . . . . . . . 145
16.11Net heat flux on boundary surfaces at 1200 s. . . . . . . . . . . 145
16.12The university building as modeled in BlenderFDS . . . . . . . . 146
16.13The exported FDS input file, as shown by Smokeview . . . . . . 146
List of Tables
4.1
4.2
COLOR values . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.1
HEAD parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2
TIME parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.3
MISC parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.1
6.2
REAC parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.3
RADI parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 53
7.1
IJK values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
7.2
MESH parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 56
7.3
INIT parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 61
8.1
MATL parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.2
9.1
9.2
SPEC parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 70
xviii
LIST OF TABLES
Chapter 1
Introduction
This chapter presents the problems embedded in fire simulation. The
text has been adapted from [FDS5 users guide], Introduction by
Howard Baum, NIST Fellow Emeritus.
1.1
The idea that the dynamics of a fire might be studied numerically dates back
to the beginning of the computer age. Indeed, the fundamental conservation
equations governing fluid dynamics, heat transfer, and combustion were first
written down over a century ago. Despite this, practical mathematical models
of fire, as distinct from controlled combustion, are relatively recent due to the
inherent complexity of the problem.
Indeed, in his brief history of the early days of fire research, Hoyt Hottel
noted:
A case can be made for fire being, next to the life processes, the
most complex of phenomena to understand [Hottel 1984].
The difficulties revolve about three issues:
First, there are an enormous number of possible fire scenarios to consider
due to their accidental nature.
Second, the physical insight and computing power required to perform all
the necessary calculations for most fire scenarios are limited. Any fundamentally based study of fires must consider at least some aspects of bluff
1
CHAPTER 1. INTRODUCTION
body aerodynamics, multi-phase flow, turbulent mixing and combustion,
radiative transport, and conjugate heat transfer; all of which are active
research areas in their own right.
Finally, the fuel in most fires was never intended as such.
Thus, the mathematical models and the data needed to characterize the degradation of the condensed phase materials that supply the fuel may not be available.
Indeed, the mathematical modeling of the physical and chemical transformations
of real materials as they burn is still in its infancy.
In order to make progress, the questions that are asked have to be greatly simplified.
To begin with, instead of seeking a methodology that can be applied to all fire
problems, we begin by looking at a few scenarios that seem to be most amenable
to analysis. Hopefully, the methods developed to study these simple problems
can be generalized over time so that more complex scenarios can be analyzed.
Second, we must learn to live with idealized descriptions of fires and approximate
solutions to our idealized equations.
Finally, the methods should be capable of systematic improvement. As our physical insight and computing power grow more powerful, the methods of analysis
can grow with them.
1.2
To date, four distinct approaches to the simulation of fires have emerged. Each
of these treats the fire as an inherently three dimensional process evolving in
time.
Zone models
The first to reach maturity, the zone models, describe compartment fires. Each
compartment is divided into two spatially homogeneous volumes, a hot upper
layer and a cooler lower layer. Mass and energy balances are enforced for each
layer, with additional models describing other physical processes appended as
differential or algebraic equations as appropriate. Examples of such phenomena
include fire plumes, flows through doors, windows and other vents, radiative
and convective heat transfer, and solid fuel pyrolysis. Model development has
progressed to the point where documented and supported software implementing
these models are widely available, such as CFAST1 .
The Consolidated Model of Fire and Smoke Transport (CFAST) is a two-zone fire model
used to calculate the evolving distribution of smoke, fire gases and temperature throughout
compartments of a building during a fire. Visit http://cfast.nist.gov/ for further information.
1
The relative physical and computational simplicity of the zone models has led to
their widespread use in the analysis of fire scenarios. So long as detailed spatial
distributions of physical properties are not required, and the two layer description
reasonably approximates reality, these models are quite reliable. However, by their
very nature, there is no way to systematically improve them.
The rapid growth of computing power and the corresponding maturing of computational fluid dynamics (CFD), has led to the development of CFD based field
models applied to fire research problems. Virtually all this work is based on the
conceptual framework provided by the Reynolds-averaged form of the NavierStokes equations (RANS). The use of CFD models has allowed the description RANS
of fires in complex geometries, and the incorporation of a wide variety of physical
phenomena.
However, these models have a fundamental limitation for fire applications the
averaging procedure at the root of the model equations.
RANS models were developed as a time-averaged approximation to the conservation equations of fluid dynamics. While the precise nature of the averaging
time is not specified, it is clearly long enough to require the introduction of large
eddy transport coefficients to describe the unresolved fluxes of mass, momentum
and energy. This is the root cause of the smoothed appearance of the results
of even the most highly resolved fire simulations. The smallest resolvable length
scales are determined by the product of the local velocity and the averaging time
rather than the spatial resolution of the underlying computational grid.
Unfortunately, the evolution of large eddy structures characteristic of most fire
plumes is lost with such an approach, as is the prediction of local transient events.
It is sometimes argued that the averaging process used to define the equations is
an ensemble average over many replicates of the same experiment or postulated
scenario. However, this is a moot point in fire research since neither experiments
nor real scenarios are replicated in the sense required by that interpretation of
the equations.
The application of Large Eddy Simulation (LES) techniques to fire is aimed at LES
extracting greater temporal and spatial fidelity from simulations of fire performed
on the more finely meshed grids allowed by ever faster computers.
The phrase LES refers to the description of turbulent mixing of the gaseous
fuel and combustion products with the local atmosphere surrounding the fire.
This process, which determines the burning rate in most fires and controls the
spread of smoke and hot gases, is extremely difficult to predict accurately. This
is true not only in fire research but in almost all phenomena involving turbulent
fluid motion. The basic idea behind the LES technique is that the eddies that
account for most of the mixing are large enough to be calculated with reasonable
CHAPTER 1. INTRODUCTION
accuracy from the equations of fluid dynamics. The hope (which must ultimately
be justified by comparison to experiments) is that small-scale eddy motion can
either be crudely accounted for or ignored.
DNS
The fourth approach is Direct Numerical Simulation (DNS). DNS is a simulation in computational fluid dynamics in which the Navier-Stokes equations are
numerically solved without any turbulence model. This means that the whole
range of spatial and temporal scales of the turbulence must be resolved in the
computational mesh.
The computational cost of DNS is very high, even at low Reynolds numbers.
For the Reynolds numbers encountered in most industrial applications, the computational resources required by a DNS would exceed the capacity of the most
powerful computers currently available.
1.3
Simplification
The equations describing the transport of mass, momentum, and energy by the
fire-induced flows must be simplified so that they can be efficiently solved for the
fire scenarios of interest. The general equations of fluid dynamics describe a rich
variety of physical processes, many of which have nothing to do with fires.
Retaining this generality would lead to an enormously complex computational
task that would shed very little additional insight on fire dynamics. The simplified
equations, developed by Rehm and Baum [Rehm 1978], have been widely adopted
by the larger combustion research community, where they are referred to as the
low Mach number combustion equations. They describe the low speed motion
of a gas driven by chemical heat release and buoyancy forces.
The low Mach number equations are solved numerically by dividing the physical
space where the fire is to be simulated into a large number of rectangular cells.
Within each cell the gas velocity, temperature, etc., are assumed to be uniform;
changing only with time. The accuracy with which the fire dynamics can be
simulated depends on the number of cells that can be incorporated into the
simulation. This number is ultimately limited by the computing power available.
Present day, single processor desktop computers limit the number of such cells
to at most a few million. This means that the ratio of largest to smallest eddy
length scales that can be resolved by the computation (the dynamic range of the
simulation) is on the order of 100. Parallel processing can be used to extend this
range to some extent, but the range of length scales that need to be accounted
for if all relevant fire processes are to be simulated is roughly 104 to 105 because
1.3. SIMPLIFICATION
combustion processes take place at length scales of 1 mm or less, while the length
scales associated with building fires are of the order of tens of meters.
CHAPTER 1. INTRODUCTION
Chapter 2
Inside FDS
This chapter gives a concise insight on how Fire Dynamics Simulator works and its limitations. Possible engineering applications are
presented.
2.1
2.2
Engineering applications
Throughout its development, FDS has been aimed at solving practical fire problems in fire protection engineering, while at the same time providing a tool to
study fundamental fire dynamics and combustion.
Basic use
It is generally recognized that FDS can be effectively used in engineering applications to model the following phenomenas:
Low speed transport of heat and combustion products from fire;
Radiative and convective heat transfer between the gas and solid surfaces;
Sprinkler, heat detector, and smoke detector activation.
Advanced use
2.3
2.4
The use of fire models currently extends beyond the fire research laboratories
into the engineering, fire service and legal communities.
FDS is intended for use only by those competent in the fields of fluid dynamics,
thermodynamics, heat transfer, combustion, and fire science, and is intended
only to supplement the informed judgment of the qualified user. The software
package is a computer model that may or may not have predictive capability when
applied to a specific set of factual circumstances. Lack of accurate predictions
by the model could lead to erroneous conclusions with regard to fire safety.
Sufficient evaluation of any model is necessary to ensure that users can judge the
adequacy of its technical basis, appropriateness of its use, and confidence level
of its predictions.
2.5
2.6
2.6.1
Hydrodynamic model
FDS solves numerically a form of the Navier-Stokes equations appropriate for lowspeed, thermally-driven flow with an emphasis on smoke and heat transport from
fires. The core algorithm is an explicit predictor-corrector scheme, second order
accurate in space and time. Turbulence is treated by means of the Smagorinsky
form of Large Eddy Simulation (LES). It is possible to perform a Direct Numerical
Simulation (DNS) if the underlying numerical mesh is fine enough. LES is the
default mode of operation.
2.6.2
Combustion model
For most applications, FDS uses a single step chemical reaction whose products
are tracked via a two-parameter mixture fraction model. The mixture fraction
10
is a conserved scalar quantity that represents the mass fraction of one or more
components of the gas at a given point in the flow field. By default, two components of the mixture fraction are explicitly computed. The first is the mass
fraction of unburned fuel and the second is the mass fraction of burned fuel, as
for example the mass of the combustion products that originated as fuel.
A two-step chemical reaction with a three parameter mixture fraction decomposition can also be used with the first step being oxidation of fuel to carbon monoxide
and the second step the oxidation of carbon monoxide to carbon dioxide. The
three mixture fraction components for the two step reaction are unburned fuel,
mass of fuel that has completed the first reaction step, and the mass of fuel that
has completed the second reaction step. The mass fractions of all of the major
reactants and products can be derived from the mixture fraction parameters by
means of state relations.
Lastly, a multiple-step finite rate model is also available.
2.6.3
Radiation transport
Radiative heat transfer is included in the model via the solution of the radiation
transport equation for a gray gas, and in some limited cases using a wide band
model.
The equation is solved using a technique similar to finite volume methods for
convective transport, thus the name given to it is the Finite Volume Method
(FVM). Using approximately 100 discrete angles, the finite volume solver requires
about 20% of the total CPU time of a calculation, a modest cost given the
complexity of radiation heat transfer.
The absorption coefficients of the gas-soot mixtures are computed using [Grosshandler 1993]
narrow-band model. Liquid droplets can absorb and scatter thermal radiation.
This is important in cases involving mist sprinklers, but also plays a role in all
sprinkler cases.
2.6.4
2.6.5
11
Parallel processing
It is possible to run an FDS calculation on more than one computer using the
Message Passing Interface (MPI).
2.6.6
Boundary conditions
All solid surfaces are assigned thermal boundary conditions, plus information
about the burning behavior of the material. Heat and mass transfer to and
from solid surfaces is usually handled with empirical correlations, although it is
possible to compute directly the heat and mass transfer when performing a Direct
Numerical Simulation (DNS).
2.7
Limitations of FDS
Although FDS can address most fire scenarios, there are limitations in all of its
various algorithms. Some of the more prominent limitations of the model are
listed here.
2.7.1
The use of FDS is limited to low-speed1 flow with an emphasis on smoke and heat
transport from fires. This assumption rules out using the model for any scenario
involving flow speeds approaching the speed of sound, such as explosions, choke
flow at nozzles, and detonations.
2.7.2
Rectilinear geometry
The efficiency of FDS is due to the simplicity of its rectilinear numerical grid and
the use of a fast, direct solver for the pressure field. This can be a limitation in
some situations where certain geometric features do not conform to the rectangular grid, although most building components do. There are techniques in FDS
to lessen the effect of sawtooth obstructions used to represent non rectangular
objects, but these cannot be expected to produce good results if, for example,
the intent of the calculation is to study boundary layer effects. For most practical
1
12
large-scale simulations, the increased grid resolution afforded by the fast pressure
solver offsets the approximation of a curved boundary by small rectangular grid
cells.
2.7.3
Because the model was originally designed to analyze industrial-scale fires, it can
be used reliably when the Heat Release Rate (HRR) of the fire is specified and the
transport of heat and exhaust products is the principal aim of the simulation. In
these cases, the model predicts flow velocities and temperatures to an accuracy
within 10% to 20% of experimental measurements, depending on the resolution
of the numerical grid2 .
However, for fire scenarios where the heat release rate is predicted rather than
specified, the uncertainty of the model is higher. There are several reasons for
this:
1. Properties of real materials and real fuels are often unknown or difficult to
obtain;
2. The physical processes of combustion, radiation and solid phase heat transfer are more complicated than their mathematical representations in FDS;
3. The results of calculations are sensitive to both the numerical and physical
parameters. Current research is aimed at improving this situation, but it
is safe to say that modeling fire growth and spread will always require a
higher level of user skill and judgment than that required for modeling the
transport of smoke and heat from specified fires.
2.7.4
Combustion
13
2.7.5
Radiation
Radiative heat transfer is included in the model via the solution of the radiation
transport equation (RTE) for a gray gas, and in some limited cases using a
wide band model. The RTE is solved using a technique similar to finite volume
methods for convective transport, thus the name given to it is the Finite Volume
Method (FVM).
There are several limitations of the model:
First, the absorption coefficient for the smoke-laden gas is a complex function of its composition and temperature. Because of the simplified combustion model, the chemical composition of the smokey gases, especially
the soot content, can effect both the absorption and emission of thermal
radiation.
Second, the radiation transport is discretized via approximately 100 solid
angles, although the user may choose to use more angles. For targets far
away from a localized source of radiation, like a growing fire, the discretization can lead to a non-uniform distribution of the radiant energy. This error
is called ray effect and can be seen in the visualization of surface temperatures, where hot spots show the effect of the finite number of solid
angles. The problem can be lessened by the inclusion of more solid angles,
but at a price of longer computing times. In most cases, the radiative flux
to far-field targets is not as important as those in the near-field, where
coverage by the default number of angles is much better.
14
Chapter 3
Running FDS
This chapter explains how to obtain, install and run FDS and Smokeview. The explanation covers Ubuntu Linux and Windows XP.
3.1
16
The FDS and Smokeview users guides only describe the mechanics of using
the computer programs. The technical reference guides provides the theory,
algorithm details, and verification and validation work.
Along with the FDS manuals, there are resources available on the Internet. These
include an issue tracker, that allows you to report bugs, feature requests and ask
specific clarifying questions, and group discussions, which support more general
topics than just specific problems.
Before using these on-line resources, it is important to first try to solve your own
problems by performing simple test calculations, or debugging your input file.
3.2
3.3
Version numbers
3.4
Hardware requirements
FDS requires one or more fast CPUs and a substantial amount of random-access
memory (RAM) to run efficiently. For minimum specifications, the system should
17
have at least a 1 GHz CPU, and 1 GB RAM. The CPU speed will determine how
long the computation will take to finish, while the amount of RAM will determine
how many mesh cells can be held in memory.
1 GB RAM can hold around 106 cells. To understand the physical meaning, a
20 m x 10 m x 5 m computational domain contains 106 cells, when discretized
with cubic cells of 10 cm side.
A large hard drive is required to store the output of the calculations. It is not
unusual for the output of a single calculation to consume many gigabytes of
storage space.
Smokeview needs an OpenGL graphic card. Look for graphics cards that specifically list OpenGL support for the operating system you intend to use.
3.5
3.6
Installing on Windows XP
18
3.7
3.7.1
First install
To install FDS and Smokeview on an Ubuntu Linux system, first, download the
latest version of the precompiled FDS and Smokeview for Linux from download
19
page on the official web site. Depending on your Ubuntu flavor, download the
32 bit or the 64 bit compressed archive of the FDS distribution.
After downloading to your computer, extract the archive by right clicking on its
icon and selecting Extract here in the context menu.
Then, move the extracted FDS folder to your preferred location, for example
your home directory. In my case the resulting path to FDS folder would be
/home/egissi/FDS, as /home/egissi is my home folder.
After that, look at hidden files of your home folder by selecting View . Show
hidden files menu in the Nautilus file browser. Locate the .bashrc file in
your home directory, and open it for editing by double-clicking its icon.
Append the following text to the .bashrc file in the editor window:
### FDS and Smokeview environment
# Actual path to FDS folder
FDS=/home/egissi
set your actual path here
echo "FDS setup ($FDS)"
# Setting limits
ulimit -s unlimited
ulimit -v unlimited
# Setting executable and library paths
export PATH=$PATH:$FDS/FDS5/FDS/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$FDS/FDS/FDS5/bin/lib32
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$FDS/FDS/FDS5/bin/lib64
Edit the emphasized line and set your actual path to the FDS folder. After that,
save the .bashrc file and close the text editor.
Open Synaptic package manager by selecting System . Administration . Synaptic
package manager menu and install:
On Ubuntu Linux 32 bit: lam-runtime software package;
On Ubuntu Linux 64 bit: lam-runtime and ia32-libs software packages.
Ubuntu Linux takes care for you of all the needed software dependencies.
Close your session and log-in again to put into effect the environment modifications. Your Ubuntu Linux system is now ready to perform serial and parallel
simulations on a multi-core or multi-CPU workstation.
20
3.7.2
When installing a new version of FDS and Smokeview, just delete the old FDS
folder. After downloading the new version, extract the new FDS folder and drag
it to the same position as before.
Your Ubuntu Linux system is now ready to perform serial and parallel simulations
with the new version.
3.8
As FDS is open source software, users can always download the latest version of
FDS source code and compile it by themselves using a Fortran 90 and C compiler.
Direct compilation is often applied to obtain an FDS binary that is optimized for
the specific hardware and platform and to fully take advantage of its speed.
Compilation is a complex task and is out of the scope of the present manual.
3.9
Performing a calculation
3.9.1
After having set up an input file, open up a command prompt window: select
Start . Run menu, then type cmd. Move into the mycase folder, where the input
file for the case is located, with the cd command.
Then run the code by typing the following command:
21
3.9.2
3.9.3
FDS uses the Message Passing Library (MPI) for parallel computing.
22
Figure 3.3: Running a parallel calculation and monitoring the system on Ubuntu
Linux
MPI is a language-independent communications protocol used to program parallel computers. Both point-to-point and collective communication are supported.
MPIs goals are high performance, scalability, and portability. MPI is the dominant model used in high-performance computing today.
The input file for both single and parallel versions of FDS are the same. In fact,
it is recommended that before embarking on parallel processing, you should run
your input file in serial mode to ensure that it is properly set up.
To run FDS in parallel, you must break up the computational domain into multiple
meshes so that the workload can be divided among the available processors.
For the parallel version to work well, there has to be a comparable number of
cells in each mesh, or otherwise most of the computers will sit idle waiting for
the one with the largest mesh to finish processing each time step.
On an Ubuntu Linux computer as configured before, type the following commands
to perform a parallel calculation:
On Ubuntu Linux 32 bit:
lamboot -v
mpirun -np 4 fds5_mpi_intel_linux_32 mycase.fds
lamhalt -v
On Ubuntu Linux 64 bit:
lamboot -v
mpirun -np 4 fds5_mpi_intel_linux_64 mycase.fds
lamhalt -v
23
3.10
Monitoring progress
Diagnostics for a given calculation are written into a text file called mycase.out,
contained in the case folder mycase. The CPU usage and simulation time are
written here, so you can monitor it to see how far along the program has progressed.
The application System . Administration . Gnome System Monitor is a process viewer that provides a dynamic real-time view of a running system.
3.11
Stop a calculation
To stop a calculation before its scheduled time, create an empty file in the
mycase folder called mycase.stop. The mere existence of this file stops the
program gracefully, causing it to dump out the latest flow variables for viewing
in Smokeview.
Since calculations can be hours or days long, FDS has a restart feature. See
[FDS5 users guide] for broader details.
3.12
Visualizing results
24
3.13
Output files
25
Device output data: data associated with particular devices (link temperatures, smoke obscuration, thermocouples, etc.) is output in comma delimited format in a file called mycase_devc.csv
and many other types of files, used by Smokeview for visualisation.
The comma delimited format files can easily be imported into Openoffice.org
Calc or Microsoft Excel for further analysis.
26
Chapter 4
Input file basics
This chapter teaches the logic of FDS input file, its organization and
its grammar. Then the standard reference system is explained and
some tips and tricks are exposed.
4.1
28
ignored. Thus, comments and notes can be written outside the & / delimiters. Comments
For example:
&OBST XB=0.5,1.1,0.5,1.1,0.0,0.1 / A comment
Another comment
It is recommended that each namelist group be clearly commented to justify the
choice of its parameters and to link it to literature references or direct experimentation. For example, comments like these:
Parameter arrays
29
MATL_ID(2,3)=brick
indicates that the third material component of the second layer is brick.
To speed up data input, you can use this notation:
MATL_ID(1:3,1)=plastic,insulation,steel
which means that the surface is composed by three different layers made respectively of plastic, insulation and steel. The notation 1:3 means array
element 1 through 3, inclusive.
A simplified notation is accepted, too:
MATL_ID=plastic,steel
is equivalent to:
MATL_ID(1:2,1)=plastic,steel
These last surfaces are composed by two different layers made respectively of
plastic and steel.
The code is case sensitive: my_burner is not the same as MY_BURNER.
Case sensitivity
To ensure that FDS reads the entire input file, add &TAIL / or a comment as TAIL
the last line at the end of the input file.
4.2
When looking at a new scenario, first select a pre-written input file that resembles the case, make the necessary changes, then run the case at fairly low grid
resolution to determine if the geometry is set up correctly.
The following file is a slightly modified and simplified version of pplume5.fds,
generally included in FDS software distribution:
!!! General configuration
&HEAD CHID=pplume5, TITLE=Plume case /
name of the case and a brief explanation
30
IJK=32,32,16, XB=0.0,1.6,0.0,1.6,0.0,0.8
IJK=32,32,16, XB=0.0,1.6,0.0,1.6,0.8,1.6
IJK=32,32,16, XB=0.0,1.6,0.0,1.6,1.6,2.4
IJK=32,32,16, XB=0.0,1.6,0.0,1.6,2.4,3.2
four connected calculation meshes
and their cell numbers
/
/
/
/
!!! Properties
&MATL ID=gypsum_plaster, CONDUCTIVITY=0.48,
SPECIFIC_HEAT=0.84, DENSITY=1440. /
thermophysical properties of gypsum plaster material
&PART ID=tracers, MASSLESS=.TRUE., SAMPLING_FACTOR=1 /
a type of Lagrangian particles
&SURF ID=burner, HRRPUA=600.,
PART_ID=tracers, COLOR=RASPBERRY /
a type of boundary conditions named burner
&SURF ID=wall, RGB=200,200,200, MATL_ID=gypsum_plaster,
THICKNESS=0.012 /
a type of boundary conditions named wall
!!! Solid geometry
&VENT XB=0.5,1.1,0.5,1.1,0.1,0.1, SURF_ID=burner /
the burner boundary condition
is imposed to a plane face
&OBST XB=0.5,1.1,0.5,1.1,0.0,0.1, SURF_ID=wall /
&VENT
&VENT
&VENT
&VENT
&VENT
31
!!! Output
&DEVC XYZ=1.2,1.2,2.9, QUANTITY=THERMOCOUPLE, ID=tc1 /
send to output: the data collected by a thermocouple
&ISOF QUANTITY=TEMPERATURE, VALUE(1)=100.0 /
3D contours of temperature at 100C
&SLCF PBX=0.8, QUANTITY=TEMPERATURE, VECTOR=.TRUE. /
vector slices colored by temperature
&BNDF QUANTITY=WALL TEMPERATURE /
surface WALL_TEMPERATURE at all solid obstructions
&TAIL / end of file
Not all kinds of FDS namelist groups are listed in this input files. In fact,
another general rule of thumb when writing input files is to only add to the file
parameters that are to change from their default value. That way, you can more
easily distinguish between what you impose and FDS defaults.
In general, the namelist records can be entered in any order in the input file, but
it is a good idea to organize them in some systematic way.
Be aware that the order of identical namelist groups can be significant. When Order convention
properties overlap the general rule is first-come, first-served.
For the sake of clarity, users often group similar namelists in homogeneous sections identified by heading comments, as shown in the former example input
file.
4.3
This section presents the logic behind most FDS input files; this same logic is
used for the organization of this manual:
32
This is the most challenging part of setting up the simulation: first, for both
real and simulated fires, the growth of the fire is very sensitive to the thermal
properties of the surrounding materials. Second, even if all the material properties are known to some degree, the physical phenomena of interest may not be
simulated properly due to limitations in the model algorithms or resolution of the
numerical mesh.
It is your responsibility to supply the thermal properties of the materials, and then
assess the performance of the model to ensure that the phenomena of interest
are being captured.
Fourth, the solid geometry is entered via OBST, VENT, HOLE namelist
groups.
A considerable amount of work in setting up a calculation lies in
specifying the geometry of the space to be modeled and applying
boundary conditions to these objects. The geometry is described in
terms of obstructions to the gas phase flow.
33
Content
Namelist groups
General configuration
REAC, RADI
Computational domain:
dimensions and grid.
MESH
INIT
MATL, RAMP
(temperature)
SPEC
Computational domain
Properties
34
PART
Solid geometry
Control logic
Output
4.4
Keep it simple
Novice users tend to forget that FDS is not a Computer Aided Design (CAD)
tool, but a CFD code.
First, not all geometrical details, all physical and chemical properties of all involved objects need to be entered in the input file.
Looking at the example proposed in Figure 4.2 on the facing page, chair and table
frame effect on the fluid flow can be considered negligible. On the contrary, the
influences to fluid flow of the separating wall, the table top and seats can become
important, depending on the objective of the analysis.
So, the first step of the analysis process is to formulate the problem by seeking
answers to the following questions:
What is the objective of the analysis?
What is the easiest way to obtain that objective?
What input data needs to be included?
Approximations of the geometry and simplifications of the properties are always
required to allow an analysis with reasonable effort.
35
4.5
When entering data into the input file, it is suggested to always consider how
models inside FDS will use that data.
For example:
The hydrodynamic model needs to know which cells of the computational
domain are open to fluid flow and which are instead occupied by solid
obstructions. The geometry is discretized and the maximum resolution is
the grid cell size.
36
Imagine that the wall separating room 1 and room 2 of Figure 4.2 on the previous
page is 0.19 m thick. Thus, during the calculation:
Taken the cell size equal to 0.30 m, the hydrodynamic model considers that
wall as if it was 0.30 m thick, because the geometry must conform to the
underlying grid. That information is used to obstacle the fluid flow.
The heat transfer model performs a one-dimensional heat transfer calculation of the wall using the real 0.19 m thickness and the material properties.
It may sound strange to novice users, but that wall is. . . both 0.30 m and 0.19 m
thick for FDS.
4.6
Units of measurement
FDS employs the units of measurement from the International System (SI).
Lengths are expressed in m, time in s, mass in kg, temperature in C, pressure
in Pa, heat in kJ, power in kW, conductivity in W/m/K, heat flux in kW/m2 ,
molecular weight in g/mol. . .
This manual contains a comprehensive list of frequent namelist parameters and
their units. For a complete list consult the [FDS5 users guide].
4.7
FDS coordinate system conforms to the right hand rule. By default, the z axis
is considered the vertical.
For computational reasons, it is always preferable for the longest horizontal dimension of the model be aligned with the x axis. This often shortens the calculation time.
37
Figure 4.3: The reference system, a volume, a face, a segment, a point, and a
plane
4.8
Many namelist groups extend their action to volumes, faces, segments, points or
planes. As shown in Figure 4.3, FDS geometrical entities are always described
using some conventional rules.
A volume is always represented by a single right parallelepiped with edges parallel Volumes
to the axis. Its position and dimensions are described by the coordinates of two
opposite vertices: if point A = (xA , yA , zA ) and point B = (xB , yB , zB ) are
the opposite vertices, its coordinates are entered as xA , xB , yA , yB , zA , zB . For
example,
&OBST XB=0.5,1.5,2.0,3.5,-2.0,0., SURF_ID=wall /
uses the parameter XB to define a solid obstacle that spans the volume starting
at the origin (0.5, 2.0, 2.0) and extending 1 m in the positive x direction, 1.5 m
in the positive y direction, and 2 m in the positive z direction.
A face is represented by a right plane face with edges parallel to the axis. Its Faces
position and dimensions are described by the coordinates of two opposite vertices,
that must lie on the same plane. For example:
&VENT XB=0.5,1.1,2.0,3.1,-2.0,-2.0, SURF_ID=fire /
uses the parameter XB to define a flat face perpendicular to the z axis imposing
a particular boundary condition over a solid. Two of the six coordinates are the
same, denoting a flat face as opposed to a solid.
A segment is bounded by two end points. If point A = (xA , yA , zA ) and point Segments
B = (xB , yB , zB ) are the end points, its coordinates are entered following the
same convection valid for volumes. For example,
38
Planes
4.9
Prescribing orientations
Some FDS entities need the prescription of a particular orientation. This is done
with one of the following parameters: IOR or ORIENTATION.
IOR
The parameter IOR, index of orientation, is used to prescribe one of the six
possible orientations parallel to axis: if the orientation is in the positive x direction
set IOR=1, negative x direction IOR=-1, positive y IOR=2, negative y IOR=-2,
positive z IOR=3, negative z IOR=-3.
For example, the line:
39
4.10
Colors of objects can be prescribed with two parameters: RGB and COLOR.
The RGB parameter is followed by a triplet of integer numbers in the range from RGB
0 to 255, indicating the amount of red, green and blue that make up the color.
The COLOR parameter calls the name of a predefined color that must be entered COLOR
exactly as it is listed in the color table:
Table 4.2: COLOR values
ACQUAMARINE, BANANA, BEIGE, BLACK, BLUE, BRICK, BROWN, CADMIUM
ORANGE, CARROT, COBALT, CORAL, CRIMSON, CYAN, FIREBRICK, FLESH,
GOLD, GRAY, GREEN, INDIGO, MAGENTA, MAROON, MELON, MINT, NAVY,
OLIVE, ORANGE, ORCHID, PINK, PURPLE, RASPBERRY, RED, SALMON,
SEPIA, SIENNA, SILVER, TAN, TEAL, TOMATO, TURQUOISE, VIOLET,
WHITE, YELLOW, ...
You can rapidly find the whole color table of more than 500 colors by googling
for FDS COLOR TABLE on the Internet.
For example, both the parameter RGB=0,0,255 and the parameter COLOR=BLUE
can be used to obtain a blue object.
40
TRANSPARENCY
Chapter 5
General configuration
First, general configuration is performed.
The case receives a name via the HEAD namelist group, the simulation time is set via the TIME namelist group. Other miscellaneous
parameters are prescribed via the MISC namelist group.
5.1
The first thing to do when setting up an input file is to give the job a name. The
name of the job is important because often a project involves numerous simulations in which case the names of the individual simulations can help organize the
effort. The namelist group HEAD contains two parameters, as in this example:
&HEAD CHID=mycase, TITLE=This is a short description /
CHID is a string of 30 characters or less used to name the output files created
by FDS. No periods or spaces are allowed. TITLE is a string of 60 characters or
less that describes the simulation. It is simply a descriptive text that is passed
to various output files.
It is always convenient to exactly use the same string for the name of the input
file and the CHID. For example, if you name mycase.fds the input file, then set
CHID=mycase in the HEAD namelist group.
Only one HEAD line can be entered in the input file. The following table summarizes some HEAD parameters:
41
42
5.2
Parameter
Type
Description
CHID
String
Job identifier
TITLE
String
Unit
Default
output
TIME is the namelist group that define the time duration of the simulation.
Usually, only the duration of the simulation is required on this line, via the
parameter T_END. The default is 1 s.
For example, the following line will instruct FDS to run the simulation for 5400 s:
&TIME T_END=5400. /
If T_END is set to zero, only the set-up work is performed, allowing you to quickly
check the geometry in Smokeview.
Only one TIME line can be entered in the input file. The following table summarizes some TIME parameters:
Table 5.2: TIME parameters
5.3
Parameter
Type
Description
Unit
Default
T_BEGIN
Real
0.
T_END
Real
1.
Miscellaneous, MISC
43
establishes that all bounding surfaces are to be made of steel unless otherwise
specified.
Only one MISC line can be entered in the input file. The following table summarizes some MISC parameters:
Table 5.3: MISC parameters
Parameter
Type
Description
Unit
Default
SURF_DEFAULT
String
TMPA
Real
Ambient temperature
U0,V0,W0
Real
m/s
GVEC(3)
Real
Gravity vector
m/s2
HUMIDITY
Real
Relative Humidity
CO_PRODUCTION
Logical
.FALSE.
RESTART
Logical
.FALSE.
INERT
20.
0.
0,0,-9.81
40.
44
Chapter 6
Combustion and radiation
. . . then gas phase combustion reaction is set up via the REAC namelist
group, the radiation model is configured with RADI.
6.1
6.2
Prescribing a fire
46
6.3
6.3.1
Once injected into the flow field, the gaseous fuels mix with air and burn. There
is no need to prescribe an ignition source: the combustion model assumes that
47
6.3.2
Burning
48
The alternative is what is referred to as the finite-rate approach, where all of the Finite-rate approac
individual gas species involved in the combustion process are defined and tracked
individually. This is a costlier and more complicated approach than the mixture
fraction model.
This manual covers the mixture fraction model only, as it is simpler and commonly
employed for engineering level problems.
When the mixture fraction model is applied, a set of scalar variables, Zi , represent
P
the state of the combustion process from pure fuel ( Zi = 1) to pure air
P
( Zi = 0).
FDS provides two types of mixture fraction model:
Two-parameter mixture fraction model: the first parameter (Z1 ) is the mass
fraction of unburned fuel and the second (Z2 ) is the mass fraction of burned
fuel, as for example the mass of the combustion products that originated
as fuel. FDS uses the two-parameter model by default.
Three-parameter mixture fraction model: this combustion model simulates
a two-step chemical reaction with three parameters. The first step of the
reaction is the oxidation of fuel to carbon monoxide and the second step
the oxidation of carbon monoxide to carbon dioxide. The three mixture
fraction components for the two step reaction are unburned fuel (Z1 ), mass
of fuel that has completed the first reaction step (Z2 ), and the mass of
fuel that has completed the second reaction step (Z3 ). See Section 6.4 on
page 51 to understand why and how to use the three-parameter model.
The mass fractions of all of the major reactants and products of combustion as
fuel, O2 , CO2 , H2 O, N2 , CO and soot can be derived from the mixture fraction
parameters by means of state relations: a set of pre-tabulated functions of the
mixture fraction parameters, Zi . In other words, the values of Zi in any given
mesh cell determines the mass fraction of all the gases listed.
The stoichiometry of the predominant gas phase combustion reaction is prescribed in the input file by one only REAC namelist group: the specified parameters are used to generate the table associating the mass fractions with Zi . FDS
defaults to propane combustion if no REAC line is entered.
In the mixture fraction model, each reaction is assumed to be of the form:
Cx Hy Oz Nv Otherw + O2 O2
CO2 CO2 + H2 O H2 O + CO CO + soot Soot + N2 N2 + H2 H2 + other Other
49
You need only specify the chemical formula of the fuel along with the yields of CO,
soot, and H2 , and the amount of hydrogen in the soot, Hf rac . For completeness
you can specify the N2 content of the fuel and the presence of other species.
FDS will use that information internally to determine the amount of combustion
products that are formed.
The species implicitly defined by FDS when doing a mixture fraction calculation
for gas phase combustion are as follows:
Table 6.1: Mixture fraction species
fuel, oxygen, nitrogen, water vapor, carbon dioxide, carbon
monoxide, hydrogen, soot, other
Note that these species are identified by a lowercase name, and are not to be
confused with the species identified by uppercase names defined by the SPEC
namelist groups. See Section 9.2 on page 70 for further discussion.
The Table 6.2 lists some of the parameters that may be prescribed on the REAC
line. Note that the various *YIELD are for well-ventilated, post-flame conditions.
There are options to predict various species yields in under-ventilated fire scenarios, but these special models still require the post-flame yields for CO, soot and
any other species listed in the table.
Table 6.2: REAC parameters
Parameter
Type
Description
Unit
ID
String
Identifier
Real
Real
Real
Real
OTHER
Real
MW_OTHER
Real
CO_YIELD
Real
g/mol
Default
28
50
H2_YIELD
Real
kg/kg
SOOT_YIELD
Real
kg/kg
0.01
SOOT_H_FRACTION
Real
HEAT_OF_COMBUSTION
Real
kJ/kg
EPUMO2
Real
kJ/kg
IDEAL
Logical
VISIBILITY_FACTOR
Real
MASS_EXTINCTION_COEFFICIENT
Real
0.1
13100
.FALSE.
3
m2 /kg
8700
51
6.4
An algorithm has been implemented that computes the gas phase combustion as
a two step reaction and that predicts the formation and destruction of CO. This
algorithm is used when the parameter CO_PRODUCTION is set to .TRUE. on the
MISC line:
&MISC CO_PRODUCTION=.TRUE. /
Even though the algorithm predicts CO formation and its eventual oxidation at
elevated temperature, it cannot predict the post-flame yield of CO. For example,
within a flashed over compartment, the algorithm predicts the elevated CO levels,
but it cannot predict the CO concentration of the exhaust gases that exit the
flaming region. Thus, even if using this model, you must specify the CO_YIELD
that is expected of a well-ventilated fire.
Note that when active, this algorithm requires the use of three parameters for
the mixture fraction instead of the two parameters used when it is disabled and
will therefore increase run times and memory usage accordingly. If the simulation
you are performing will not result in an under-ventilated fire, then there will be
little if any benefit to enabling the CO production algorithm.
6.5
Flame extinction
52
6.6
53
Type
Description
Unit
Default
NUMBER_RADIATION_ANGLES
Integer
104
RADIATIVE_FRACTION
Real
0.35
54
Chapter 7
Computational domain
Second, the computational domain is defined via the MESH namelist
group.
All FDS calculations must be performed within a domain that is made
up of rectilinear volumes called meshes. Each mesh is divided into
rectangular cells, the number of which depends on the desired resolution of the flow dynamics. Some initial conditions are prescribed
for the flow domain via the INIT namelist group.
7.1
MESH is the namelist group that defines the volume of the computational domain.
For example,
&MESH IJK=10,20,30, XB=0.0,1.0,0.0,2.0,0.0,3.0 /
defines a mesh that spans the volume starting at the origin (0., 0., 0.) and
extending 1 m in the positive x direction, 2 m in the positive y direction, and 3 m
in the positive z direction.
The mesh is subdivided into uniform cells via the parameter IJK. In this example,
the mesh is divided into 10 cm cubes: 10 cubes in x direction, 20 cubes in y
direction, and 30 cubes in z direction.
Any obstructions or vents that extend beyond the boundary of the mesh are cut
off at the boundary. There is no penalty for defining objects outside of the mesh,
and these objects will not appear in Smokeview either.
55
56
Note that it is best if the mesh cells resemble cubes, that is, the length, width
and height of the cells ought to be roughly the same.
Keep in mind that the Large Eddy Simulation technique (LES) is based on the
assumption that the numerical mesh should be fine enough to allow the formation
of eddies that are responsible for the mixing. In general, eddy formation is limited
by the largest dimension of a mesh cell, thus shrinking the mesh resolution in
one or two directions may not necessarily lead to a better simulation if the third
dimension is large.
Because an important part of the calculation uses a Poisson solver based on
Fast Fourier Transforms (FFTs) in the y and z directions, the second and third
dimensions of the mesh should each be of the form 2k 3m 5n , where k, m
and n are integers. For example, 64 = 26 , 72 = 23 32 and 108 = 22 33 are
good mesh cell divisions, but 37, 99 and 109 are not.
The first number of mesh cell divisions (the I in IJK) does not use FFTs and
need not be given as a product of small numbers.
Here is a list of numbers between 1 and 1024 that can be factored down to 2s,
3s and 5s:
Table 7.1: IJK values
2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24, 25, 27, 30, 32, 36, 40, 45,
48, 50, 54, 60, 64, 72, 75, 80, 81, 90, 96, 100, 108, 120, 125, 128, 135,
144, 150, 160, 162, 180, 192, 200, 216, 225, 240, 243, 250, 256, 270,
288, 300, 320, 324, 360, 375, 384, 400, 405, 432, 450, 480, 486, 500,
512, 540, 576, 600, 625, 640, 648, 675, 720, 729, 750, 768, 800, 810,
864, 900, 960, 972, 1000, 1024. . .
The following table summarizes some MESH parameters:
Table 7.2: MESH parameters
Parameter
Type
Description
ID
String
Identifier
IJK(3)
Integer
XB(6)
Real
Volume
Unit
Default
10
m
57
7.2
Multiple meshes
The computational domain can consist of many connected mesh. Each mesh
must have its MESH namelist group.
For example,
&MESH
&MESH
&MESH
&MESH
IJK=32,32,16,
IJK=32,32,16,
IJK=32,32,16,
IJK=32,32,16,
XB=0.0,1.6,0.0,1.6,0.0,0.8
XB=0.0,1.6,0.0,1.6,0.8,1.6
XB=0.0,1.6,0.0,1.6,1.6,2.4
XB=0.0,1.6,0.0,1.6,2.4,3.2
/
/
/
/
58
Figure 7.2: Mesh connections: (a) ideal, (b) allowed, and (c) forbidden
7.3
All geometric objects must conform to the rectangular mesh. If you create
geometrical objects that do not precisely conform to the underlying mesh, FDS
shifts them to the closest mesh cell as shown in Figure 7.3.
7.4
The most important numerical parameter in FDS is the grid cell size. CFD models
solve an approximate form of the conservation equations of mass, momentum,
and energy on a numerical grid. The error associated with the discretization of
the partial derivatives is a function of the size of the grid cells and the type of
differencing used. FDS uses second-order accurate approximations of both the
temporal and spatial derivatives of the Navier-Stokes equations, meaning that
the discretization error is proportional to the square of the time step or cell size.
In theory, reducing the grid cell size by a factor of 2 reduces the discretization
error by a factor of 4. However, it also increases the computing time by a factor
of 16 (a factor of 2 for the temporal and each spatial dimension). Clearly, there
is a point of diminishing returns as one refines the numerical mesh. Determining
what size grid cell to use in any given calculation is known as a grid sensitivity
study.
In general, you should build an FDS input file using a relatively coarse mesh,
and then gradually refine the mesh until you do not see appreciable differences
in your results.
A point of diminishing returns is reached when the improvement in the quality
of the results is outweighed by the cost of the computation. When this point is
reached depends on the application. It also depends on the quantities that are
of interest. Some quantities, like hot gas layer temperature or height, do not
typically require as fine a numerical grid as quantities such as the heat flux to
targets near the fire.
For simulations involving buoyant plumes, a measure of how well the flow field
is resolved is given by the non-dimensional expression D /x, where D is a
characteristic fire diameter and x is the nominal size of a mesh cell. D is
defined as:
D =
cp T g
!2
5
(7.1)
where Q is the heat release rate of the fire in kW, air density (1.2 mkg3 ),
cp air thermal capacity (1 kgkJK ), T ambient air temperature (293 K), g
gravitational acceleration (9.81 sm2 ).
The quantity D /x can be thought of as the number of computational cells
spanning the characteristic (not necessarily the physical) diameter of the fire.
60
The more cells spanning the fire, the better the resolution of the calculation.
It is better to assess the quality of the mesh in terms of this non-dimensional
parameter, rather than an absolute mesh cell size. For example, a cell size of
10 cm may be adequate, in some sense, for evaluating the spread of smoke and
heat through a building from a sizable fire, but may not be appropriate to study
a very small, smoldering source.
As an example, in the mesh sensitivity study for [NUREG 1824], the D /x
values ranged from 4 to 16. These values were used to adequately resolve plume
dynamics, along with other geometrical characteristics of the models as well.
This range does not indicate what values to use for all models, only what values
worked well for that particular set of models.
7.5
At the start of any calculation, the temperature is ambient everywhere, the flow
velocity is zero everywhere, nothing is burning, and the mass fractions of all
species are uniform.
To change the starting ambient conditions within some volumetric region of the
flow domain add lines of the form:
&INIT XB=0.5,0.8,2.1,3.4,2.5,3.6, TEMPERATURE=30. /
the initial temperature of the gas phase shall be 30C instead of the ambient
within the prescribed volume. This construct can also be used for DENSITY or
MASS_FRACTION(n).
The INIT construct may be useful in examining the influence of stack effect in
a building, where the temperature is different inside and out.
For setting initial temperature of a solid obstruction see Subsection 11.6.2.
Also the MISC namelist group can be used to set a variety of initial conditions.
An initial velocity on the domain can be prescribed via U0, V0, and W0 parameters.
Normally, the initial values of the gas velocity in each of the coordinate directions
are all 0 m/s, but there are a few applications where it is convenient to start the
flow immediately, like in an outdoor simulation involving wind.
A different ambient temperature of the domain can be prescribed via the TMPA
parameter.
Type
Description
Unit
DENSITY
Real
kg/m3
Ambient
MASS_FRACTION(n)
Real
kg/kg
Ambient
TEMPERATURE
Real
XB(6)
Real
Volume
Default
TMPA
62
Chapter 8
Materials
Third, some properties are set up, as the properties of each material
(MATL). This chapter covers RAMP (temperature dependent) namelist
group, too.
8.1
The properties of each material used in the model are designated via the MATL
namelist group. These properties indicate how rapidly the materials heat up, and
how they burn. Each MATL entry in the input file must have an ID that can be
referred by other namelist groups.
The following table summarizes some MATL parameters:
Table 8.1: MATL parameters
Parameter
Type
Description
ID
String
Identifier
DENSITY
Real
EMISSIVITY
Real
Emissivity
CONDUCTIVITY
Real
Thermal conductivity
CONDUCTIVITY_RAMP
String
SPECIFIC_HEAT
Real
Specific heat
Unit
kg/m3
Default
0.
0.9
W/m/K
0.
kJ/kg/K
0.
63
64
CHAPTER 8. MATERIALS
from previous page
SPECIFIC_HEAT_RAMP
String
HEAT_OF_COMBUSTION
Real
Heat of combustion
kJ/kg
0.
HEAT_OF_REACTION
Real
Heat of reaction
kJ/kg
0.
ABSORPTION_COEFFICIENT
Real
Absorption Coefficient
1/m
BOILING_TEMPERATURE
Real
Boiling temperature
8.2
50 000.
5000.
Thermal properties
The MATL namelist group can be used to specify thermal CONDUCTIVITY ( mWK ),
DENSITY ( mkg3 ), SPECIFIC_HEAT ( kgkJK ), and EMISSIVITY (0.9 by default) of
materials, for example:
&MATL ID=steel, EMISSIVITY=.95, DENSITY=7850.,
CONDUCTIVITY=45.8, SPECIFIC_HEAT=0.46, /
&MATL ID=concrete, DENSITY=2200.,
CONDUCTIVITY=1.2, SPECIFIC_HEAT=0.88, /
&MATL ID=copper, SPECIFIC_HEAT=0.38,
CONDUCTIVITY=387., DENSITY=8940. /
&MATL ID=gypsum plaster, CONDUCTIVITY=0.48,
SPECIFIC_HEAT=0.84, DENSITY=1440. /
Thermal properties like conductivity and specific heat can vary significantly with
temperature. In such cases, use the RAMP function like this:
&MATL ID=steel, SPECIFIC_HEAT_RAMP=c_steel,
CONDUCTIVITY_RAMP=k_steel, DENSITY=7850. /
&RAMP ID=c_steel, T=20., F=0.45 /
&RAMP ID=c_steel, T=377., F=0.60 /
&RAMP ID=c_steel, T=677., F=0.85 /
&RAMP ID=k_steel, T=20., F=48. /
&RAMP ID=k_steel, T=677., F=30. /
&MATL ID=calcium silicate,
CONDUCTIVITY_RAMP=k_casi, DENSITY=770.,
SPECIFIC_HEAT=0.96 /
65
For this kind of ramps the parameter F is the value of the actual physical quantity.
If CONDUCTIVITY_RAMP is used, there should be no value of CONDUCTIVITY
given. Note also that for values of temperature, T, below and above the given
range, FDS will assume a constant value equal to the first or last F specified.
Each set of RAMP lines must be listed with monotonically increasing T. The
following table summarizes some RAMP (temperature) parameters:
Table 8.2: RAMP (temperature) parameters
8.3
8.3.1
Parameter
Type
Description
ID
String
Identifier
Real
Temperature
Real
Function value
Unit
Default
Burning properties
Solids
The MATL namelist group can be used to specify the parameters employed in
the solid phase pyrolysis process. As already explained in Chapter 6 on page 45,
pyrolysis is the decomposition or transformation of a compound caused by heat
that produce the gaseous fuel, that is burned during gas phase combustion.
FDS contains a fairly general description of multi-layered, multi-component,
multi-reaction solid: while burning, each material can undergo several reactions
that may occur at different temperatures and consume different amounts of heat.
Each individual reaction can produce a single solid residue, water vapor, or fuel
gas.
Here is an example of a material that burns in the neighborhood of 350C,
converting all its mass to fuel gases with NU_FUEL(1)=1.:
66
CHAPTER 8. MATERIALS
8.3.2
Liquids
The MATL namelist group is also used to specify the parameters for burning
liquids.
For a liquid fuel, the thermal properties are similar to those of a solid material,
with a few exceptions. The evaporation rate of the fuel is governed by the
Clausius-Clapeyron equation. The only drawback of this approach is that the fuel
gases burn regardless of any ignition source. Thus, if a liquid fuel is specified,
the fuel begins burning at once.
As an example:
&MATL ID=ethanol, EMISSIVITY=1.0, NU_FUEL=0.97,
HEAT_OF_REACTION=880.,
CONDUCTIVITY=0.17, SPECIFIC_HEAT=2.45, DENSITY=787.,
ABSORPTION_COEFFICIENT=40., BOILING_TEMPERATURE=76. /
The inclusion of BOILING_TEMPERATURE on the MATL line tells FDS to use its
liquid pyrolysis model.
It also automatically sets N_REACTIONS=1: the only reaction is the phase change
from liquid to gaseous fuel. Thus, HEAT_OF_REACTION in this case is the latent
heat of vaporization. The gaseous fuel yield, NU_FUEL, is 0.97 instead of 1 to
account for impurities in the liquid that do not take part in the combustion
process.
The thermal conductivity, density and specific heat are used to compute the
loss of heat into the liquid via conduction using the same one-dimensional heat
transfer equation that is used for solids. Obviously, the convection of the liquid
is important, but is not considered in the model.
Note also the ABSORPTION_COEFFICIENT for the liquid. This denotes the absorption in depth of thermal radiation. Liquids do not just absorb radiation at
the surface, but rather over a thin layer near the surface. Its effect on the burning
rate is significant.
8.3.3
67
The HEAT_OF_COMBUSTION is the energy released per unit mass of fuel gas that
mixes with oxygen and burns. This has nothing to do with the pyrolysis process.
This parameter would better be used in gas phase combustion!
If you remember what was said in Chapter 6 on page 45, whereas there can be
many types of combustibles in an FDS fire simulation, only one gaseous fuel can
be simulated by FDS. The stoichiometry of the predominant reaction is specified
via the REAC namelist group.
In fact, the HEAT_OF_COMBUSTION specified on the REAC line pertains to the only
gaseous fuel modeled in gas phase combustion.
The HEAT_OF_COMBUSTION specified on the MATL line is that specific to gaseous
fuel produced by pyrolysis.
If the HEAT_OF_COMBUSTION is specified on the MATL line, FDS automatically
adjust the mass loss rate of the gaseous fuel injected by the pyrolyzing material,
so that the corrected mass loss rate multiplied by the single, global, gas phase
heat of combustion produces the expected heat release rate.
If, for example, the HEAT_OF_COMBUSTION specified on the REAC line is twice
that specified on the MATL line, the mass of pyrolyzing material contained within
wall cell will be decremented by that determined by the pyrolysis model, but the
mass of fuel gas added to gas phase would be reduced by 50%.
8.4
Properties hell
68
CHAPTER 8. MATERIALS
A prediction is called blind, if the results are not compared to experimental measures. Grid sensitivity and uncertain material properties make blind predictions
of fire growth on real materials beyond the reach of the current version of the
model.
However, the model can still be used for a qualitative assessment of fire behavior
as long as the uncertainty in the flame spread rate is recognized.
For engineering level applications, its strongly advised to recur to simplified fire
modeling, directly prescribing the HRR of the fire scenario taken from literature
or direct experimentation, as shown in Section 11.4.6 on page 84.
8.5
Here are some web resources for material property data; a broader list of links is
maintained on FDS web site:
NIST Chemistry Webbook:
http://webbook.nist.gov/chemistry/
ChemFinder:
http://chemfinder.cambridgesoft.com/
Parital INSC Material Properties Database:
http://www.insc.anl.gov/matprop/thermo.php
Cone calorimeter data from Worcester Polytechnic Institute:
http://www.wpi.edu/Academics/Depts/Fire/Lab/Cone/Data
MatWeb:
http://matweb.com
Engineering Toolbox:
http://engineeringtoolbox.com
Chapter 9
Extra gas species
Third, some properties are set up, as the properties of extra gas
species (SPEC).
9.1
Gases that are introduced into the domain that are neither reactants nor products
of combustion, like carbon dioxide from an extinguisher, are tracked separately
from the mixture fraction model for gas phase combustion via an additional scalar
transport equation. In fact, there does not need to be any fire at all, as FDS can
be used to transport a mixture of non-reacting ideal gases.
The namelist group SPEC is used to specify each additional species. Each SPEC
line should include at the very least the name of the species via a character string
called ID.
The following gases are predefined in FDS and do not need any property to be
set up:
Table 9.1: Predefined extra species
AIR, ARGON, CARBON DIOXIDE, CARBON MONOXIDE, HELIUM, HYDROGEN,
METHANE, NITROGEN, OXYGEN, PROPANE, WATER VAPOR.
For example:
&SPEC ID=HELIUM /
69
70
adds the predefined HELIUM gas as an additional specie that can be injected in
the domain.
To specify a gas not included in the list, the user should input several chemical
properties. See [FDS5 users guide] for broader description.
If the ambient initial mass fraction of an extra gas specie is something other than
0, then the parameter MASS_FRACTION_0 is used to specify it. For example, the
line:
&SPEC ID=ARGON, MASS_FRACTION_0=0.1 /
specifies that 10% in mass of ARGON is to be included in the calculation, in
addition to the 90% unlisted default ambient specie named AIR.
The following table summarizes some SPEC parameters:
Table 9.2: SPEC parameters
Parameter
Type
Description
ID
String
Identifier
MASS_FRACTION_0
Real
9.2
Unit
Default
These extra gas species are identified by an uppercase name, and are not to be
confused with the lowercase species implicitly defined by FDS when doing a mixture fraction calculation for gas phase combustion, as fuel, oxygen, nitrogen,
water vapor, carbon dioxide. . . See Section 6.3 on page 46 for reference.
If the user introduces an extra gas in the calculation that is the same as a product
of combustion, as in:
&SPEC ID=CARBON DIOXIDE /
FDS will take into account two different gases: the implicitly defined carbon
dioxide and the extra gas species CARBON DIOXIDE, injected for example to
simulate a CO2 extinguisher.
71
The first is a product of combustion, while the second is just another gas: it
does not participate to combustion, but it can dilute oxygen and contribute to
fire suppression.
The two gases are tracked separately: carbon dioxide is tracked via the mixture fraction variable and CARBON DIOXIDE is tracked via its own transport
equation.
72
Chapter 10
Lagrangian particles
Third, some properties are set up, as the properties of Lagrangian
particles (PART).
10.1
Lagrangian particles are used in FDS as water or liquid fuel droplets, flow tracers,
and various other objects that are not defined or confined by the numerical mesh.
Sometimes the particles have mass, sometimes they do not. Some evaporate,
absorb radiation, etc. PART is the namelist group that is used to prescribe
parameters associated with Lagrangian particles.
All Lagrangian particles must be explicitly defined via the PART namelist group.
Once a particular type of particle or droplet has been described using a PART
line, then the name of that particle or droplet type is invoked elsewhere in the
input file via the parameter PART_ID.
There are no reserved PART_ID, all must be defined. For example, an input
file may have several PART lines that include the properties of different types of
Lagrangian particles:
&PART ID=my tracer, MASSLESS=.TRUE. /
Then these Lagrangian particles can be introduced in the fluid flow from a solid
surface via a boundary condition as explained in Section 11.8 on page 91.
The following table summarizes some PART parameters:
73
74
Type
Description
ID
String
Identifier
MASSLESS
Logical
Massless particles
.FALSE.
WATER
Logical
Water droplets
.FALSE.
AGE
Real
Droplet lifetime
COLOR
String
Color
RGB(3)
Integer
Color
DT_INSERT
Real
XB(6)
Real
10.2
Unit
Default
100000.
0.01
Massless particles
The simplest use of Lagrangian particles is for visualization, in which case the
particles are considered massless tracers. In this case, the particles are defined
via the line:
&PART ID=my tracer, MASSLESS=.TRUE. /
10.3
Water droplets
WATER=.TRUE. declares that the liquid droplets evaporate into WATER VAPOR,
a separate gas phase specie that is automatically added to the calculation by
this command. By default, WATER=.FALSE., even though the default properties
of droplets are that of water. Setting WATER=.TRUE. instructs FDS to add
WATER VAPOR as an explicitly defined specie, and it also invokes appropriate
constants related to the absorption of thermal radiation by the water droplets.
It also causes the droplets to be colored blue in Smokeview.
For example:
&PART ID=droplets, WATER=.TRUE. /
75
When a droplet strikes a solid surface, it sticks and is reassigned a new speed
and direction. If the surface is horizontal, the direction is randomly chosen. If
vertical, the direction is downwards.
76
Chapter 11
Boundary conditions
Third, some properties are set up, as the types of boundary conditions
(SURF).
This is the most challenging part of setting up the simulation: first,
for both real and simulated fires, the growth of the fire is very sensitive to the thermal properties of the surrounding materials. Second,
even if all the material properties are known to some degree, the
physical phenomena of interest may not be simulated properly due
to limitations in the model algorithms or resolution of the numerical
mesh.
It is your responsibility to supply the thermal properties of the materials, and then assess the performance of the model to ensure that
the phenomena of interest are being captured.
This chapter covers RAMP (time dependent) namelist group, too.
11.1
This chapter describes how to specify the properties of the bounding surfaces
of the flow domain. The namelist group that defines the types of boundary
conditions is SURF. For example,
&SURF ID=warm_surface, TMP_FRONT=25. /
defines a surface named warm_surface. Its temperature is fixed to 25C.
77
78
While building the solid geometry, the types of boundary conditions will be applied
to each of the bounding surfaces of the flow domain: the faces of the solid
obstructions and the exterior boundaries of the computational domain.
The following table summarizes some SURF parameters:
Table 11.1: SURF parameters
Parameter
Type
Description
Unit
Default
ID
String
Identifier
ADIABATIC
Logical
EMISSIVITY
Real
Emissivity
HRRPUA
Real
kW/m2
0.
MLRPUA
Real
kg/m2 /s
0.
HEAT_OF_VAPORIZATION
Real
kJ/kg
0.
IGNITION_TEMPERATURE
Real
Ignition temperature
MATL_ID(i,j)
String
MATL_MASS_FRACTION(i,j)
Real
Mass fraction of
components (Layer,
Component)
THICKNESS(i)
Real
BACKING
String
TMP_BACK
Real
20.
TMP_FRONT
Real
20.
TMP_INNER
Real
20.
BURN_AWAY
Logical
NET_HEAT_FLUX
Real
kW/m2
0.
CONVECTIVE_HEAT_FLUX
Real
kW/m2
0.
.FALSE.
0.9
5000.
0.
VOID
.FALSE.
79
Real
kW/m2
MASS_FLUX_TOTAL
Real
kg/m2 /s
MASS_FLUX(n)
Real
kg/m2 /s
0.
MASS_FRACTION(n)
Real
VEL
Real
Normal velocity
m/s
0.
VEL_T(2)
Real
Tangential velocity
components
m/s
0.,0.
VOLUME_FLUX
Real
m3 /s
POROUS
Logical
TAU_MF(n)
Real
1.
TAU_Q
Real
1.
TAU_T
Real
1.
TAU_V
Real
1.
RAMP_MF(n)
String
RAMP_Q
String
RAMP_T
String
RAMP_V
String
COLOR
String
Color
RGB(3)
Integer
Color
TRANSPARENCY
Real
Transparency
PART_ID
String
Lagrangian particle ID
11.2
0.
0.
.FALSE.
255,204,102
1
FDS contains some predefined boundary conditions that do not need to be set
within a SURF namelist group: INERT, OPEN, and MIRROR.
An INERT boundary condition represents an isothermal wall with the temperature INERT
fixed at ambient temperature. INERT allows for heat loss and is not the same
80
An OPEN boundary condition assumes that ambient conditions exist beyond that
VENT. OPEN can only be prescribed at an exterior boundary of the computational
domain.
If you are concerned about the flow through a particular vent, do not use an OPEN
boundary because the constant pressure assumption is just an approximation.
You should extend your computational domain beyond the vent and build it out
of obstructions, as shown in Figure 11.1. The flow in and out will then be treated
naturally as part of the solution of the governing equations.
MIRROR
11.3
81
11.4
In the following Sections a list of simple boundary conditions are presented. More
complex examples can be found in Chapter 16 on page 133.
11.4.1
Adiabatic surface
For some special applications, it is often desired that a solid surface be adiabatic,
that is, there is no net heat transfer (radiative and convective) from the gas to
the solid. The line:
&SURF ID=adiabatic_surface, ADIABATIC=.TRUE. /
defines an adiabatic surface named adiabatic_surface. FDS will compute a
wall temperature so that the sum of the convective and radiative fluxes to the
wall is zero.
11.4.2
The line:
&SURF ID=warm_surface, TMP_FRONT=25. /
fixes the surface temperature to 25C.
The following line specifies a NET_HEAT_FLUX in units of kW/m2 :
82
FDS will compute the surface temperature required to ensure that the combined
radiative and convective heat flux from the surface is equal to the prescribed flux.
The following line specifies separately the CONVECTIVE_HEAT_FLUX, in units of
kW/m2 and the radiative heat flux using TMP_FRONT temperature in C and
EMISSIVITY:
&SURF ID=warm_surface, CONVECTIVE_HEAT_FLUX=25.,
TMP_FRONT=150., EMISSIVITY=.9 /
Sign convention
The sign convention is that positive heat flux from a surface heats up the gas.
11.4.3
Fans
83
supplies air to the domain at a mass flow rate of 1.2 kg/s. The MASS_FLUX_TOTAL
is converted internally into a velocity boundary condition whose value for an
outflow is adjusted based on the local density.
The line:
&SURF ID=louver, VEL=-1.2, VEL_T=0.5,-0.3 /
represents a boundary condition for a louvered vent that pushes air into the space
with a normal velocity of 1.2 m/s and a tangential velocity of 0.5 m/s in either
the x or y direction and -0.3 m/s in either the y or z direction, depending on
what the normal direction is.
In cases of limited mesh resolution, it may not be possible to describe a louvered
vent or slot diffuser using VEL_T because there may not be enough mesh cells
spanning the opening. In these cases, you might consider simply specifying a flat
plate obstruction in front of the VENT with an offset of one mesh cell. The plate
will simply redirect the air flow in all lateral directions.
Note that either VEL, VOLUME_FLUX, or MASS_FLUX_TOTAL should be prescribed,
not both. The choice depends on whether an exact velocity is desired at a given
vent, or whether the given volume flux or mass flux is desired.
The sign convention is that positive volume or mass flux is drawn out of the Sign convention
domain.
11.4.4
There are two species boundary conditions that can be specified: MASS_FLUX(n)
and MASS_FRACTION(n) where n refers to a given specie SPEC via its place in
the input file.
If the mass fraction of the n specie is to be some value at a forced flow boundary
(VEL or MASS_FLUX_TOTAL) set MASS_FRACTION(n) equal to the desired mass
fraction on the appropriate SURF line.
If the mass flux of the n specie is desired, set MASS_FLUX(n) instead of MASS_FRACTION(n).
If MASS_FLUX(n) is set, no VEL should be set. It is automatically calculated based
on the mass flux.
The inputs MASS_FLUX(n) and MASS_FRACTION(n) should only be used for
inflow boundary conditions. MASS_FLUX(n) should always be positive with units
of kg/m2 /s.
For example, the lines:
84
specify that ARGON and HELIUM are to be included in the calculation in addition
to the unlisted default AIR. At the inlet, a mixture of helium (20% by mass),
argon (10% by mass because nothing different is specified), and air (70% by mass
making up the rest) flows out at a velocity of 0.3 m/s into the flow domain.
11.4.5
11.4.6
Solids and liquid fuels can be modeled by specifying their relevant properties via
the MATL namelist group. However, if you simply want to specify a fire of a
given Heat Release Rate (HRR), you need not specify any material properties.
A specified fire is basically modeled as the ejection of gaseous fuel from a solid
surface or vent. This is essentially a burner, with a specified heat release rate
per unit area, HRRPUA, in units of kW/m2 . For example, the line:
&SURF ID=burner, HRRPUA=500. /
defines a surface that injects a flow of fuel gas that, when properly mixed with
ambient air, burns and produces 500 kW per m2 of emitting surface.
85
11.5
11.6
The thermal and burning properties of each material are specified via the MATL
namelist group. Then materials are invoked by the SURF namelist group to define
boundary conditions for solids.
FDS performs a one-dimensional heat transfer calculation at each surface of the
solid to provide a reasonable bounding surface temperature for the gas phase
calculation.
A solid boundary can consist of one or multiple layers of different materials, and
each layer can consist of multiple material components.
These combinations of layers and material components are specified on the SURF
line via the array parameter called MATL_ID(i,j). The argument i is an integer
indicating the layer index, starting at 1, the layer at the exterior boundary. The argument j is an integer indicating the component index. MATL_ID(2,3)=brick
indicates that the third material component of the second layer is brick.
The components of the solid mixtures are treated as pure substances with no
voids.
The following is an example of a multi-layer, multi-component surface:
86
11.6.1
Backing
The heat transfer condition of the innermost layer of a wall is set using the
BACKING parameter. This parameter can be set to VOID, INSULATED, or EXPOSED.
87
For example:
VOID
INSULATED
EXPOSED
88
11.6.2
A solid obstruction can be given an initial temperature via the parameter TMP_INNER
on the SURF line:
11.7
When solid obstacles are activated (See Section 12.7 on page 102), the prescribed
boundary conditions for their faces begin to come into effect.
After activation, temperatures, velocities, burning rates, etc., are ramped-up
from their initial values to their prescribed values in roughly 1 s, because nothing
can happen instantaneously.
This default 1 s ramp can be modified by the user: many SURF parameters can
become time dependent and follow a different trend after the activation instant.
11.7.1
Simplified ramps
The parameters TAU_Q, TAU_T, TAU_V, TAU_MF(n) indicate that the heat release rate (HRRPUA), surface temperature (TMP_FRONT), normal velocity (VEL,
VOLUME_FLUX) or MASS_FLUX_TOTAL, mass fraction or mass flux of specie n are
to ramp up to their prescribed values in TAU_* seconds after SURF activation and
remain there.
Sign convention
89
11.7.2
90
Figure 11.4: VEL and TMP_FRONT as function of time after SURF activation
Type
Description
ID
String
Identifier
Real
Time
Real
Function value
Unit
Default
11.8
91
Lagrangian particles can be introduced into the fluid flow from a solid surface
via boundary conditions.
For example, the following line defines a type of Lagrangian particles:
&PART ID=my tracer, MASSLESS=.TRUE. /
These Lagrangian particles are then introduced into the fluid flow from a solid
surface that has the following boundary condition prescribed:
&SURF PART_ID=my tracer /
Note that a surface on which particles are specified must have a non-zero normal
velocity directed into the computational domain. This happens automatically if
the surface is burning, hence injecting fuel gas into the flow domain, but must
be specified if it is not.
92
Chapter 12
Solid geometry
Fourth, the solid geometry is entered via OBST, VENT, HOLE namelist
groups.
A considerable amount of work in setting up a calculation lies in
specifying the geometry of the space to be modeled and applying
boundary conditions to these objects. The geometry is described in
terms of obstructions to the gas phase flow. A boundary condition
needs to be assigned to each bounding surface of the gas phase domain describing its thermal properties. Both solid obstruction faces
and the exterior boundaries of the computational domain need a
boundary condition assigned. A fire is just one type of boundary
condition.
12.1
The namelist group OBST contains parameters used to define obstructions. Each
OBST line define a solid volume within the computational domain.
The boundary condition for whole faces of the obstruction can be easily specified prescribing one of the following three parameters: SURF_ID, SURF_IDS, or
SURF_ID6.
The parameter SURF_ID designates one SURF boundary condition to apply to all
the faces of the obstruction. For example:
94
builds a solid obstruction and apply the brick wall surface type to all its six
faces.
If the obstruction has different properties for its top, sides and bottom, use instead the parameter SURF_IDS, an array of three character strings specifying the
boundary condition for the top, sides and bottom of the obstruction, respectively.
For example:
&OBST XB=2.3,4.5,1.3,4.8,0.0,9.2,
SURF_IDS=burner,brick wall,INERT /
builds a solid obstruction and applies the burner surface type to the top face
(+z direction), brick wall surface type to sides, and INERT surface type to
the bottom face (z direction).
If the obstruction has different properties for all its faces, use instead the parameter SURF_ID6, an array of six character strings specifying the boundary condition
for each face. For example:
&OBST XB=2.3,4.5,1.3,4.8,0.0,9.2,
SURF_ID6=bc-x,bc+x,bc-y,bc+y,bc-z,bc+z /
builds a solid obstruction and applies:
the bc-x surface type to the x = 2.3 face (face in x direction),
the bc+x surface type to the x = 4.5 face (face in +x direction),
the bc-y surface type to the y = 1.3 face (face in y direction),
the bc+y surface type to the y = 4.8 face (face in +y direction),
the bc-z surface type to the z = 0.0 face (face in z direction),
the bc+z surface type to the z = 9.2 face (face in +z direction).
Note that SURF_ID6 complies to the same convention as the XB parameter.
The following table summarizes some OBST parameters:
95
Type
Description
Unit
Default
XB(6)
Real
Volume
SAWTOOTH
Logical
Sawtooth
THICKEN
Logical
.FALSE.
SURF_ID
String
INERT
SURF_IDS(3)
String
INERT
SURF_ID6(6)
String
INERT
ALLOW_VENT
Logical
.TRUE.
PERMIT_HOLE
Logical
.TRUE.
COLOR
String
Color
RGB(3)
Integer
Color
TRANSPARENCY
Real
Transparency
OUTLINE
Logical
DEVC_ID
String
CTRL_ID
String
.TRUE.
255,204,102
1
.TRUE.
96
12.2
The HOLE namelist group is used to carve a hole out of an existing obstruction
or set of obstructions. To do this, add lines of the form:
&HOLE XB=2.0,4.5,1.9,4.8,0.0,9.2 /
Any solid mesh cells within the volume 2.0 < x < 4.5, 1.9 < y < 4.8, 0.0 <
z < 9.2 are removed. Obstructions intersecting the volume are broken up into
smaller blocks.
If the hole represents a door or window, a good rule of thumb is to punch more
than enough to create the hole. This ensures that the hole is created through
the entire obstruction. For example:
&OBST XB=1.0,1.1,0.0,5.0,0.0,3.0 /
&HOLE XB=0.99,1.11,2.0,3.0,0.0,2.0 /
the OBST line denotes a wall 0.1 m thick; the HOLE line creates a door. The extra
centimeter added to the x coordinates of the hole make it clear that the hole is
to punch through the entire obstruction.
If an obstruction is not to be punctured by a HOLE, add the parameter PERMIT_HOLE=.FALSE.
to the OBST line.
Note that a HOLE has no effect on a VENT or a mesh boundary. It only applies
to obstructions.
The following table summarizes some HOLE parameters:
Table 12.2: HOLE parameters
Parameter
Type
Description
Unit
XB(6)
Real
Volume, cutout
COLOR
String
RGB(3)
Integer
TRANSPARENCY
Real
DEVC_ID
String
CTRL_ID
String
Default
97
12.3
OBST namelist group can easily prescribe boundary conditions of entire faces of
obstacles. But very often you will need to apply a particular boundary condition
to a rectangular patch of an entire face or to the exterior boundaries of the
computational domain.
The VENT namelist group is used to prescribe these particular boundary conditions:
on flat faces adjacent to obstructions,
or exterior boundaries of the computational domain.
For example, the lines:
&VENT XB=1.0,2.0,2.0,2.0,1.0,3.0, SURF_ID=burner /
&OBST XB=0.0,5.0,2.0,3.0,0.0,4.0, SURF_ID=brick wall /
build a solid obstacle made of brick wall and apply a burner boundary condition
to a rectangular patch on the solid face in y direction.
To set boundary conditions to exterior boundaries of the computational domain
proceed as in the following example:
98
Figure 12.3: Setting boundary conditions to exterior boundaries of the computational domain
!!! Computational domain
&MESH IJK=32,32,16, XB=0.0,1.6,0.0,1.6,0.0,0.8 /
&MESH IJK=32,32,16, XB=0.0,1.6,0.0,1.6,0.8,1.6 /
!!! Properties
&SURF ID=brick wall, COLOR=BROWN /
&SURF ID=floor, COLOR=SILVER /
&SURF ID=ceiling, COLOR=SLATE GRAY /
!!! Solid geometry
&VENT XB=0.0,0.0,0.0,1.6,0.0,1.4, SURF_ID=brick wall /
lower part of -x exterior boundary
&VENT XB=0.0,0.0,0.0,1.6,1.4,1.6, SURF_ID=OPEN /
upper part of -x exterior boundary
&VENT XB=1.6,1.6,0.0,1.6,0.0,1.6, SURF_ID=OPEN /
+x exterior boundary
&VENT XB=0.0,1.6,0.0,0.0,0.0,1.6, SURF_ID=brick wall /
-y exterior boundary
&VENT XB=0.0,1.6,1.6,1.6,0.0,1.6, SURF_ID=OPEN /
+y exterior boundary
&VENT XB=0.0,1.6,0.0,1.6,0.0,0.0, SURF_ID=floor /
-z exterior boundary
&VENT XB=0.0,1.6,0.0,1.6,1.6,1.6, SURF_ID=ceiling /
+z exterior boundary
The result is shown in Figure 12.3.
A shortcut exists to select mesh boundaries: the MB parameter. This manual will
not cover it because it leads to error and confusion when employed with multiple
meshes.
99
Only one VENT may be specified for any given wall cell. If additional VENT
lines are specified for a given wall cell, FDS will output a warning message
and ignore the subsequent lines. The first defined VENT will be applied:
first-come, first-served.
VENT overrides the boundary condition defined by the underlying obstruction: VENT boundary condition wins on OBST boundary condition.
A VENT must always be attached to a solid obstruction or exterior boundaries of the computational domain: a flying VENT is not allowed.
If FDS outputs an error message requesting that the orientation of a VENT
be specified, check to make sure that the VENT is a plane and that it is
not buried within a solid obstruction.
The following table summarizes some VENT parameters:
Table 12.3: VENT parameters
Parameter
Type
Description
Unit
XB(6)
Real
Face
Real
Plane
IOR
Integer
Index of orientation
SURF_ID
String
DEVC_ID
String
CTRL_ID
String
12.4
Default
INERT
INERT is the default SURF boundary condition for all solid surfaces and the
exterior boundary of the computational domain, if not otherwise specified.
If you want to change the default boundary condition, set SURF_DEFAULT pa-
100
12.5
The lines:
101
12.6
Obstructions can be flat. Often, thin sheets, like a window, form a barrier,
but if the numerical mesh is coarse relative to the thickness of the barrier, the
obstruction might be unnecessarily large if it is assumed to be one layer of mesh
cells thick.
All faces of an obstruction are shifted to the closest mesh cell. If the obstruction
is very thin, the two faces may be approximated on the same cell face.
FDS and Smokeview render this obstruction as a thin sheet, but it is allowed to
have thermally thick boundary conditions, in other words a not null THICKNESS
of the applied SURF.
A thin sheet obstruction can only have one velocity vector on its face, thus a gas
cannot be injected reliably from a thin obstruction because whatever is pushed
from one side is necessarily pulled from the other. For full functionality, the
obstruction should be specified to be at least one mesh cell thick.
Thin sheet obstructions work fine as flow barriers, but other features are fragile
and should be used with caution.
102
12.7
By default the objects and their prescribed boundary conditions are activated
and come to existence when the calculation starts, then they are deactivated and
disappear when the calculation ends.
If needed, activation and deactivation times of single OBST, VENT and HOLE can
be prescribed by a control logic, as explained in Chapter 13 on page 105.
12.8
The efficiency of FDS is due to the simplicity of its numerical mesh. However,
there are situations in which certain geometric features do not conform to the
rectangular mesh, such as a sloped ceiling or roof. In these cases, construct the
curved geometry using rectangular obstructions, a process sometimes called stair
stepping.
A concern is that the stair stepping changes the flow pattern near the wall.
To lessen the impact of stair stepping on the flow field near the wall, prescribe
the parameter SAWTOOTH=.FALSE. on each OBST line that makes up the stair
stepped obstruction. The effect of this parameter is to prevent vorticity from
being generated at sharp corners, in effect smoothing out the jagged steps that
make up the obstruction.
For example, the lines:
&OBST XB=0.00, 0.05,-0.01, 0.01, 0.00, 0.05,
SAWTOOTH=.FALSE., COLOR=GREEN /
&OBST XB=0.05, 0.10,-0.01, 0.01, 0.00, 0.10,
SAWTOOTH=.FALSE., COLOR=GREEN /
&OBST XB= 0.10, 0.15,-0.01, 0.01, 0.05, 0.15,
SAWTOOTH=.FALSE., COLOR=GREEN /
...
&OBST XB=0.00, 0.05,-0.01, 0.01, 0.05, 0.10,
SAWTOOTH=.TRUE., COLOR=TEAL /
103
Figure 12.4: Flow velocity on two sides of an oblique wall. Lower side has
SAWTOOTH=.FALSE. set.
&OBST XB=0.05, 0.10,-0.01, 0.01, 0.10, 0.15,
SAWTOOTH=.TRUE., COLOR=TEAL /
&OBST XB=0.10, 0.15,-0.01, 0.01, 0.15, 0.20,
SAWTOOTH=.TRUE., COLOR=TEAL /
...
create a two sided oblique wall. The resulting flow is shown in Figure 12.4.
This is not a complete solution of the problem, but it does provide a simple
way of ensuring that the flow field around a non-rectangular obstruction is not
inhibited by extra drag created at sharp corners.
12.9
104
12.10
Chapter 13
Devices and control logic
Fifth, some control logic and automation is introduced via PROP,
DEVC, CTRL namelist groups.
Devices can be used to control various actions, like creating and
removing obstructions, or activating and deactivating fans and vents.
13.1
From the point of view of FDS, sprinklers, smoke detectors, heat flux gauges,
timers, thermocouples, etc., are devices that operate in specific ways depending
on the properties assigned to them.
All devices are designated via the DEVC namelist group. The various parameters
associated to devices can be grouped and entered in a PROP namelist group.
Each PROP line is identified by a unique ID, and it is invoked by the DEVC lines
that share the same properties. For example, these lines:
106
Type
Description
Unit
ID
String
Identifier
QUANTITY
String
XB(6)
Real
XYZ(3)
Real
Point of measurement
IOR
Integer
Index of orientation
ORIENTATION(3)
Real
Direction vector
PROP_ID
String
SETPOINT
Real
TRIP_DIRECTION
Integer
INITIAL_STATE
Logical
LATCH
Logical
Default
0,0,-1
1
.FALSE.
.TRUE.
13.2
107
Examples of devices
13.2.1
Timer
13.2.2
Thermometer
13.2.3
Smoke detector
A smoke detector is defined in the input file with an entry similar to:
&PROP ID=acme smoke detector, QUANTITY=CHAMBER OBSCURATION,
LENGTH=1.8, ACTIVATION_OBSCURATION=3.28 /
&DEVC ID=SD_29, PROP_ID=acme smoke detector, XYZ=2.3,4.6,3.4 /
The SD_29 smoke detector has the following properties:
LENGHT is the characteristic length for the single parameter Heskestad
model and defaults to 1.8 m.
ACTIVATION_OBSCURATION threshold can be set according to the value
provided by the manufacturer. The default setting is 3.28%/m.
The smoke detector changes its state following the specific activation algorithm.
108
13.2.4
13.2.5
m s.
109
This example defines a heat detector, which uses essentially the same activation
algorithm as a sprinkler, without the water spray:
13.3
In many fire scenarios, the opening or closing of a door or window can lead to
dramatic changes in the course of the fire. Sometimes these actions are taken
intentionally, sometimes as a result of the fire. Within the framework of an FDS
calculation, these actions are represented by the creation or removal of solid
obstacles, or the opening or closing of vents.
The change of state of a device can be used to trigger an action to occur, like
activating and deactivating obstructions, boundary conditions and holes. For
example, devices change of state can create or remove obstructions, switch on
or off burners, ventilators and fans.
For example, in the lines:
110
111
13.4
If you desire to control FDS objects using more complex logic than can be provided by the use of a single device and its SETPOINT, control functions can be
specified using the CTRL namelist group.
A control function take as input the outputs of one or more devices and control
functions. In this manner, complicated behaviors can be simulated by making
functions of other functions. For most of the control function types, the logical
value output of the devices and control functions and the time they last changed
state are used as the inputs.
For any object that a DEVC_ID can be specified for (such as OBST or VENT), a
CTRL_ID can be specified instead.
See [FDS5 users guide] for broader discussion of the topic.
112
Chapter 14
Output
Finally, the user prescribes the output quantities (DEVC, SLCF, BNDF,
ISOF).
All output quantities must be specified at the start of the calculation. In most cases, there is no way to retrieve information after the
calculation ends if it was not specified from the start.
14.1
Prescribing output
FDS computes the temperature, density, pressure, velocity and chemical composition within each numerical grid cell at each discrete time step. There are
typically hundreds of thousands to millions of grid cells and thousands to hundreds of thousands of time steps. In addition, FDS computes at solid surfaces
the temperature, heat flux, mass loss rate, and various other quantities.
So the user must carefully select what data to save, much like one would do
in designing an actual experiment. Even though only a small fraction of the
computed information can be saved, the output typically consists of fairly large
data files (it can be many GBytes!).
Remember that all output quantities must be specified at the start of the calculation. Before a calculation is started, carefully consider what information should
be saved.
Typical output quantities for the gas phase include:
Gas temperature;
Gas velocity;
113
114
115
14.2
The namelist group DUMP contains parameters that control the rate at which
output files are written, and various other global parameters associated with
output files.
For example, NFRAMES parameter is the number of output dumps per calculation.
The default is 1000. Device data, slice data, particle data, isosurface data, 3D
smoke data, boundary data, solid phase profile data, and control function data are
saved every (T_END - T_BEGIN) / NFRAMES seconds unless otherwise specified.
The following table summarizes some DUMP parameters:
Table 14.1: DUMP parameters
Parameter
NFRAMES
14.3
Type
Description
Unit
Integer
Default
1000
The same devices DEVC used for control logic (see Chapter 13 on page 105)
are employed to save a given quantity at a single point in space so that this
quantity can be plotted as a function of time, like for example a thermocouple
temperature measurement.
The prescribed QUANTITY is recorded as a column in an output file named
mycase_devc.csv. This type of file can be imported into any spreadsheet program.
An example:
Table 14.2: Output of devices in mycase_devc.csv file
s
FDS Time
TC_A01
TC_A02
0.00E+000
2.00E+001
2.00E+001
116
14.3.1
5.00E+000
2.98E+001
2.77E+001
1.00E+001
2.35E+001
2.26E+001
For example, if you just want to record the time history of the temperature at a
given point, add:
14.3.2
When prescribing a solid phase quantity, be sure to position the probe at a solid
surface. It is not always obvious where the solid surface is since the mesh does
not always align with the input obstruction locations.
To help FDS locate the appropriate surface, suggest the right orientation of the
face using the parameter IOR (index of orientation).
There are still instances where FDS cannot determine which solid surface is being
designated, in which case an error message appears in the diagnostic output file.
Re-position the probe and try again. For example, the line
&DEVC XYZ=0.7,0.9,2.1, QUANTITY=WALL TEMPERATURE,
IOR=-2, ID=wt1 /
designates the surface temperature of a wall facing the negative y direction.
117
14.3.3
In addition to point measurements, the DEVC group can be used to report integrated quantities. For example, you may want to know the mass flow out of a
door or window. To report this, add the line:
&DEVC XB=0.3,0.5,2.1,2.5,3.0,3.0,
QUANTITY=MASS FLOW, ID=mf1 /
Note that in this case, a face is specified rather than a point.
QUANTITY=HRR can be used to compute the total heat release rate within a
subset of the domain. In this case, the sextuplet XB ought to define a volume
rather than a face.
Remember to avoid faces or volumes that cross multiple mesh boundaries: FDS
has to decide which mesh to use in the integration.
14.4
The SLCF namelist group parameters allows you to record various gas phase
quantities at more than a single point. A slice refers to a subset of the whole
domain. It can be a line, face, or volume, depending on the values of XB.
Animated vectors can be created in Smokeview if a given SLCF line has the
attribute VECTOR=.TRUE. If two SLCF entries are in the same plane, then only
one of the lines needs to have VECTOR=.TRUE. Otherwise, a redundant set of
velocity component slices will be created.
For example, the line:
118
Type
Description
QUANTITY
String
VECTOR
Logical
XB(6)
Real
Face
Real
Plane
14.5
Unit
Default
.FALSE.
The BNDF namelist group parameters allows you to record surface quantities at
all solid obstructions. As with the SLCF group, each quantity is prescribed with
a separate BNDF line. No physical coordinates need be specified, however, just
QUANTITY.
For example, the line:
&BNDF QUANTITY=WALL_TEMPERATURE /
records WALL_TEMPERATURE for all solid obstructions faces.
For certain output quantities, additional parameters need to be specified via the
PROP namelist group. In such cases, add the character string, PROP_ID, to the
BNDF line to tell FDS where to find the necessary extra information.
Note that BNDF files can become very large, so be careful in prescribing the time
interval.
One way to reduce the size of the output file is to turn off the recording
of boundary information on desired obstructions. On any given OBST line,
119
Type
Description
QUANTITY
String
Unit
Default
120
14.6
The ISOF namelist group is used to specify the output of gas phase scalar quantities, as three dimensional animated contours. For example, a 300C temperature
isosurface shows where the gas temperature is 300C. Three different values of
the temperature can be saved via the line:
&ISOF QUANTITY=TEMPERATURE,
VALUE(1)=50., VALUE(2)=200., VALUE(3)=500. /
where the values are in C.
Any gas phase quantity can animated via isosurfaces, but use caution. To render
an isosurface, the desired quantity must be computed in every mesh cell at every
output time step. For quantities like TEMPERATURE, this is not a problem, as
FDS computes it and saves it anyway. However, soot density or oxygen demand
substantial amounts of time to compute at each mesh cell.
The following table summarizes some ISOF parameters:
121
Type
Description
QUANTITY
String
VALUE(3)
Real
Contour values
14.7
Unit
Default
When you do a fire simulation using the default mixture fraction combustion
model, FDS automatically creates two output files that are rendered by Smokeview as realistic looking smoke and fire.
Figure 14.4: Output of soot MASS FRACTION and HRRPUV as viewed in Smokeview
By default, the output quantities MASS FRACTION of soot and HRRPUV (heat
release rate per unit volume) are used in the visualization.
122
14.8
Quantities associated with the overall energy budget are reported in the comma
delimited file mycase_hrr.csv. This file is automatically generated.
The file consists of six columns. The first column contains the time in seconds.
The second through fifth columns contain integrated energy gains and losses, all
in units of kW. The second column contains the total heat release rate, the third
contains the radiative heat loss to all the boundaries (solid and open), the fourth
contains the convective and radiative heat loss to the boundaries (i.e. the energy
flowing out of or into the domain), and the fifth contains the energy conducted
into the solid surfaces. The sixth column contains the total burning rate of fuel,
in units of kg/s. It is included merely as a check of the total heat release rate.
An example:
Table 14.6: Output of HRR in mycase_hrr.csv file
14.9
kW
FDS_HRR_Time
HRR
0.00E+000
0.00E+000
5.00E+000
2.04E+002
1.00E+001
2.16E+002
Visibility
If you are performing a fire calculation using the mixture fraction approach, the
smoke is tracked along with all other major products of combustion.
The intensity of monochromatic light I passing a distance L through smoke is
attenuated according to:
I/I0 = eKL
(14.1)
(14.2)
123
(14.3)
14.10
Fire protection engineers often need to estimate the location of the interface
between the hot, smoke-laden upper layer and the cooler lower layer in a burning compartment. Relatively simple fire models, often referred to as two-zone
models, compute this quantity directly, along with the average temperature of
the upper and lower layers. In a computational fluid dynamics (CFD) model
like FDS, there are not two distinct zones, but rather a continuous profile of
temperature. Nevertheless, there are methods that have been developed to estimate layer height and average temperatures from a continuous vertical profile
of temperature.
The quantities LAYER HEIGHT, UPPER TEMPERATURE and LOWER TEMPERATURE
can be designated via DEVC lines in the input file. For example, the entry:
124
14.11
There are various ways of recording the heat flux at a solid boundary. If you
want to record the net heat flux to the surface, qconvective + qradiative , use the
QUANTITY=HEAT FLUX. The individual components, the net convective and
radiative fluxes, are CONVECTIVE HEAT FLUX and RADIATIVE HEAT FLUX, respectively.
If you want to compare predicted heat flux with a measurement, you often need
to use GAUGE HEAT FLUX. The difference between NET HEAT FLUX and GAUGE
HEAT FLUX is that the former is the rate at which energy is absorbed by the solid
surface; the latter is the amount of energy that would be absorbed if the surface
were cold or some temperature specified with GAUGE_TEMPERATURE.
All of the above heat flux output quantities are defined at a solid surface.
14.12
FDS solves a one-dimensional heat conduction equation for each boundary cell
marking the interface between gas and solid, assuming that material properties for
the material layers are provided. The results can be transferred (via either DEVC or
BNDF output) to other models that predict the mechanical response of the walls
or structure. For many applications, the one-dimensional solution of the heat
conduction equation is adequate, but in situations where lateral heat conduction
within the solid is significant, another approach can be followed. FDS includes
a calculation of the Adiabatic Surface Temperature (AST), a quantity that is
representative of the heat flux to a solid surface, following the idea proposed by
[Wickstrom 2007].
Obviously, the objective in passing information to a more detailed model is to
get a better prediction of the solid temperature (and ultimately its mechanical
response) than FDS can provide.
125
14.13
Tracer particles can be injected into the flow field from vents or obstacles, as
shown in Section 11.8 on page 91, and then observed in Smokeview. Streak lines
can be drawn, too.
14.14
The following table shows an organized list of frequently used output quantities.
The column Namelist details where the concerned QUANTITY can be specified:
B boundary file (BNDF), D device (DEVC), I isosurface file (ISOF), S slice file
(SLCF).
Table 14.7: Frequently used output quantities
QUANTITY
Description
Unit
Namelist
kW/m2
B,D
kW/m2
B,D
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
UPPER TEMPERATURE
LOWER TEMPERATURE
126
MASS FLOW
kg/s
HEAT FLOW
kJ/s
VOLUME FLOW
m3 /s
VISIBILITY
D,I,S
mol/mol
D,I,S
FED
TEMPERATURE
Gas temperature.
D,I,S
THERMOCOUPLE
Temperature of a simulated
thermocouple, usually close to the
gas temperature.
WALL TEMPERATURE
B,D
B,D
VELOCITY
m/s
D,I,S
NORMAL VELOCITY
m/s
D,B
127
the species implicitly defined when doing a mixture fraction calculation (fuel,
oxygen, nitrogen, water vapor, carbon dioxide, carbon monoxide, hydrogen,
soot, other), or an extra gas specie from those defined via a SPEC line:
&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
128
Chapter 15
Using BlenderFDS
This chapter introduces the powerful BlenderFDS, the open source
graphical interface for FDS.
15.1
Have you ever passed long hours calculating and typing geometric coordinates of
FDS objects by hand? That is a really slow, tedious and error prone procedure.
BlenderFDS is the open source graphical interface for FDS that assists the user
during the input file preparation. BlenderFDS tool tries to be as flexible as
possible, and is intended for those users that already have a basic knowledge on
how FDS works, because it does not check the syntax of the data you enter.
The user retains full control over the FDS input file
Geometry and thermophysical properties are modeled in a graphical environment.
Pre-existing 2D and 3D data of buildings can be imported from many CAD tools.
BlenderFDS effort is completely unrelated and independent from FDS development performed at NIST and other organizations. None of these organizations
finance, support, endorse, or otherwise recommend BlenderFDS.
129
130
15.2
131
15.3
Online resources
BlenderFDS development is web based. You can browse to its main site is at the
following address:
http://www.blenderfds.org/
The whole user and technical documentation is updated very often and is maintained as wiki pages at:
http://code.google.com/p/blenderfds/wiki/Home?tm=6
Install instructions are explained at:
http://code.google.com/p/blenderfds/wiki/InstallingBlenderFDS
132
There is an active discussion group, where project members offer support to new
users on a voluntary basis:
http://groups.google.com/group/blenderfds
Every users can speed up the development by reporting BlenderFDS issues at:
http://code.google.com/p/blenderfds/issues/list
Chapter 16
Real world examples
This chapter shows some real world examples.
16.1
Building a ventilator
If you just want to blow gases in a particular direction, create a thin (zero
cells thick) OBST and apply to it, via SURF_ID only, a SURF line that has the
parameter POROUS=.TRUE. along with the other velocity parameters described
above. This allows hot, smokey gases to pass through the obstruction, much like
a free-standing fan. These obstructions are merely flat plates, by necessity. For
example:
&SURF ID=blow, POROUS=.TRUE., VEL=5.0 /
pushes towards +x direction
&OBST XB=4.0,5.0,-0.2,-0.2,1.4,1.8 /
The velocity VEL associated with a POROUS surface represents the velocity in the
positive or negative coordinate direction, as indicated by its sign.
Sign convention
16.2
Real objects are often difficult to describe via the SURF and MATL parameters. So
simplified descriptions of burning solid fuels are possible. If ignition temperature
and burning rate as a function of time from ignition are known, add lines similar
to the following:
133
134
16.3
By default, FDS assumes that the smoke from a fire is generated in direct proportion to the heat release rate. A value of SOOT_YIELD=0.01 on the REAC
line means that the smoke generation rate is 1% of the fuel burning rate. The
smoke in this case is not explicitly tracked by FDS, but rather is assumed to be
a function of the mixture fraction variables that are explicitly tracked.
Suppose, however, that you want to define your own smoke and that you want
to specify its production rate independently of the HRR (or even instead of an
actual fire, like a smoldering source). You also want to define a mass extinction
coefficient for the smoke and an assumed molecular weight (as it will be tracked
like a gas specie). Finally, you also want to visualize the smoke using the SMOKE3D
feature in Smokeview.
Use the following lines:
135
16.4
16.5
16.5.1
Description
In Figure 16.1 on the next page a simple case of a fire in a car parking is proposed.
The data are for demonstration only, and the proposed solution is only one of
the many possible solutions.
The objectives of the analysis are:
Study the critical times for evacuation and rescue operations from fire
brigade of the car parking.
136
137
16.5.2
0.0,2.4 /
0.0,2.4 /
0.0,2.4 /
0.0,2.4 /
their cells numbers,
!!! Properties
! Walls
&MATL ID=gypsum plaster, CONDUCTIVITY=0.48,
SPECIFIC_HEAT=0.84, DENSITY=1440. /
Thermo-physical properties of gypsum plaster.
&SURF ID=wall, COLOR=BRICK, MATL_ID=gypsum plaster,
138
139
/
/
/
/
/
/
140
141
142
Figure 16.5: Gas temperatures measured in front of the window panes vs time.
It is prescribed that the glazing breaks effectively at 300C. The SE glass is the
nearest to the fire and breaks at about 370 s; the NE glass breaks at about 612 s.
The others follow later.
143
Figure 16.7: Layer height vs time is shown. The smoke evacuation is not enough
to keep the smoke layer near the ceiling.
144
145
146
16.6
An university building
147
148
Bibliography
[Hottel 1984]
[NUREG 1824]
Verification and Validation of Selected Fire Models for Nuclear Power Plant Applications. NUREG 1824, United States
Nuclear Regulatory Commission, Washington, DC, 2007.
150
BIBLIOGRAPHY
D.A. Purser. SFPE Handbook of Fire Protection Engineering, chapter Toxicity Assessment of Combustion Products.
National Fire Protection Association, Quincy, Massachusetts,
3rd edition, 2002.
[Mulholland 2002] G.W. Mulholland. SFPE Handbook of Fire Protection Engineering, chapter Smoke Production and Properties. National
Fire Protection Association, Quincy, Massachusetts, 3rd edition, 2002.
Index
Adiabatic Surface Temperature (AST),
124
BURN_AWAY, 104
Direct Numerical Simulation (DNS), 4
EXPOSED, 87
Finite-rate approach, 48
Fire Dynamics Simulator, version 5 (FDS),
7
Heat Release Rate (HRR), 12, 24, 68,
84, 114, 117, 122
INERT, 79
INSULATED, 87
Large Eddy Simulation (LES), 3
Light extinction coefficient, 122
Mass extinction coefficient, 122
Message Passing Library (MPI), 21
MIRROR, 80
Mixture fraction model, 47
OPEN, 80
Reynolds-averaged form of the NavierStokes equations (RANS), 3
SAWTOOTH, 102
Sign convention, 82, 83, 88, 133
Smokeview, 7
Visibility factor, 123
VOID, 87
Zone models, 2, 123
151