Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
454 changes: 225 additions & 229 deletions Manuals/FDS_User_Guide/FDS_User_Guide.tex

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions Manuals/FDS_User_Guide/spec_table.tex
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
& Formula & (K) & (kJ/mol) & (\AA) & (K) & & & & Surrogate \\
\hline \hline
\endfirsthead
\caption[]{Optional gas and liquid species (continued).}\\
\caption[]{Common Pre-defined gas and liquid species (continued).}\\
\hline
Species & Formula & Temp. Range & $\Delta \mathrm{H}_{\mathrm{f}}$ & $\sigma$ & $\epsilon/k$ & Liquid & Gibbs & Pr & RadCal \\
& & (K) & (kJ/mol) & (\AA) & (K) & & & & Surrogate \\
Expand Down Expand Up @@ -90,7 +90,7 @@
& Formula & (K) & (kJ/mol) & (\AA) & (K) & & & & Surrogate \\
\hline \hline
\endfirsthead
\caption[]{Optional gas and liquid species (continued).}\\
\caption[]{All Pre-defined gas and liquid species (continued).}\\
\hline
Species & Formula & Temp. Range & $\Delta \mathrm{H}_{\mathrm{f}}$ & $\sigma$ & $\epsilon/k$ & Liquid & Gibbs & Pr & RadCal \\
& & (K) & (kJ/mol) & (\AA) & (K) & & & & Surrogate \\
Expand Down
27 changes: 19 additions & 8 deletions Source/radi.f90
Original file line number Diff line number Diff line change
Expand Up @@ -2766,14 +2766,15 @@ MODULE RAD
PUBLIC INIT_RADIATION,COMPUTE_RADIATION,BLACKBODY_FRACTION

REAL(EB) :: TYY_FAC
INTEGER :: N_KAPPA_T=44 !< Number of temperature points in absorption coefficient look-up table
INTEGER :: N_KAPPA_X=50 !< Number of species points in absorption coefficient look-up table
REAL(EB):: KAPPA_X_MIN=1.E-5_EB,KAPPA_X_MAX=1._EB !< Min/max volume fraction for absorption coefficient look-up table
REAL(EB):: KAPPA_C_MIN=2.E-7_EB,KAPPA_C_MAX=0.2_EB !< Min/Max mass fraction for soot coefficient look-up table
REAL(EB):: KAPPA_X_FAC,LOG_KAPPA_X_FAC !< Scaling factor for absorption coefficient look-up table
REAL(EB):: KAPPA_C_FAC,LOG_KAPPA_C_FAC !< Scaling factor for soot coefficient look-up table
INTEGER :: N_KAPPA_T=44 !< Number of temperature points in absorption coefficient look-up table
INTEGER :: N_KAPPA_X=50 !< Number of species points in absorption coefficient look-up table
REAL(EB) :: KAPPA_X_MIN=1.E-5_EB,KAPPA_X_MAX=1._EB !< Min/max volume fraction for absorption coefficient look-up table
REAL(EB) :: KAPPA_C_MIN=2.E-7_EB,KAPPA_C_MAX=0.2_EB !< Min/Max mass fraction for soot coefficient look-up table
REAL(EB) :: KAPPA_X_FAC,LOG_KAPPA_X_FAC !< Scaling factor for absorption coefficient look-up table
REAL(EB) :: KAPPA_C_FAC,LOG_KAPPA_C_FAC !< Scaling factor for soot coefficient look-up table
REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: Y2RADCAL_SPECIES !< Primitive species mapping to radcal species
REAL(EB), ALLOCATABLE, DIMENSION(:,:,:,:) :: RADCAL_SPECIES2KAPPA ! Absorption coefficient look-up table
REAL(EB), ALLOCATABLE, DIMENSION(:) :: KAPPA_COND !< Array to remove condensed species from absorption coefficient look-up
INTEGER :: N_RADCAL_ARRAY_SIZE !< Number of radcal species present
INTEGER :: RADCAL_SPECIES_INDEX(16) !< Mapping of radcal species present to radcal calling function
CHARACTER(LABEL_LENGTH) :: RADCAL_SPECIES_ID(16)='NULL'!< Name of radcal species
Expand Down Expand Up @@ -3208,8 +3209,15 @@ SUBROUTINE INIT_RADIATION
CALL ChkMemErr('RADI','Y2RADCAL_SPECIES',IZERO)
Y2RADCAL_SPECIES = 0._EB

