Skip to content

Commit

Permalink
Merge pull request #13785 from mcgratta/master
Browse files Browse the repository at this point in the history
FDS Verification: Issue #13764. New isothermal test case
  • Loading branch information
mcgratta authored Nov 20, 2024
2 parents 3c65867 + 389acd4 commit 8997f3f
Show file tree
Hide file tree
Showing 5 changed files with 64 additions and 3 deletions.
8 changes: 5 additions & 3 deletions Manuals/FDS_Verification_Guide/FDS_Verification_Guide.tex
Original file line number Diff line number Diff line change
Expand Up @@ -2929,12 +2929,14 @@ \section{Multi-Mesh Layer Height Calculation (\texorpdfstring{\ct{layer}}{layer}
\section{Isothermal Flow Around Activated Objects (\texorpdfstring{\ct{obst_activation}}{obst\_activation})}
\label{obst_activation}

The cases presented here are found in input files \ct{Pressure_Solver/obst_activation_default.fds} and \ct{obst_activation_ulmat.fds}. The domain is split into four meshes and several obstacles are made to disappear and appear during the simulation. These obstacles can be completely embedded inside meshes, or either overlap or abut mesh boundaries. Default (FFT) and ULMAT pressure solvers are used. Figure~\ref{obst_act_fig} displays the maximum divergence in the domain. These values should be comparable to machine precision for double precision floating point arithmetic.
The input files for these case are labeled \ct{Pressure_Solver/obst_activation_*.fds}. A 2-D channel flow is split into four meshes and several obstacles are made to disappear and appear during the simulation. These obstacles can be completely embedded inside meshes, or either overlap or abut mesh boundaries. In the first case, only one gas species flows through the channel. Default (FFT) and ULMAT pressure solvers are used. The left hand plot in Fig.~\ref{obst_act_fig} displays the maximum divergence in the domain. These values should be comparable to machine precision for double precision floating point arithmetic.

In the second case, gases of different molecular weights are introduced at the entrance of the channel. There should be no temperature change as the obstructions are created and removed. The right hand plot in Fig.~\ref{obst_act_fig} displays the minimum and maximum temperature, which are not exactly 20~$^\circ$C.

\begin{figure}[!ht]
\centering
\includegraphics[height=2.2in]{SCRIPT_FIGURES/obst_activation}
\caption[Result of the \ct{obst_activation} test cases]{Maximum divergence for isothermal flow around obstructions that appear and disappear.}
\includegraphics[height=2.2in]{SCRIPT_FIGURES/obst_activation_gases}
\caption[Result of the \ct{obst_activation} test cases]{(Left) Maximum divergence for isothermal flow around obstructions that appear and disappear. (Right) A similar case, but with a mixture of two gases with different molecular weights.}
\label{obst_act_fig}
\end{figure}

Expand Down
1 change: 1 addition & 0 deletions Utilities/Matlab/FDS_verification_dataplot_inputs.csv
Original file line number Diff line number Diff line change
Expand Up @@ -467,6 +467,7 @@ d,ns2d_32_nupt1,NS_Analytical_Solution/ns2d_32_nupt1_git.txt,NS_Analytical_Solut
d,ns2d_64_nupt1,NS_Analytical_Solution/ns2d_64_nupt1_git.txt,NS_Analytical_Solution/ns2d_64_nupt1_exact.csv,1,2,Time,u-vel,Analytical (u-vel),k-,0,100000,,0,100000,-1.00E+09,1.00E+09,0,NS_Analytical_Solution/ns2d_64_nupt1_devc.csv,2,3,Time,UVEL,FDS (UVEL),k--,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Velocity (ns2d\_64\_nupt1),Time (s),Velocity (m/s),0,7,1,0.3,2.4,1,no,0.05 0.90,NorthEast,,1,linear,FDS_Verification_Guide/SCRIPT_FIGURES/ns2d_64_nupt1,Relative Error,mean,0.01,NS Analytical Solution,kd,k,TeX
d,obst_activation,Pressure_Solver/obst_activation_ulmat_git.txt,Pressure_Solver/obst_activation_exact.csv,1,2,Time,D_max,Tolerance,k-,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Pressure_Solver/obst_activation_ulmat_devc.csv,2,3,Time,D_max,FDS (ULMAT),r--,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Divergence (obst\_activation),Time (s),Divergence (1/s),0,2,1,1e-16,1e-13,1,no,0.05 0.90,SouthEast,,1,semilogy,FDS_Verification_Guide/SCRIPT_FIGURES/obst_activation,Absolute Error,max,1e-13,Pressure Solver,kd,k,TeX
f,obst_activation,Pressure_Solver/obst_activation_default_git.txt,Pressure_Solver/obst_activation_exact.csv,1,2,Time,D_max,blank,blank,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Pressure_Solver/obst_activation_default_devc.csv,2,3,Time,D_max,FDS (FFT),g--,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Divergence (obst\_activation),Time (s),Divergence (1/s),0,2,1,1e-16,1e-13,1,no,0.05 0.90,SouthEast,,1,semilogy,FDS_Verification_Guide/SCRIPT_FIGURES/obst_activation,Absolute Error,max,1e-13,Pressure Solver,kd,k,TeX
d,obst_activation,Pressure_Solver/obst_activation_default_gases_git.txt,Pressure_Solver/obst_activation_default_gases.csv,1,2,Time,T_min|T_max,Lower Bound|Upper Bound,k--|r--,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Pressure_Solver/obst_activation_default_gases_devc.csv,2,3,Time,T_min|T_max,T\_min|T\_max,k-|r-,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Temperature (obst\_activation\_gases),Time (s),Temperature (°C),0,30,1,19.9,20.1,1,no,0.05 0.90,SouthEast,,1,linear,FDS_Verification_Guide/SCRIPT_FIGURES/obst_activation_gases,Absolute Error,max,1,Pressure Solver,kd,k,TeX
d,obst_coarse_fine_interface,Pressure_Effects/obst_coarse_fine_interface_git.txt,Pressure_Effects/obst_coarse_fine_interface_exact.csv,1,2,Time,DP,Analytical (DP),k-,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Pressure_Effects/obst_coarse_fine_interface_devc.csv,2,3,Time,DP,FDS (DP),k--,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Background Pressure (obst\_coarse\_fine\_interface),Time (s),Pressure (Pa),0,10,1,-10,10,1,no,0.05 0.90,NorthEast,,1,linear,FDS_User_Guide/SCRIPT_FIGURES/obst_coarse_fine_interface,Absolute Error,end,2,Pressure Effects,kd,k,TeX
d,opening_ulmat,Pressure_Solver/opening_ulmat_git.txt,Pressure_Solver/opening_pressure_error.csv,1,2,Time,Pressure Tolerance,Ideal (Pressure Tolerance),ko--,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Pressure_Solver/opening_ulmat_devc.csv,2,3,Time,perr-max,FDS (p err max),k-,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Pressure Error (opening\_ulmat),Time (s),Pressure Error (Pa),0,10,1,0,1.00E-06,1,no,0.05 0.90,SouthEast,,1,semilogy,FDS_User_Guide/SCRIPT_FIGURES/opening_ulmat,Absolute Error,tolerance,1.00E-10,Pressure Solver,k+,k,TeX
d,parabolic_profile,Flowfields/parabolic_profile_git.txt,Flowfields/parabolic_profile.csv,1,2,Time,Pressure,Exact (Pressure),ko,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Flowfields/parabolic_profile_devc.csv,2,3,Time,pres,FDS (pres),k-,0,100000,,0,100000,-1.00E+09,1.00E+09,0,Pressure (parabolic\_profile),Time (s),Pressure (Pa),0,60,1,0,2500,1,no,0.05 0.90,SouthEast,,1,linear,FDS_User_Guide/SCRIPT_FIGURES/parabolic_profile,Relative Error,end,0.01,Pressure Effects,k+,k,TeX
Expand Down
1 change: 1 addition & 0 deletions Verification/FDS_Cases.sh
Original file line number Diff line number Diff line change
Expand Up @@ -413,6 +413,7 @@ $QFDS -p 4 -d Pressure_Solver stairwell.fds
$QFDS -p 2 -d Pressure_Solver ulmat_2zone.fds
$QFDS -p 4 -d Pressure_Solver obst_activation_default.fds
$QFDS -p 4 -d Pressure_Solver obst_activation_ulmat.fds
$QFDS -p 4 -d Pressure_Solver obst_activation_default_gases.fds

$QFDS -d Pyrolysis cable_11_insulation_mcc.fds
$QFDS -d Pyrolysis cable_23_insulation_mcc.fds
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Time,T_min,T_max
0,19.95,20.05
30,19.95,20.05
54 changes: 54 additions & 0 deletions Verification/Pressure_Solver/obst_activation_default_gases.fds
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
&HEAD CHID='obst_activation_default_gases' /

&MESH IJK=16,1,16, XB=0.0,0.8,-0.001,0.001,0.0,0.8 /
&MESH IJK=16,1,16, XB=0.8,1.6,-0.001,0.001,0.0,0.8 /
&MESH IJK=16,1,16, XB=1.6,2.4,-0.001,0.001,0.0,0.8 /
&MESH IJK=16,1,16, XB=2.4,3.2,-0.001,0.001,0.0,0.8 /

&TIME T_END=30.0 /

&PRES CHECK_POISSON=T /

&MISC FLUX_LIMITER='GODUNOV', STRATIFICATION=F /
&RADI RADIATION=F /

&SPEC ID='GAS BG', MW=29, BACKGROUND=T /
&SPEC ID='GAS A', MW=25 /
&SPEC ID='GAS B', MW=35 /

&SURF ID='WALL', FREE_SLIP=T, DEFAULT=T /

&SURF ID='BLOW A', VEL=-0.5, MASS_FRACTION(1)=1., SPEC_ID(1)='GAS A', HEAT_TRANSFER_COEFFICIENT=0 /
&SURF ID='BLOW B', VEL=-0.5, MASS_FRACTION(1)=1., SPEC_ID(1)='GAS B', HEAT_TRANSFER_COEFFICIENT=0 /

&VENT XB=0.0,0.0,-0.001,0.001,0.0,0.4, SURF_ID='BLOW A' /
&VENT XB=0.0,0.0,-0.001,0.001,0.4,0.8, SURF_ID='BLOW B' /
&VENT PBX=3.2, SURF_ID='OPEN' /

&DEVC ID='clock_1', XYZ=0,0,0, QUANTITY='TIME', SETPOINT= 5.0, INITIAL_STATE=F /
&DEVC ID='clock_2', XYZ=0,0,0, QUANTITY='TIME', SETPOINT=10.0, INITIAL_STATE=T /
&DEVC ID='clock_3', XYZ=0,0,0, QUANTITY='TIME', SETPOINT=15.0, INITIAL_STATE=F /
&DEVC ID='clock_4', XYZ=0,0,0, QUANTITY='TIME', SETPOINT=20.0, INITIAL_STATE=T /
&DEVC ID='clock_5', XYZ=0,0,0, QUANTITY='TIME', SETPOINT=23.0, INITIAL_STATE=F /
&DEVC ID='clock_6', XYZ=0,0,0, QUANTITY='TIME', SETPOINT=27.0, INITIAL_STATE=T /

&OBST XB=0.1,0.2,-0.001,0.001,0.3,0.5, DEVC_ID='clock_1' /
&OBST XB=1.4,1.6,-0.001,0.001,0.2,0.4, DEVC_ID='clock_2' /
&OBST XB=2.4,2.5,-0.001,0.001,0.4,0.6, DEVC_ID='clock_3' /
&OBST XB=3.0,3.2,-0.001,0.001,0.3,0.5, DEVC_ID='clock_4' /
&OBST XB=0.6,1.0,-0.001,0.001,0.5,0.7, DEVC_ID='clock_5' /
&OBST XB=1.9,2.1,-0.001,0.001,0.0,0.1, DEVC_ID='clock_6' /

&SLCF PBY=0.,QUANTITY='MASS FRACTION', SPEC_ID='GAS A', CELL_CENTERED=T, VECTOR=T /
&SLCF PBY=0.,QUANTITY='MASS FRACTION', SPEC_ID='GAS B', CELL_CENTERED=T /
&SLCF PBY=0.,QUANTITY='MASS FRACTION', SPEC_ID='GAS BG', CELL_CENTERED=T /
&SLCF PBY=0.,QUANTITY='TEMPERATURE', CELL_CENTERED=T /
&SLCF PBY=0.,QUANTITY='DIVERGENCE', CELL_CENTERED=T /

&DEVC ID='T_max', XB=0.0,3.2,-0.001,0.001,0.0,0.8, QUANTITY='TEMPERATURE', SPATIAL_STATISTIC='MAX', TEMPORAL_STATISTIC='INSTANT VALUE' /
&DEVC ID='T_min', XB=0.0,3.2,-0.001,0.001,0.0,0.8, QUANTITY='TEMPERATURE', SPATIAL_STATISTIC='MIN', TEMPORAL_STATISTIC='INSTANT VALUE' /

&DUMP DT_DEVC=0.00001 /

&TAIL /

0 comments on commit 8997f3f

Please sign in to comment.