Skip to content

Commit df949ed

Browse files
committed
FireX: Merge with foremodels/master
2 parents e58e9dd + d7c0a1b commit df949ed

File tree

58 files changed

+401
-214
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+401
-214
lines changed

.github/workflows/Line_Endings.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
# Steps represent a sequence of tasks that will be executed as part of the job
2222
steps:
2323
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
24-
- uses: actions/checkout@v4
24+
- uses: actions/checkout@v5
2525

2626
- name: Check for CRLF line endings
2727
run: |

.github/workflows/cmake.yml

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ jobs:
9494
sudo apt-get -y update
9595
sudo apt-get -y install libopenmpi-dev openmpi-bin
9696
97-
- uses: actions/checkout@v4
97+
- uses: actions/checkout@v5
9898
- run: git config --global --add safe.directory /__w/fds/fds
9999

100100
- name: set linux-gnu compiler
@@ -109,9 +109,9 @@ jobs:
109109
if: startsWith(matrix.compiler_mpi, 'intel_')
110110
shell: bash
111111
run: |
112-
echo "CC=mpiicx" >> $GITHUB_ENV
113-
echo "CXX=mpiicx" >> $GITHUB_ENV
114-
echo "FC=mpiifx" >> $GITHUB_ENV
112+
echo "CC=icx" >> $GITHUB_ENV
113+
echo "CXX=icpx" >> $GITHUB_ENV
114+
echo "FC=ifx" >> $GITHUB_ENV
115115
116116
- name: build fds
117117
if: endsWith(matrix.compiler_mpi, '_intelmpi')
@@ -156,7 +156,7 @@ jobs:
156156
# and build configurations
157157
matrix:
158158
os:
159-
- macos-latest
159+
- macos-14
160160
compiler_mpi:
161161
- "gnu_openmpi"
162162
openmp:
@@ -168,10 +168,10 @@ jobs:
168168
runs-on: ${{ matrix.os }}
169169
steps:
170170
- name: Checkout code
171-
uses: actions/checkout@v4
171+
uses: actions/checkout@v5
172172

173173
- name: install openmpi
174-
run: brew install open-mpi
174+
run: brew install gcc@15 open-mpi
175175

176176
- name: set macos gcc
177177
if: startsWith(matrix.compiler_mpi, 'gnu_')
@@ -180,6 +180,8 @@ jobs:
180180
echo "CC=gcc-15" >> $GITHUB_ENV
181181
echo "CXX=g++-15" >> $GITHUB_ENV
182182
echo "FC=gfortran-15" >> $GITHUB_ENV
183+
echo "OMPI_CC=gcc-15" >> $GITHUB_ENV
184+
echo "OMPI_CXX=g++-15" >> $GITHUB_ENV
183185
echo "OMPI_FC=gfortran-15" >> $GITHUB_ENV
184186
brew install glew gd zlib json-c
185187
@@ -188,9 +190,11 @@ jobs:
188190
shell: bash
189191
run: |
190192
echo "CC=icx" >> $GITHUB_ENV
191-
echo "CXX=icx" >> $GITHUB_ENV
192-
echo "FC=mpiifx" >> $GITHUB_ENV
193-
echo "OMPI_FC=mpiifx" >> $GITHUB_ENV
193+
echo "CXX=icpx" >> $GITHUB_ENV
194+
echo "FC=ifx" >> $GITHUB_ENV
195+
echo "OMPI_CC=icx" >> $GITHUB_ENV
196+
echo "OMPI_CXX=icpx" >> $GITHUB_ENV
197+
echo "OMPI_FC=ifx" >> $GITHUB_ENV
194198
195199
- name: Build
196200
if: startsWith(matrix.compiler_mpi, 'gnu_')
@@ -242,7 +246,7 @@ jobs:
242246
shell: cmd
243247

244248
steps:
245-
- uses: actions/checkout@v4
249+
- uses: actions/checkout@v5
246250

247251
# install oneapi components from web installer based on
248252
# oneapi-ci/scripts/install_windows.bat

.github/workflows/linux.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
mkl
4040
prune: false
4141

42-
- uses: actions/checkout@v4
42+
- uses: actions/checkout@v5
4343

4444
- name: build fds debug
4545
run: |
@@ -74,7 +74,7 @@ jobs:
7474
7575
prune: false
7676

77-
- uses: actions/checkout@v4
77+
- uses: actions/checkout@v5
7878
- name: build fds debug
7979
run: |
8080
source /opt/intel/oneapi/setvars.sh
@@ -96,7 +96,7 @@ jobs:
9696
runs-on: [ubuntu-latest]
9797

9898
steps:
99-
- uses: actions/checkout@v4
99+
- uses: actions/checkout@v5
100100

101101
- uses: actions/setup-python@v5
102102
with:

.github/workflows/osx.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,16 @@ jobs:
2828
# debug build on osx using gfortran with openmpi
2929