ALLOCATE(KAPPA_COND(N_TRACKED_SPECIES),STAT=IZERO)
CALL ChkMemErr('RADI','KAPPA_COND',IZERO)
KAPPA_COND = 1._EB

DO NS=1,N_TRACKED_SPECIES
IF( SPECIES_MIXTURE(NS)%EVAPORATION_SMIX_INDEX>0) CALL MEAN_CROSS_SECTIONS(SMIX_INDEX=NS)
IF (SPECIES_MIXTURE(NS)%EVAPORATION_SMIX_INDEX>0) THEN
CALL MEAN_CROSS_SECTIONS(SMIX_INDEX=NS)
KAPPA_COND(NS) = 0._EB
ENDIF
ENDDO
DO NS=1,N_SPECIES
SS => SPECIES(NS)
Expand Down Expand Up @@ -4675,11 +4683,14 @@ REAL(EB) FUNCTION GET_KAPPA(Z_IN,TMP,IBND)
! Returns the radiative absorption

USE PHYSICAL_FUNCTIONS, ONLY : GET_MOLECULAR_WEIGHT,GET_MASS_FRACTION_ALL
REAL(EB), INTENT(IN) :: Z_IN(1:N_TRACKED_SPECIES),TMP
REAL(EB), INTENT(INOUT) :: Z_IN(1:N_TRACKED_SPECIES)
REAL(EB), INTENT(IN) :: TMP
REAL(EB) :: KAPPA_TEMP,INT_FAC,KAPPA_SUM,SCALED_X_RADCAL_SPECIES,MWA,Y_OUT(1:N_SPECIES)
INTEGER, INTENT(IN) :: IBND
INTEGER :: LBND,UBND,N,TYY

Z_IN = Z_IN * KAPPA_COND

KAPPA_SUM = 0._EB

TYY = MAX(0 , MIN(N_KAPPA_T,INT((TMP - RTMPMIN) * TYY_FAC)))
Expand Down
5 changes: 0 additions & 5 deletions Source/read.f90
Original file line number Diff line number Diff line change
Expand Up @@ -8989,11 +8989,6 @@ SUBROUTINE READ_SURF(QUICK_READ)
SF%TMP_GAS_FRONT = TMP_GAS_FRONT + TMPM
SF%TMP_GAS_BACK = TMP_GAS_BACK + TMPM

IF (SF%EXTERNAL_FLUX>TWENTY_EPSILON_EB .AND. TMP_GAS_FRONT>-TMPM) THEN
WRITE(MESSAGE,'(3A)') 'ERROR(420): SURF ',TRIM(SF%ID),' cannot have both EXTERNAL_FLUX and TMP_GAS_FRONT.'
CALL SHUTDOWN(MESSAGE) ; RETURN
ENDIF

IF (SF%TMP_GAS_BACK>0._EB) SF%BACKING = VOID

