Skip to content

Commit 74095b3

Browse files
authored
Merge pull request #84 from su2code/develop
Develop
2 parents 28aaa49 + 77a9075 commit 74095b3

35 files changed

Lines changed: 1457927 additions & 58 deletions

compressible_flow/NICFD_nozzle/PhysicsInformed/0:generate_config.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
# Generate configuration for defining a physics-informed neural network for modeling the |
2121
# fluid properties of siloxane MM in NICFD with the data-driven fluid model in SU2. |
2222
# |
23-
# Version: 2.0.0 |
23+
# Version: 3.0.0 |
2424
# |
2525
#=============================================================================================#
2626

compressible_flow/NICFD_nozzle/PhysicsInformed/2:train_PINN.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
# Initate physics-informed machine learning process for training the neural network used to |
2121
# model the fluid properties of siloxane MM in NICFD with the SU2 data-driven fluid model. |
2222
# |
23-
# Version: 2.0.0 |
23+
# Version: 3.0.0 |
2424
# |
2525
#=============================================================================================#
2626

compressible_flow/NICFD_nozzle/PhysicsInformed/3:run_SU2.py renamed to compressible_flow/NICFD_nozzle/PhysicsInformed/3:prepare_simulation.py

Lines changed: 11 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## \file 3:run_SU2.py
44
# \brief NICFD simulation of supersonic expansion of siloxane MM.
5-
# \version 8.1.0 "Harrier"
5+
# \version 8.3.0 "Harrier"
66
#
77
# SU2 Project Website: https://su2code.github.io
88
#
@@ -26,9 +26,7 @@
2626

2727
import numpy as np
2828
import gmsh
29-
import pysu2
3029
import CoolProp.CoolProp as CP
31-
from mpi4py import MPI
3230
from su2dataminer.config import Config_NICFD
3331

3432

@@ -54,18 +52,6 @@ def WriteSU2Config(Config:Config_NICFD):
5452

