Skip to content

Commit 598c091

Browse files
authored
Merge pull request #165 from su2code/master
merge master with develop
2 parents eb16675 + f3142f5 commit 598c091

18 files changed

+225
-39
lines changed

_data/tutorials.yml

+2
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@
4545
- Dynamic_FSI_Python
4646
- Static_CHT
4747
- Inc_Heated_Cylinders_Unsteady
48+
- SS_CR_CHT
49+
- Inc_Combustion
4850

4951
- title: Design Features
5052
tutorials:

_su2gui/Installation.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@ To launch the GUI, run the following command in your terminal:
2323

2424
SU2_GUI
2525

26-
For a quick introduction to using SU2GUI, visit the [Quick start](./../Quick-start) page. For additional terminal options, refer to the [Terminal Initialization](./../Terminal-Initialization) page.
26+
For a quick introduction to using SU2GUI, visit the [Quick start](./../Quick-Start) page. For additional terminal options, refer to the [Terminal Initialization](./../Terminal-Initialization) page.

_su2gui/Logs-Tab-and-Errors.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ The SU2 and SU2GUI logs provide essential information about the execution and pe
88

99
## SU2 Logs
1010

11-
![SU2 Log Tab](../../su2gui_files/User_guide/logs/su2-logs.png)
11+
![SU2 Log Tab](../../su2gui_files/User_guide/Logs/su2-logs.png)
1212

1313
The SU2 logs contain detailed information about the solver's execution, including convergence history, residual values, and solution progress. These logs are invaluable for identifying convergence issues, detecting numerical instabilities, and gaining insights into the overall simulation process.
1414

@@ -17,7 +17,7 @@ Each SU2 log file is stored within the corresponding case folder and is unique t
1717
---
1818
## SU2GUI Logs
1919

20-
![SU2GUI Log Tab](../../su2gui_files/User_guide/logs/su2gui-logs.png)
20+
![SU2GUI Log Tab](../../su2gui_files/User_guide/Logs/su2gui-logs.png)
2121

2222
The SU2GUI logs capture interactions and events within the graphical user interface. These logs are useful for understanding user actions, identifying errors or warnings, and tracking the workflow followed during a simulation setup.
2323

@@ -27,7 +27,7 @@ Unlike the SU2 logs, the SU2GUI log file is updated and cleared each time SU2GUI
2727

2828
## Error/Warn Message
2929

30-
![Error message](../../su2gui_files/User_guide/logs/error-message.png)
30+
![Error message](../../su2gui_files/User_guide/Logs/error-message.png)
3131

3232
In addition to capturing interactions and events within the graphical user interface, SU2GUI also displays any Error and Warning messages received in the log files as pop-up dialog box. This feature helps users quickly identify and address any issues or potential problems during the simulation setup or execution.
3333