! Allocate parameters indexed by layer
Expand Down
4 changes: 2 additions & 2 deletions Source/wall.f90
Original file line number Diff line number Diff line change
Expand Up @@ -436,7 +436,7 @@ SUBROUTINE NEAR_SURFACE_GAS_VARIABLES(T,SF,BC,B1,LP,TW,WALL_INDEX,PARTICLE_INDEX

IF (SF%TMP_GAS_FRONT > 0._EB) THEN
B1%TMP_G = TMPA + EVALUATE_RAMP(T-T_BEGIN,SF%RAMP(TIME_TGF)%INDEX)*(SF%TMP_GAS_FRONT-TMPA)
B1%Q_RAD_IN = B1%EMISSIVITY*SIGMA*B1%TMP_G**4
IF (SF%EXTERNAL_FLUX<TWENTY_EPSILON_EB) B1%Q_RAD_IN = B1%EMISSIVITY*SIGMA*B1%TMP_G**4
ELSE
B1%TMP_G = TMP(BC%IIG,BC%JJG,BC%KKG)
ENDIF
Expand All @@ -447,7 +447,7 @@ SUBROUTINE NEAR_SURFACE_GAS_VARIABLES(T,SF,BC,B1,LP,TW,WALL_INDEX,PARTICLE_INDEX

IF (SF%TMP_GAS_FRONT > 0._EB) THEN
B1%TMP_G = TMPA + EVALUATE_RAMP(T-T_BEGIN,SF%RAMP(TIME_TGF)%INDEX)*(SF%TMP_GAS_FRONT-TMPA)
B1%Q_RAD_IN = B1%EMISSIVITY*SIGMA*B1%TMP_G**4
IF (SF%EXTERNAL_FLUX<TWENTY_EPSILON_EB) B1%Q_RAD_IN = B1%EMISSIVITY*SIGMA*B1%TMP_G**4
ENDIF

! For thermally thick particles, interpolate near-surface quantities. B1%U_TANG interpolation is in part.f90
Expand Down
24 changes: 12 additions & 12 deletions Utilities/Python/scripts/favre_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,11 @@

tol = 1e-4
if e1 > tol:
print(f'Matlab Warning: e1 = {e1} in Species/favre_test mean cell data')
print(f'Python Warning: e1 = {e1} in Species/favre_test mean cell data')
if e2 > tol:
print(f'Matlab Warning: e2 = {e2} in Species/favre_test mean cell data')
print(f'Python Warning: e2 = {e2} in Species/favre_test mean cell data')
if e3 > tol:
print(f'Matlab Warning: e3 = {e3} in Species/favre_test mean cell data')
print(f'Python Warning: e3 = {e3} in Species/favre_test mean cell data')

# brute force integration for rms

Expand All @@ -89,11 +89,11 @@

tol = 1e-2
if e1 > tol:
print(f'Matlab Warning: e1 = {e1} in Species/favre_test rms cell data')
print(f'Python Warning: e1 = {e1} in Species/favre_test rms cell data')
if e2 > tol:
print(f'Matlab Warning: e2 = {e2} in Species/favre_test rms cell data')
print(f'Python Warning: e2 = {e2} in Species/favre_test rms cell data')
if e3 > tol:
print(f'Matlab Warning: e3 = {e3} in Species/favre_test rms cell data')
print(f'Python Warning: e3 = {e3} in Species/favre_test rms cell data')

# interpolated data

Expand Down Expand Up @@ -141,11 +141,11 @@

tol = 1e-4
if e1 > tol:
print(f'Matlab Warning: e1 = {e1} in Species/favre_test mean interpolated data')
print(f'Python Warning: e1 = {e1} in Species/favre_test mean interpolated data')
if e2 > tol:
print(f'Matlab Warning: e2 = {e2} in Species/favre_test mean interpolated data')
print(f'Python Warning: e2 = {e2} in Species/favre_test mean interpolated data')
if e3 > tol:
print(f'Matlab Warning: e3 = {e3} in Species/favre_test mean interpolated data')
print(f'Python Warning: e3 = {e3} in Species/favre_test mean interpolated data')

# brute force integration for rms

Expand All @@ -170,9 +170,9 @@

tol = 1e-2
if e1 > tol:
print(f'Matlab Warning: e1 = {e1} in Species/favre_test rms interpolated data')
print(f'Python Warning: e1 = {e1} in Species/favre_test rms interpolated data')
if e2 > tol:
print(f'Matlab Warning: e2 = {e2} in Species/favre_test rms interpolated data')
print(f'Python Warning: e2 = {e2} in Species/favre_test rms interpolated data')
if e3 > tol:
print(f'Matlab Warning: e3 = {e3} in Species/favre_test rms interpolated data')
print(f'Python Warning: e3 = {e3} in Species/favre_test rms interpolated data')

4 changes: 2 additions & 2 deletions Utilities/Python/scripts/openmp_timing_benchmarks.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@
plt.close()

if time64[3] > 80.:
print(f'Matlab Warning: Timing for openmp_test64 out of tolerance. {time64[3]}')
print(f'Python Warning: Timing for openmp_test64 out of tolerance. {time64[3]}')

if time128[3] > 80.:
print(f'Matlab Warning: Timing for openmp_test128 out of tolerance. {time128[3]}')
print(f'Python Warning: Timing for openmp_test128 out of tolerance. {time128[3]}')

2 changes: 1 addition & 1 deletion Utilities/Python/scripts/ribbed_channel.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
fdsplotlib.plot_to_fig(x_data=t_fds, y_data=Ub_fds, figure_handle=fig, marker_style=fds_marker[i], data_label=fds_key[i])
t_range = np.where(t_fds > 2)[0]
if abs(np.mean(Ub_fds[t_range]) - Ub) / Ub > 0.01:
print(f'Matlab Warning: Ub mean nx {geom[ii]}{nx[i]} = {np.mean(Ub_fds[t_range])}')
print(f'Python Warning: Ub mean nx {geom[ii]}{nx[i]} = {np.mean(Ub_fds[t_range])}')

plt.savefig(os.path.join(pltdir, f'ribbed_channel{geom[ii]}Ubulk.pdf'), format='pdf')
plt.close()
Expand Down
8 changes: 4 additions & 4 deletions Utilities/Python/scripts/saad_mms_temporal_error.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,11 +67,11 @@

L2_rho = np.linalg.norm(p_rho,ord=2)/math.sqrt(nx)
if L2_rho<1.99:
print('Matlab Warning: L2_rho = ',L2_rho,' in Saad MMS')
print('Python Warning: L2_rho = ',L2_rho,' in Saad MMS')

L2_Z = np.linalg.norm(p_Z,ord=2)/math.sqrt(nx);
if L2_Z<1.99:
print('Matlab Warning: L2_Z = ',L2_Z,' in Saad MMS')
print('Python Warning: L2_Z = ',L2_Z,' in Saad MMS')

# write the l2 norm to latex

Expand Down Expand Up @@ -202,11 +202,11 @@

L2_rho = np.linalg.norm(p_rho,ord=2)/math.sqrt(nx)
if L2_rho<1.99:
print('Matlab Warning: L2_rho = ',L2_rho,' in Saad CC MMS')
print('Python Warning: L2_rho = ',L2_rho,' in Saad CC MMS')

L2_Z = np.linalg.norm(p_Z,ord=2)/math.sqrt(nx);
if L2_Z<1.99:
print('Matlab Warning: L2_Z = ',L2_Z,' in Saad CC MMS')
print('Python Warning: L2_Z = ',L2_Z,' in Saad CC MMS')

# write the l2 norm to latex

Expand Down
4 changes: 2 additions & 2 deletions Verification/Miscellaneous/init_overlap.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
Time,T20,D1p19,D1p51,P0p0,I6p0,T200,D0p938,I15p6,T427,D0p50,I9p9,T700,D0p42,I81p6,P0p5,P0p3
0.00E+00,2.00E+01,1.19E+00,1.51E+00,0.00E+00,6.00E+00,2.00E+02,9.38E-01,1.56E+01,4.28E+02,5.00E-01,9.90E+00,7.00E+02,4.18E-01,8.16E+01,5.00E-01,3.00E-01
1.00E-01,2.00E+01,1.19E+00,1.51E+00,0.00E+00,6.00E+00,2.00E+02,9.38E-01,1.56E+01,4.28E+02,5.00E-01,9.90E+00,7.00E+02,4.18E-01,8.16E+01,5.00E-01,3.00E-01
0.00E+00,2.00E+01,1.19E+00,1.51E+00,0.00E+00,5.85E+00,2.00E+02,9.38E-01,1.59E+01,4.28E+02,5.00E-01,9.80E+00,7.00E+02,4.18E-01,8.62E+01,5.00E-01,3.00E-01
1.00E-01,2.00E+01,1.19E+00,1.51E+00,0.00E+00,5.85E+00,2.00E+02,9.38E-01,1.59E+01,4.28E+02,5.00E-01,9.80E+00,7.00E+02,4.18E-01,8.62E+01,5.00E-01,3.00E-01
Loading