5553
# SU2 config options for NICFD nozzle simulation.
5654
su2_options = """
57-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
58-
% %
59-
% SU2 configuration file, automatically generated with "3:run_SU2.py" %
60-
% Case description: Non-ideal compressible fluid flow in a converging- %
61-
% diverging supersonic nozzle using a PINN for thermodynamic %
62-
% state calculations. %
63-
% Author: Evert Bunschoten %
64-
% Institution: Delft University of Technology %
65-
% Date: 2025.3.26 %
66-
% File Version 8.1.0 "Harrier" %
67-
% %
68-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6955
SOLVER= RANS
7056
KIND_TURB_MODEL= SA
7157
SA_OPTIONS= NONE
@@ -243,26 +229,16 @@ def GenerateMesh():
243229

244230
return mesh_filename
245231

246-
comm = MPI.COMM_WORLD
247-
rank = comm.Get_rank()
232+
# Load SU2 DataMiner configuration.
233+
Config = Config_NICFD("SU2DataMiner_MM.cfg")
248234

249-
if rank == 0:
250-
# Load SU2 DataMiner configuration.
251-
Config = Config_NICFD("SU2DataMiner_MM.cfg")
235+
# Write SU2 configuration options.
236+
su2_options = WriteSU2Config(Config)
252237

253-
# Write SU2 configuration options.
254-
su2_options = WriteSU2Config(Config)
238+
# Generate computational mesh.
239+
mesh_filename = GenerateMesh()
240+
su2_options = su2_options.replace("__MESH_FILENAME__", mesh_filename)
255241

256-
# Generate computational mesh.
257-
mesh_filename = GenerateMesh()
258-
su2_options = su2_options.replace("__MESH_FILENAME__", mesh_filename)
259-
260-
# Write SU2 configuration file.
261-
with open("config_NICFD_PINN.cfg", "w") as fid:
262-
fid.write(su2_options)
263-
comm.Barrier()
264-
265-
# Initialize NICFD simulation.
266-
driver = pysu2.CSinglezoneDriver("config_NICFD_PINN.cfg",1, comm)
267-
driver.StartSolver()
268-
driver.Finalize()
242+
# Write SU2 configuration file.
243+
with open("config_NICFD_PINN.cfg", "w") as fid:
244+
fid.write(su2_options)

compressible_flow/NICFD_nozzle/PhysicsInformed/config_NICFD_PINN.cfg

Lines changed: 7 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,15 @@
1-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2-
% %
3-
% SU2 configuration file, automatically generated with "3:run_SU2.py" %
4-
% Case description: Non-ideal compressible fluid flow in a converging- %
5-
% diverging supersonic nozzle using a PINN for thermodynamic %
6-
% state calculations. %
7-
% Author: Evert Bunschoten %
8-
% Institution: Delft University of Technology %
9-
% Date: 2025.3.26 %
10-
% File Version 8.1.0 "Harrier" %
11-
% %
12-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13-
141

152
SOLVER= RANS
163
KIND_TURB_MODEL= SA
174
SA_OPTIONS= NONE
5+
MATH_PROBLEM= DIRECT
186
RESTART_SOL=NO
197
MACH_NUMBER= 0.05
208
AoA= 0.0
219

22-
FREESTREAM_PRESSURE= 1.809444e+06
10+
FREESTREAM_PRESSURE= 1.802104e+06
2311

24-
FREESTREAM_TEMPERATURE= 5.229862e+02
12+
FREESTREAM_TEMPERATURE= 5.229359e+02
2513

2614
FREESTREAM_TURBULENCEINTENSITY = 0.1
2715

@@ -49,17 +37,15 @@ PRANDTL_TURB=8.25e-01
4937

5038
MARKER_HEATFLUX= (wall, 0.0)
5139

52-
MARKER_MONITORING=(wall)
5340

5441
MARKER_EULER=(symmetry)
5542

56-
MARKER_GILES= (inflow, TOTAL_CONDITIONS_PT, 1.809444e+06, 5.229862e+02, 1.0, 0.0, 0.0, 0.8, 0.8,\
57-
outflow, STATIC_PRESSURE,1.809444e+05, 0.0, 0.0, 0.0, 0.0, 0.8, 0.8)
43+
MARKER_GILES= (inflow, TOTAL_CONDITIONS_PT, 1.802104e+06, 5.229359e+02, 1.0, 0.0, 0.0, 0.8, 0.8, outflow, STATIC_PRESSURE,1.802104e+05, 0.0, 0.0, 0.0, 0.0, 0.8, 0.8)
5844
SPATIAL_FOURIER=NO
5945
TURBOMACHINERY_KIND= AXIAL
6046
TURBO_PERF_KIND=TURBINE
61-
RAMP_OUTLET=NO
62-
RAMP_OUTLET_COEFF= (1.809444e+06, 10, 200)
47+
RAMP_OUTLET=YES
48+
RAMP_OUTLET_COEFF= (1.802104e+06, 10, 200)
6349
AVERAGE_PROCESS_KIND= AREA
6450
MIXEDOUT_COEFF=(0.1, 1e-5, 15.0)
6551
MARKER_TURBOMACHINERY= (inflow, outflow)
@@ -93,7 +79,7 @@ CONV_RESIDUAL_MINVAL= -16
9379
CONV_STARTITER= 10
9480
CONV_CAUCHY_ELEMS= 100
9581
CONV_CAUCHY_EPS= 1E-6
96-
CONV_FILENAME=history_adjoint.csv
82+
9783
MESH_FILENAME= nozzle_mesh.su2
9884

9985
OUTPUT_WRT_FREQ= 20
Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2+
% %
3+
% SU2 configuration file %
4+
% Case description: Wind velocity through the streets of Amsterdam %
5+
% Author: N. Beishuizen %
6+
% Institution: TU Eindhoven %
7+
% Date: 2026.01.01 %
8+
% File Version 8.3.0 "Harrier" %
9+
% %
10+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11+
12+
% ------------- DIRECT, ADJOINT, AND LINEARIZED PROBLEM DEFINITION ------------%
13+
%
14+
SOLVER = INC_RANS
15+
KIND_TURB_MODEL= SST
16+
SST_OPTIONS= V2003m
17+
RESTART_SOL= YES
18+
%
19+
% ---------------- INCOMPRESSIBLE FLOW CONDITION DEFINITION -------------------%
20+
%
21+
% For the mean flow it is only inmportant to ensure a velocity (1,0,0) everywhere.
22+
INC_DENSITY_MODEL = CONSTANT
23+
INC_ENERGY_EQUATION = NO
24+
INC_DENSITY_INIT = 1.2
25+
26+
%# wind speed on 01-01-2026 at 12:00 in Amsterdam (262 degrees 6.81 m/s)
27+
INC_VELOCITY_INIT = (6.74, 0.95, 0.0 )
28+
29+
INC_NONDIM = DIMENSIONAL
30+
%
31+
% --------------------------- VISCOSITY MODEL ---------------------------------%
32+
%
33+
VISCOSITY_MODEL= CONSTANT_VISCOSITY
34+
MU_CONSTANT= 1.716E-5
35+
%
36+
% -------------------- SPECIES TRANSPORT ---------------------------------------%
37+
%
38+
KIND_SCALAR_MODEL= NONE
39+
%
40+
DIFFUSIVITY_MODEL = CONSTANT_DIFFUSIVITY
41+
DIFFUSIVITY_CONSTANT = 0.002
42+
%
43+
CONV_NUM_METHOD_SPECIES= SCALAR_UPWIND
44+
MUSCL_SPECIES= NO
45+
SLOPE_LIMITER_SPECIES= NONE
46+
%
47+
TIME_DISCRE_SPECIES= EULER_IMPLICIT
48+
%
49+
SPECIES_INIT = 0
50+
SPECIES_CLIPPING= YES
51+
SPECIES_CLIPPING_MIN= 0.0
52+
SPECIES_CLIPPING_MAX= 1.0
53+
54+
% -------------------- TURBULENT TRANSPORT ---------------------------------------%
55+
%
56+
CONV_NUM_METHOD_TURB= BOUNDED_SCALAR
57+
MUSCL_TURB= NO
58+
%
59+
%
60+
% -------------------- BOUNDARY CONDITION DEFINITION --------------------------%
61+
%
62+
MARKER_FAR= farfield
63+
MARKER_HEATFLUX= wall_buildings
64+
MARKER_INLET_TURBULENT = (farfield, 0.05, 10)
65+
MARKER_ANALYZE= ( farfield )
66+
67+
68+
% ------------------------ WALL FUNCTION DEFINITION --------------------------%
69+
%
70+
%MARKER_WALL_FUNCTIONS= ( wall_buildings, STANDARD_WALL_FUNCTION )
71+
%WALLMODEL_KAPPA= 0.41
72+
%WALLMODEL_B= 5.5
73+
%WALLMODEL_MINYPLUS= 5.0
74+
%WALLMODEL_MAXITER= 500
75+
%WALLMODEL_RELFAC= 0.4
76+
77+
%
78+
% ------------- COMMON PARAMETERS DEFINING THE NUMERICAL METHOD ---------------%
79+
%
80+
NUM_METHOD_GRAD= GREEN_GAUSS
81+
CFL_NUMBER = 10
82+
CFL_ADAPT= YES
83+
CFL_ADAPT_PARAM= ( 0.9, 1.1, 1, 1000, 1e-2 )
84+
ITER= 5000
85+
%
86+
CFL_REDUCTION_SPECIES = 1.0
87+
%
88+
% ------------------------ LINEAR SOLVER DEFINITION ---------------------------%
89+
%
90+
LINEAR_SOLVER= FGMRES
91+
LINEAR_SOLVER_PREC= ILU
92+
LINEAR_SOLVER_ERROR= 1E-06
93+
LINEAR_SOLVER_ITER= 10
94+
%
95+
% -------------------- FLOW NUMERICAL METHOD DEFINITION -----------------------%
96+
%
97+
CONV_NUM_METHOD_FLOW= FDS
98+
MUSCL_FLOW= NO
99+
SLOPE_LIMITER_FLOW = NONE
100+
TIME_DISCRE_FLOW= EULER_IMPLICIT
101+
%
102+
% --------------------------- CONVERGENCE PARAMETERS --------------------------%
103+
%
104+
CONV_FIELD = RMS_PRESSURE, RMS_VELOCITY-X, RMS_VELOCITY-Y, RMS_SPECIES
105+
CONV_RESIDUAL_MINVAL = -17
106+
CONV_STARTITER= 10
107+
%
108+
% ------------------------- INPUT/OUTPUT INFORMATION --------------------------%
109+
%
110+
MESH_FILENAME = amsterdam_fine.su2
111+
%
112+
SCREEN_OUTPUT = INNER_ITER WALL_TIME RMS_RES LINSOL CUSTOM AVG_CFL
113+
SCREEN_WRT_FREQ_INNER= 10
114+
%
115+
HISTORY_OUTPUT = RMS_RES MAX_RES FLOW_COEFF
116+
%
117+
OUTPUT_FILES = RESTART, PARAVIEW_MULTIBLOCK
118+
OUTPUT_WRT_FREQ= 100
119+
VOLUME_OUTPUT = PRIMITIVE, RESIDUAL

0 commit comments

Comments
 (0)