Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

🔥 Spatially Varying Wall Temperature Simulation using SU2

SU2 Python RANS Flow Mach


  Freestream  ──────────────────────────────────────►
              ┌─────────────────────────────────────┐
              │           Fluid Domain              │
              └─────────────────────────────────────┘
                500 K ──────► 600 K ──────► 700 K
                  ●══════════════════════════●
               Leading                   Trailing
                Edge                       Edge

Compressible turbulent flat plate CFD simulation using the SU2 Python wrapper to impose a spatially varying wall temperature — demonstrating dynamic boundary condition control during runtime.


📌 Project Idea

Typical CFD simulations use a constant wall temperature.
In this study, the temperature changes continuously along the plate.

The wall temperature is defined as:

$$T_{wall}(s) = 500 + 200x$$

where $x$ = normalized position along the plate (0 → 1)

🌡️ Temperature Distribution

📍 Plate Position 🌡️ Temperature 📊 Gradient
Leading Edge 500 K ░░░░░░░░░░
Middle 600 K ░░░░░█████
Trailing Edge 700 K ██████████

This represents a heated plate with increasing temperature downstream, similar to many thermal engineering and aerospace applications.


🧠 Physics Model

⚙️ Parameter 📋 Value
Solver RANS
Turbulence Model k–ω SST
Flow Type Compressible
Mach Number 0.03059
Freestream Temperature 293.15 K
Freestream Pressure 101,325 Pa

🧩 How the Python Wrapper Works

Instead of defining wall temperature in the .cfg file, the Python wrapper updates the boundary condition every time step:

s = float(iVertex) / float(nVertex_CHTMarker)

WallTemp = 500.0 + 200.0 * s

SU2Driver.SetMarkerCustomTemperature(CHTMarkerID, iVertex, WallTemp)

Every node on the plate receives a different temperature value depending on its location — enabling fully dynamic boundary condition control at runtime.

🔄 Wrapper Execution Flow

  SU2 Time Step Begins
         │
         ▼
  Python loops over all wall nodes
         │
         ▼
  Computes s = iVertex / nVertex  (0 → 1)
         │
         ▼
  WallTemp = 500 + 200 × s
         │
         ▼
  SetMarkerCustomTemperature(node, WallTemp)
         │
         ▼
  SU2 solves with updated BCs
         │
         ▼
  Next Time Step ──────────────► repeat

🧱 Mesh

Flat plate mesh generated using quadrilateral elements with expected boundary layer formation along the plate.

  Freestream
  ──────────────────────────────────►
  ┌──────────────────────────────────┐
  │                                  │
  │          Fluid Domain            │
  │                                  │
  └──────────────────────────────────┘
  ════════════════════════════════════
                Flat Plate
       500 K  ──────────────►  700 K

⚙️ Running the Simulation

python launch_unsteady_CHT_FlatPlate.py -f unsteady_CHT_FlatPlate_Conf.cfg

🔬 Key Observations

🔍 Observation 💡 Description
📏 Boundary Layer Develops continuously along the flat plate
🌡️ Temperature Gradient Induces heat transfer along the surface
🌀 Turbulence Capture SST model accurately captures near-wall behavior
🐍 Python Control Wrapper enables dynamic boundary condition updates per step

🚀 Applications

This type of simulation is useful for:

🏭 Field 🎯 Application
🚀 Rocket Engineering Nozzle cooling analysis
✈️ Turbomachinery Turbine blade thermal studies
🛸 Hypersonics Vehicle surface heating prediction
🔁 Heat Transfer Conjugate heat transfer studies

🛠️ Tools Used

🔧 Tool 💡 Purpose
SU2 CFD solver
Python Boundary condition control at runtime
ParaView Flow field visualization

👨‍💻 Author

Harsha

Mechanical Engineering

GitHub

🛩️ Aerodynamics  |  💻 CFD  |  🚀 Rocket Propulsion  |  ⚡ High-Performance Simulation


⭐ Acknowledgment

Based on the SU2 Python wrapper tutorial example from the SU2 Foundation.


🌡️ From 500 K to 700 K — one plate, one gradient, infinite possibilities.

Built with ❤️ using SU2 + Python | Dynamic Boundary Condition Control via Python Wrapper

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages