Skip to content

Commit 6950c18

Browse files
committed
FDS verification: radiation_box from Matlab to Python
1 parent 3ccff73 commit 6950c18

File tree

4 files changed

+59
-86
lines changed

4 files changed

+59
-86
lines changed

Utilities/Matlab/FDS_verification_script.m

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525

2626
% Scripts to run prior to dataplot
2727

28-
disp('radiation_box...'); radiation_box
2928
disp('radiation_plane_layer...'); radiation_plane_layer
3029
disp('ns2d...'); ns2d
3130
disp('vort2d...'); vort2d

Utilities/Matlab/scripts/radiation_box.m

Lines changed: 0 additions & 85 deletions
This file was deleted.

Utilities/Python/FDS_verification_script.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
# print("ignition_delay..."); subprocess.run(["python","./scripts/cantera_ignition_delay.py"])
1414
# print("reaction_rates..."); subprocess.run(["python","./scripts/cantera_reaction_rates.py"])
1515
# print("turbulent_batch_reactor..."); subprocess.run(["python","./scripts/cantera_turbulent_batch_reactor.py"])
16+
print("radiation_box..."); subprocess.run(["python","./scripts/radiation_box.py"])
1617

1718
# Dataplot and scatplot options
1819

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# radiation_box.py Collect heat fluxes from radiation box cases to a single csv file in Verification/Radiation folder
2+
3+
import os
4+
import numpy as np
5+
import pandas as pd
6+
7+
# Define positions
8+
x = np.array([
9+
2.50E-02, 7.50E-02, 1.25E-01, 1.75E-01, 2.25E-01,
10+
2.75E-01, 3.25E-01, 3.75E-01, 4.25E-01, 4.75E-01,
11+
5.25E-01, 5.75E-01, 6.25E-01, 6.75E-01, 7.25E-01,
12+
7.75E-01, 8.25E-01, 8.75E-01, 9.25E-01, 9.75E-01
13+
])
14+
15+
# Directory
16+
dir = '../../Verification/Radiation/'
17+
18+
# Input files
19+
infile = [
20+
f'{dir}radiation_box__20___50_devc.csv',
21+
f'{dir}radiation_box__20__100_devc.csv',
22+
f'{dir}radiation_box__20__300_devc.csv',
23+
f'{dir}radiation_box__20_1000_devc.csv',
24+
f'{dir}radiation_box__20_2000_devc.csv',
25+
f'{dir}radiation_box_100___50_devc.csv',
26+
f'{dir}radiation_box_100__100_devc.csv',
27+
f'{dir}radiation_box_100__300_devc.csv',
28+
f'{dir}radiation_box_100_1000_devc.csv',
29+
f'{dir}radiation_box_100_2000_devc.csv'
30+
]
31+
32+
# Corresponding labels
33+
label = [
34+
'Flux_20_50', 'Flux_20_100', 'Flux_20_300', 'Flux_20_1000', 'Flux_20_2000',
35+
'Flux_100_50', 'Flux_100_100', 'Flux_100_300', 'Flux_100_1000', 'Flux_100_2000'
36+
]
37+
38+
# Initialize matrix for flux data
39+
flux = np.zeros((20, 10))
40+
41+
# Read data and populate flux
42+
for n in range(10):
43+
if not os.path.exists(infile[n]):
44+
print(f'Error: File {infile[n]} does not exist. Skipping case.')
45+
else:
46+
# Read CSV file starting from the 4th row
47+
data = pd.read_csv(infile[n], skiprows=3, header=None)
48+
t = data.iloc[0, 0]
49+
flux[:, n] = data.iloc[0, 1:21].values
50+
51+
# Output file
52+
filename = f'{dir}radiation_box_devc.csv'
53+
54+
# Write to CSV
55+
with open(filename, 'w') as fid:
56+
fid.write('Position, ' + ', '.join(label) + '\n')
57+
for i in range(20):
58+
fid.write(f'{x[i]:.6f}, ' + ', '.join(f'{flux[i, j]:.6f}' for j in range(10)) + '\n')

0 commit comments

Comments
 (0)