import matplotlib
import matplotlib.pyplot as plt
import numpy as np
from IPython.display import display
from PIL import Image
import os
# check for set environment variable JB_NOSHOW
show = True
if 'JB_NOSHOW' in os.environ:
show = False
Basic FDS Example II#
In this example we build on Basic Example I and construct a small room with a fire inside. This setup is based on the “Steckler compartments” [SQR82]. An introduction is also provided in Compartment Fires section.
Note: The individual file paths are likely different on your system, depending on your file structure.
TIME_HISTORY = T
StecklerExample_devc.csv
Point out the DEVC labels, which are used later for sorting the data sets.
File#
&HEAD CHID = 'StecklerExample',
TITLE = 'Example of a Steckler case, with 6/6 door' /
&TIME T_END=1800.0, TIME_SHRINK_FACTOR = 10. /
&DUMP NFRAMES=180 /
&MESH ID = 'Domain_Simple',
IJK = 20,14,11,
XB = -1.40,2.60,-1.40,1.40,0.00,2.20 /
# ---------------------------------------
# Domain boundary
# ---------------------------------------
&VENT MB='XMAX', SURF_ID='OPEN' /
&VENT ID = 'OpenCeiling',
SURF_ID = 'OPEN',
XB = 1.51,2.60,-1.40,1.40,2.20,2.20 /
&VENT ID = 'OpenLeft',
SURF_ID = 'OPEN',
XB = 1.51,2.60,-1.40,-1.40,0.00,2.20 /
&VENT ID = 'OpenRight',
SURF_ID = 'OPEN',
XB = 1.51,2.60,1.40,1.40,0.00,2.20 /
# ---------------------------------------
# Gas burner: propane
# ---------------------------------------
&SPEC ID = 'PROPANE' /
&REAC FUEL = 'PROPANE',
SOOT_YIELD = 0.022 /
# HRR: 62.9 kW
&SURF ID = 'BURNER',
HRRPUA = 393.74999999999994,
SPEC_ID(1) = 'PROPANE'
COLOR = 'RASPBERRY' /
&OBST SURF_ID = 'INERT',
XB = -0.2, 0.2, -0.2, 0.2, 0.0, 0.2 /
&VENT SURF_ID = 'BURNER',
XB = -0.2, 0.2, -0.2, 0.2, 0.2, 0.2 /
# ---------------------------------------
# Surface definition (boundary conditions)
# ---------------------------------------
&SURF ID = 'Wall Lining',
COLOR = 'BEIGE',
DEFAULT = T,
THICKNESS(1:1) = 0.0254,
MATL_ID(1,1:1) = 'MARINITE',
MATL_MASS_FRACTION(1,1) = 1.0 /
&MATL ID = 'MARINITE'
EMISSIVITY = 0.9
DENSITY = 737.
SPECIFIC_HEAT = 1.2
CONDUCTIVITY = 0.12 /
# ---------------------------------------
# Geometrical Structure
# ---------------------------------------
&OBST ID = 'Ceiling',
SURF_ID = 'Wall Lining',
BNDF_OBST = T,
XB = -1.51,1.51,-1.51,1.51,2.20,2.31 /
OBST ID = 'Floor',
SURF_ID = 'Wall Lining'
XB = -1.51,2.60,-1.51,1.51,-0.11,0.00 /
OBST ID = 'WallBack',
SURF_ID = 'Wall Lining'
XB = -1.51,-1.40,-1.51,1.51,0.00,2.20 /
&OBST ID = 'WallFront',
SURF_ID = 'Wall Lining'
XB = 1.40,1.51,-1.51,1.51,0.00,2.20 /
OBST ID = 'WallLeft',
SURF_ID = 'Wall Lining'
XB = -1.40,1.40,-1.51,-1.40,0.00,2.20 /
&OBST ID = 'WallRight',
SURF_ID = 'Wall Lining',
BNDF_OBST = T,
XB = -1.40,1.40,1.40,1.51,0.00,2.20 /
# Cut out for door
&HOLE ID = 'WallFront.001'
XB=1.4050,1.5150,-0.40,0.40,0.00,1.80 /
# ---------------------------------------
# Analytics
# ---------------------------------------
&SLCF PBX = 0.00
QUANTITY = 'TEMPERATURE',
VECTOR = .TRUE. /
&SLCF PBY = 0.00
QUANTITY = 'TEMPERATURE',
VECTOR = .TRUE. /
&SLCF PBX = 0.00
QUANTITY = 'TEMPERATURE',
CELL_CENTERED = .TRUE. /
&SLCF PBY = 0.00
QUANTITY = 'TEMPERATURE',
CELL_CENTERED = .TRUE. /
&BNDF QUANTITY = 'WALL TEMPERATURE',
CELL_CENTERED = T /
&DEVC ID = 'Temp_Door_Vertical_Centre',
QUANTITY = 'TEMPERATURE',
POINTS = 18,
TIME_HISTORY = T,
XB = 1.45,1.45, 0.05,0.05, 0.05,1.75 /
&DEVC ID = 'Temp_Corner_Vertical_Left',
QUANTITY = 'TEMPERATURE',
POINTS = 22,
TIME_HISTORY = T,
XB = 1.25,1.25, -1.25,-1.25, 0.05,2.15 /
&DEVC ID = 'Temp_Corner_Vertical_Right',
QUANTITY = 'TEMPERATURE',
POINTS = 22,
TIME_HISTORY = T,
XB = 1.25,1.25, 1.25,1.25, 0.05,2.15 /
&TAIL/