_su2gui/Mesh.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ SU2GUI offers the option to load a mesh file through both the GUI and the termin
1515
1. Start a new case. Follow these guides for detailed steps on [starting a new case](./../Manage-Cases/#starting-a-new-case).
1616

1717

18-
2. Click on the "Load Mesh File" option. ![](../../su2gui_files/User_guide/Mesh/button-mesh-file.png)
18+
2. Click on the "Load Mesh File" option. ![](../../su2gui_files/User_guide/mesh/button-mesh-file.png)
1919

2020

21-
3. In the pop-up window, choose the desired mesh file. ![](../../su2gui_files/User_guide/Mesh/choose-mesh-file.png)
21+
3. In the pop-up window, choose the desired mesh file. ![choose mesh file](../../su2gui_files/User_guide/mesh/choose-mesh-file.png)
2222

2323

24-
4. The mesh file should now be loaded, and the properties in the GUI should be updated accordingly. ![](../../su2gui_files/User_guide/Mesh/loaded-mesh-file.png)
24+
4. The mesh file should now be loaded, and the properties in the GUI should be updated accordingly. ![loaded mesh file](../../su2gui_files/User_guide/mesh/loaded-mesh-file.png)
2525

2626

2727

_tutorials/incompressible_flow/Inc_Combustion/Inc_Combustion.md

+58-32
Large diffs are not rendered by default.

_tutorials/index.md

+4
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,10 @@ Linear Nastran-like model coupled with compressible unsteady RANS equations usin
9595
Simulation of multiple heated cylinders in incompressible fluid flow.
9696
* [Unsteady Conjugate Heat Transfer](/tutorials/Inc_Heated_Cylinders_Unsteady/)
9797
Simulation of an unsteady coupled CHT problem incorporating multiple physical zones.
98+
* [Conjugate Heat Transfer between Solid Domains](/tutorials/SS_CR_CHT/)
99+
Simulation of CHT between solid domains with contact resistance.
100+
* [Pre-mixed Hydrogen Combustion](/tutorials/Inc_Combustion/)
101+
Simulation of a laminar, pre-mixed hydrogen flame on a cooled burner plate.
98102

99103
#### Shape Design Features
100104

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
---
2+
title: Solid-to-Solid Conjugate Heat Transfer with Contact Resistance
3+
permalink: /tutorials/SS_CR_CHT/
4+
written_by: EvertBunschoten
5+
for_version: 8.0.1
6+
revised_by: EvertBunschoten
7+
revised_version: 8.0.1
8+
solver: MULTIPHYSICS
9+
requires: SU2_CFD, Gmsh
10+
complexity: advanced
11+
follows: Static_CHT
12+
userguide: Multizone
13+
---
14+
15+
## Goals
16+
17+
This tutorial shows the ability of SU2 to solve conjugate heat transfer problems between solids with contact resistance. Two solids with a different material composition are conducting thermal energy to one another. The thermal energy transfer is limited through the application of contact resistance. In addition, an incompressible flow (air) flows along the two solids, participating in the transfer of thermal energy.
18+
19+
20+
## Resources
21+
22+
The resources for this tutorial can be found in the [multiphysics/contact_resistance_cht](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht) directory in the [tutorial repository](https://github.com/su2code/Tutorials). You will need the configuration files for all physical zones ([fluid.cfg](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/fluid.cfg), [solid_1.cfg](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_1.cfg), [solid_2.cfg](https://github.com/su2code/Tutorials/tree/master/multiphysics/steady_cht/contact_resistance_cht/solid_2)), the cofiguration file to invoke a multiphysics simulation run ([master.cfg](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/master.cfg)) and the mesh files. These can be generated through GMesh using the .geo files for the [fluid zone](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/fluid_3.geo), and solid zones ([solid 1](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_1.geo), [solid 2](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_2.geo)).
23+
24+
25+
## Tutorial
26+
27+
The following tutorial will walk you through the steps required when solving for a coupled CHT solution incorporating multiple physical zones and contact resistance. It is assumed you have already obtained and compiled the SU2_CFD code for a serial computation. If you have yet to complete these requirements, please see the [Download](/docs_v8/Download/) and [Installation](/docs_v8/Installation/) pages.
28+
29+
### Background
30+
31+
Typical engineering applications involving conjugate heat transfer often do not concern a single solid material. For example, a pipe transporting a fluid may be composed of different layers of materials or a heat exchanger in a fluid flow has to be attached to the surrounding structure using insulation material. Depending on the application, the estimation of heat transfer through touching solid mediums can be crucial. Unlike the transfer between solid and fluid mediums, the contact between solid mediums is imperfect. Small cavities between the neighboring solids may result in a significant resistance in heat transfer compared to the idealized situation of perfect contact. SU2 allows the user to model the contact resistance between solid domains.
32+
33+
The heat flux between a conjugate heat transfer interface and the neighboring cell for an idealized contact (no contact resistance) is defined as
34+
35+
$$
36+
q_{w} = \frac{T - T_w}{\frac{l}{k}}
37+
$$
38+
39+
where $T$ is the temperature in the neighboring cell, $T_w$ the wall temperature, $l$ the distance between the cell center and the interface, and $k$ the thermal conductivity of the solid medium. The effect of contact resistance is modeled similarly compared to the contact resistance of [Ansys Fluent](https://www.afs.enea.it/project/neptunius/docs/fluent/html/th/node358.htm).
40+
41+
$$
42+
q_{w} = \frac{T - T_w}{\frac{l}{k} + R_c}
43+
$$
44+
45+
Here, $R_c$ is the contact resistance with the units $m K W^{-1}$, or the inverse of the heat transfer coefficient. For ideal contact, $R_c$ is equal to zero. This results in the temperature on both sides of the interface to be equal. Applying a non-zero value for $R_c$ restricts the heat transfer between the two solid domains, resulting in a temperature discontinuity. To illustrate this, consider the following set-up with two solid domains.
46+
47+
![Solid domain set-up](../../../tutorials_files/multiphysics/contact_resistance_cht/solid_domains.png)
48+
Figure 1: Two solid domains subject to iso-thermal boundary conditions connected by a zone interface.
49+
50+
51+
Here, the two colored blocks have different thermal properties and are subject to two isothermal walls. The temperature profile along the centerline for various values of $R_c$ is shown below. The discontinuity between the temperatures on either side of the interface is proportional to the value of $R_c$.
52+
53+
![Effect of $R_c$](../../../tutorials_files/multiphysics/contact_resistance_cht/contact_resistance_effect.png)
54+
Figure 2: The effect of altering the contact resistance at the interface between the solid domains.
55+
56+
What follows is a tutorial with heat transfer between solid and fluid domains that illustrates the use of the contact resistance model.
57+
58+
### Problem Setup
59+
60+
This problem will solve for the incompressible flow along side two solid, metal blocks with different thermal properties, subject to heat transfer with contact resistance at the interface between the blocks. The simulation setup is shown below. The two solid blocks are squares with a side length of 1.0e-02m, while the fluid domain has a width of 5.0e-03m.
61+
62+
![Problem Setup](../../../tutorials_files/multiphysics/contact_resistance_cht/problem_setup.png)
63+
Figure 3: Computational setup for the tutorial problem for conjugate heat transfer between solid and fluid domains.
64+
65+
The following flow conditions that are set for the fluid domain with a Reynolds number of 260:
66+
- Fluid model: incompressible, ideal gas
67+
- Density = 1.29 kg/m^3
68+
- Inlet Velocity Magnitude = 0.1 m/s
69+
- Inlet temperature = 300 K
70+
- Viscosity (constant) = 1.0e-05 kg/(m-s)
71+
72+
Solid domain 1 has the material properties of stainless steel:
73+
- Density = 8935 kg/m^3
74+
- Specific heat = 3850 J/(kg-K)
75+
- Thermal conductivity = 26 W/(m-K)
76+
77+
Solid domain 2 has the material properties of copper:
78+
- Density = 8000 kg/m^3
79+
- Specific heat = 4420 J/(kg-K)
80+
- Thermal conductivity = 61 W/(m-K)
81+
82+
The two solid blocks each are subject to an iso-thermal wall boundary condition, which drives the transfer of heat between the solid domains and the fluid. The interface type for all domains was set to ```DIRECT_TEMPERATURE_ROBIN_HEATFLUX```, with a contact resistance value of 1.0e-04 K-m/W applied to the interface between Solid 1 and Solid 2. All other boundaries were defined as symmetry boundary conditions.
83+
84+
85+
### Mesh Description
86+
87+
The computational domain for this tutorial is made up of three separate meshes; [Solid 1](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_mesh_1.su2), [Solid 2](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_mesh_2.su2), and [Fluid](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/fluid_mesh.su2). The meshes for the solid domains are simple, square meshes with 40 nodes along each side, while the fluid domain mesh is refined near the interface with the solid domains. These meshes can alternatively be generated through Gmesh. The .geo files for [Solid 1](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_1.geo), [Solid 2](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_2.geo), and [Fluid](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/fluid_3.geo) allow for the generation of the respective SU2 mesh files.
88+
89+
![Problem Setup Mesh](../../../tutorials_files/multiphysics/contact_resistance_cht/problem_mesh.png)
90+
Figure 4: The computational mesh with all three physical zones.
91+
92+
### Configuration File Options
93+
94+
Several of the key configuration file options for this simulation are highlighted here. For this problem, four configuration files are used. The [master configuration file](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/master.cfg) describes the interface between the fluid and solid domains as well as the application of contact resistance.
95+
```
96+
CONFIG_LIST = (solid_1.cfg, solid_2.cfg, fluid.cfg)
97+
MARKER_ZONE_INTERFACE= (cht_interface_1_2, cht_interface_2_1,\
98+
cht_interface_1_3, cht_interface_3_1,\
99+
cht_interface_2_3, cht_interface_3_2)
100+
101+
MARKER_CHT_INTERFACE= (cht_interface_1_2, cht_interface_2_1,\
102+
cht_interface_1_3, cht_interface_3_1,\
103+
cht_interface_2_3, cht_interface_3_2)
104+
105+
```
106+
Here, ```cht_interface_1_2``` and ```cht_interface_2_1``` are the boundaries connecting Solid 1 with Solid 2, while the other interfaces connect the fluid and solid domains. The contact resistance model in SU2 allows the user to apply a contact resistance value for each of the interfaces.
107+
108+
```
109+
CHT_INTERFACE_CONTACT_RESISTANCE = (1e-4,0,0)
110+
```
111+
112+
Be mindful that the number of values for contact resistance should match the number of interfaces. For solid-fluid interfaces, the contact resistance model does not apply. Applying a non-zero value for contact resistance for such interfaces will therefore not affect the simulation results.
113+
114+
The configurations for the [steel solid domain](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_1.cfg), [copper solid domain](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/solid_2.cfg), and [fluid domain](https://github.com/su2code/Tutorials/tree/master/multiphysics/contact_resistance_cht/fluid_3.cfg) all contain standard settings for multi-physics simulations.
115+
116+
117+
### Running SU2
118+
119+
In order to run this test case, follow these steps at a terminal command line:
120+
1. Move to the directory containing the config files and the mesh files. Make sure that the SU2 tools were compiled, installed, and that their install location was added to your path.
121+
2. Run the executable by entering
122+
123+
```
124+
$ SU2_CFD master.cfg
125+
```
126+
127+
at the command line.
128+
3. SU2 will print residual updates with each outer iteration of the flow solver, and the simulation will terminate after reaching running for 2000 iterations
129+
4. Files containing the results will be written upon exiting SU2. The solutions for both solid and fluid domains are contained in a single ParaView multiblock file (.vtm), from which the solutions can be loaded.
130+
131+
### Results
132+
133+
The temperature solution of the completed simulation is shown below. The hot, stainless steel block heats up the flow in the fluid domain, which transfers the heat partially to the copper block downstream through convection.
134+
135+
![Temperature solution](../../../tutorials_files/multiphysics/contact_resistance_cht/solution_temperature.png)
136+
Figure 5: Temperature solution for the current setup.
137+
138+
The effect of the application of contact resistance becomes clear when visualizing the temperature trend across interfaces. Three temperature trends according to each interface are shown below and are color coded corresponding to the lines shown in Figure 6.
139+
140+
![Temperature solution lines](../../../tutorials_files/multiphysics/contact_resistance_cht/solution_temperature_lines.png)
141+
Figure 6: Temperature trends across the heat transfer interfaces.
142+
143+
The temperature trends across the solid-fluid interfaces (green, red) are continuous, the temperature trend across the solid-solid interface (purple) shows a discontinuity at the interface as a result of the application of contact resistance. This effect can be exaggerated when increasing the value for the contact resistance. For example, when applying a contact resistance value of 10 W-m/K,
144+
```
145+
CHT_INTERFACE_CONTACT_RESISTANCE = (10.0,0,0)
146+
```
147+
the two solid domains are currently essentially insulated from one another. This results in the following temperature solution.
148+
149+
![Temperature solution](../../../tutorials_files/multiphysics/contact_resistance_cht/solution_temperature_n.png)
150+
Figure 7: Temperature solution for a contact resistance value of 10.0 W-m/K.
151+
152+
153+
![Temperature solution lines](../../../tutorials_files/multiphysics/contact_resistance_cht/solution_temperature_lines_n.png)
154+
Figure 8: Temperature trends across the interfaces for a contact resistance value of 10.0 W-m/K.
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

0 commit comments

Comments
 (0)