3030
name: osx gnu openmpi
31-
runs-on: [macos-latest]
31+
runs-on: [macos-14]
3232
defaults:
3333
run:
3434
shell: bash
3535

3636
steps:
37-
- uses: actions/checkout@v4
37+
- uses: actions/checkout@v5
3838
- name: install openmpi
3939
run: |
40-
brew install open-mpi
40+
brew install gcc@15 open-mpi
4141
echo "OMPI_FC=gfortran-15" >> $GITHUB_ENV
4242
4343
- name: build fds debug

.github/workflows/windows.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444
shell: cmd
4545

4646
steps:
47-
- uses: actions/checkout@v4
47+
- uses: actions/checkout@v5
4848

4949
# install oneapi components from web installer based on
5050
# oneapi-ci/scripts/install_windows.bat

Manuals/Bibliography/FDS_general.bib

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2996,6 +2996,15 @@ @ARTICLE{Icove:JNAFE2021
29962996
note = {\href{https://doi.org/10.51501/jotnafe.v38i1.167}{https://doi.org/10.51501/jotnafe.v38i1.167}}
29972997
}
29982998

2999+
@BOOK{Idelchik:1,
3000+
author = {I.E. Idelchik},
3001+
title = {Handbook of Hydraulic Resistance},
3002+
edition = {3rd},
3003+
publisher = {CRC Press},
3004+
address = {Boca Raton, Florida},
3005+
year = {1994}
3006+
}
3007+
29993008
@INPROCEEDINGS{Ierardi:1,
30003009
author = {Ierardi, J.A. and Barnett, J.R.},
30013010
title = {{A Quantitative Method for Calibrating CFD Model Calculations}},

Manuals/FDS_User_Guide/FDS_User_Guide.tex

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14260,6 +14260,7 @@ \chapter{Error Codes}
1426014260
446 \> \ct{SURF REFERENCE_THICKNESS values must increase for each} \> Section~\ref{info:scaled_burning} \\
1426114261
\> \ct{new group of REFERENCE_HEAT_FLUX.} \\
1426214262
447 \> \ct{RAMP ... used with REFERENCE_HEAT_FLUX must start at T = 0.} \> Section~\ref{info:scaled_burning} \\
14263+
448 \> \ct{PROF ... MATL_ID ... not a part of surface type ...} \> Section~\ref{info:solidoutputquantities} \\
1426314264
\> \> \\
1426414265
501 \> \ct{No ID provided ...} \> Section~\ref{info:HVAC} \\
1426514266
502 \> \ct{Invalid TYPE_ID provided ...} \> Section~\ref{info:HVAC} \\
@@ -14496,6 +14497,7 @@ \chapter{Error Codes}
1449614497
951 \> \ct{PROF ... requires an orientation index, IOR.} \> Section~\ref{info:PROF} \\
1449714498
952 \> \ct{PROF ... is not valid.} \> Section~\ref{info:PROF} \\
1449814499
953 \> \ct{PROF ... requires a PART_ID.} \> Section~\ref{info:PROF} \\
14500+
954 \> \ct{PROF ... MATL_ID ... not found.} \> Section~\ref{info:PROF} \\
1449914501
\> \> \\
1450014502
961 \> \ct{CELL_CENTERED not allowed with AGL_SLICE.} \> Section~\ref{info:complex_terrain} \\
1450114503
962 \> \ct{BNDF ... CPUA_Z, MPUA_Z, and AMPUA_Z require liquid droplets.} \> Section~\ref{bucket_test_1} \\

Manuals/FDS_Validation_Guide/Heat_Flux_Chapter.tex

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -822,18 +822,18 @@ \subsection{TUS Facade Experiments}
822822
\put(0.91,3.765){\circle{0.05}}
823823
\end{picture}
824824
\end{minipage}
825-
\caption[JIA A 1310 Facade, position of heat flux gauges]{Positions of the heat flux gauges on the exterior wall of the JIS~A~1310 experiments. The wall is 1.82~m wide and 4.095~m tall. The window is 0.91~m wide by 0.91 tall and 0.455~m above the floor.}
825+
\caption[JIS Facade, position of heat flux gauges]{Positions of the heat flux gauges on the exterior wall of the JIS~A~1310 experiments. The wall is 1.82~m wide and 4.095~m tall. The window is 0.91~m wide by 0.91 tall and 0.455~m above the floor.}
826826
\label{JIS_Facade_HF_Positions}
827827
\end{figure}
828828

829829
\newpage
830830

831831
\begin{figure}[p]
832832
\centering
833-
\includegraphics[height=2.15in]{SCRIPT_FIGURES/TUS_Facade/JIS_A_1310_5cm_HF_600_kW} \\
834-
\includegraphics[height=2.15in]{SCRIPT_FIGURES/TUS_Facade/JIS_A_1310_5cm_HF_750_kW} \\
835-
\includegraphics[height=2.15in]{SCRIPT_FIGURES/TUS_Facade/JIS_A_1310_5cm_HF_900_kW}
836-
\caption[JIS A 1310 Facade, heat flux]{JIS A 1310 Facade, heat flux. The Height refers to the distance above the top of the window.}
833+
\includegraphics[height=2.15in]{SCRIPT_FIGURES/TUS_Facade/JIS_facade_HF_600_kW} \\
834+
\includegraphics[height=2.15in]{SCRIPT_FIGURES/TUS_Facade/JIS_facade_HF_750_kW} \\
835+
\includegraphics[height=2.15in]{SCRIPT_FIGURES/TUS_Facade/JIS_facade_HF_900_kW}
836+
\caption[JIS Facade, heat flux]{JIS Facade, heat flux. The Height refers to the distance above the top of the window.}
837837
\label{JIS_Facade_Heat_Flux}
838838
\end{figure}
839839

Manuals/FDS_Verification_Guide/FDS_Verification_Guide.tex

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1596,6 +1596,31 @@ \subsection{1-D Flow in a Tunnel (\texorpdfstring{\ct{tunnel_linear_cp}}{tunnel\
15961596
\label{tunnel_linear_cp_plots}
15971597
\end{figure}
15981598

1599+
\FloatBarrier
1600+
1601+
1602+
\section{Discharge Coefficient}
1603+
\label{thick_orifice}
1604+
1605+
A useful way to assess the way the model handles velocity boundary conditions at corners is to examine flows through an orifice. Consider a 2~m square duct with a 1~m square orifice. The orifice is $l=0.4$~m wide and has a hydraulic diameter $D_{\rm h}=1$~m. A uniform flow of $w_1=0.5$~m/s is pushed through the duct. According to an empirical correlation presented in Diagram~4-15 of the Handbook of Hydraulic Resistance by Idelchik~\cite{Idelchik:1}, the pressure rise behind the orifice is given by
1606+
\be
1607+
\Delta p = \frac{1}{2} \zeta_1 \, \rho \, w_1^2 \approx 4.09 \; \mbox{Pa}
1608+
\ee
1609+
where $\zeta_1=27.4$ and the density of air is $\rho=1.195$~kg/m$^3$. Figure~\ref{fig:thick_orifice} displays the pressure along the duct, where the flow is from left to right.
1610+
1611+
\begin{figure}[!ht]
1612+
\centering
1613+
\includegraphics[height=2.2in]{SCRIPT_FIGURES/thick_orifice}
1614+
\caption[Results of the \ct{thick_orifice} case]{Pressure rise behind an square, thick orifice in a duct.}
1615+
\label{fig:thick_orifice}
1616+
\end{figure}
1617+
1618+
1619+
1620+
1621+
1622+
1623+
15991624
\chapter{Turbulence}
16001625

16011626

Source/ccib.f90

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,8 @@ MODULE CC_SCALARS
5656
REAL(EB), ALLOCATABLE, DIMENSION(:) :: F_Z, RZ_Z, RZ_ZS, P_0_CV, TMP_0_CV, RHO_0_CV, ZCEN_CV
5757
REAL(EB), ALLOCATABLE, DIMENSION(:,:):: F_Z0, RZ_Z0
5858

59-
REAL(EB), DIMENSION(0:3,0:3,0:3) :: U_TEMP,Z_TEMP,F_TEMP
59+
REAL(EB), DIMENSION(0:3,0:3,0:3) :: U_TEMP,F_TEMP
60+
REAL(EB), DIMENSION(-1:3,-1:3,-1:3) :: Z_TEMP
6061

6162
! Types of interpolation:
6263
INTEGER, PARAMETER :: CC_LINEAR_INTERPOLATION = 1
@@ -11269,7 +11270,7 @@ SUBROUTINE CC_DENSITY(T,DT)
1126911270
! Store RHO*ZZ values at step n:
1127011271
IF (.NOT.ALLOCATED(MESHES(NM)%RHO_ZZN)) ALLOCATE(MESHES(NM)%RHO_ZZN(0:IBP1,0:JBP1,0:KBP1,N_TOTAL_SCALARS))
1127111272
DO N=1,N_TOTAL_SCALARS
11272-
MESHES(NM)%RHO_ZZN(:,:,:,N) = RHO(:,:,:)*ZZ(:,:,:,N)
11273+
MESHES(NM)%RHO_ZZN(0:IBP1,0:JBP1,0:KBP1,N) = RHO(0:IBP1,0:JBP1,0:KBP1)*ZZ(0:IBP1,0:JBP1,0:KBP1,N)
1127311274
ENDDO
1127411275

1127511276
! Second cut-cells, these variables being filled are only used for exporting to slices and applying Boundary

0 commit comments

Comments
 (0)