Python: Reynolds-Zahl mit UliEngineering berechnen
Die Reynolds-Zahl lässt sich mit der UliEngineering-Python-Bibliothek einfach berechnen. Die Reynolds-Zahl ist eine dimensionslose Größe, die Strömungsmuster in der Fluidmechanik vorhersagt:
from UliEngineering.Physics.Viscosity import reynolds_number
from UliEngineering.EngineerIO import *
# Reynolds-Zahl für Wasserströmung in einem Rohr berechnen
density = 998.2 # kg/m³ (Wasser)
velocity = 1.0 # m/s
characteristic_length = 0.01 # 1 cm (Rohrdurchmesser)
viscosity = 0.001 # Pa·s (Wasser)
Re = reynolds_number(density, velocity, characteristic_length, viscosity)
print(f"Reynolds-Zahl: {Re:.0f}")
# Reynolds-Zahl für Luftströmung berechnen
density = 1.225 # kg/m³ (Luft)
velocity = 10.0 # m/s
characteristic_length = 0.1 # 10 cm
viscosity = 1.8e-5 # Pa·s (Luft)
Re = reynolds_number(density, velocity, characteristic_length, viscosity)
print(f"Luft-Reynolds-Zahl: {Re:.0f}")
# Reynolds-Zahl für Glycerinströmung berechnen
density = 1261.0 # kg/m³ (Glycerin)
velocity = 0.1 # m/s
characteristic_length = 0.01 # 1 cm
viscosity = 1.412 # Pa·s (Glycerin)
Re = reynolds_number(density, velocity, characteristic_length, viscosity)
print(f"Glycerin-Reynolds-Zahl: {Re:.0f}")Beispielausgabe
Reynolds-Zahl: 9982
Luft-Reynolds-Zahl: 68083
Glycerin-Reynolds-Zahl: 9Die Reynolds-Zahl ist gegeben durch:
$$ Re = \frac{\rho v L}{\eta} $$wobei $Re$ die Reynolds-Zahl, $\rho$ die Fluiddichte, $v$ die Strömungsgeschwindigkeit, $L$ die charakteristische Länge (z. B. Rohrdurchmesser) und $\eta$ die dynamische Viskosität ist.
Die Reynolds-Zahl gibt an, ob die Strömung laminar oder turbulent ist:
- Re < 2300: Laminare Strömung (gleichmäßig, geordnet)
- 2300 < Re < 4000: Übergangsströmung
- Re > 4000: Turbulente Strömung (chaotisch, durchmischt)
Das obige Diagramm zeigt, wie die Reynolds-Zahl mit der Geschwindigkeit für Wasser in einem 1 cm dicken Rohr variiert. Die grüne gestrichelte Linie bei Re = 2300 markiert den Übergang von laminarer zu Übergangsströmung, die rote gestrichelte Linie bei Re = 4000 den Beginn der turbulenten Strömung.
Die Reynolds-Zahl ist grundlegend für Strömungsmechanik und wird in Rohrströmungsanalyse, Aerodynamik, Wärmeübertragung und vielen anderen technischen Anwendungen verwendet. Sie gibt das Verhältnis von Trägheitskräften zu viskosen Kräften in einem Fluid an.
Verwandte Beiträge
- Kinematische Viskosität mit UliEngineering in Python berechnen
- Poiseuille-Volumenstrom mit UliEngineering in Python berechnen
- Stokes-Widerstand mit UliEngineering in Python berechnen
Plot-Erzeugungsskript
#!/usr/bin/env python3
import matplotlib.pyplot as plt
import numpy as np
import sys
sys.path.insert(0, '/home/uli/dev/UliEngineering')
from UliEngineering.Physics.Viscosity import reynolds_number
# Geschwindigkeitsbereich für Plotting
v = np.linspace(0.001, 10, 100) # 0,001 bis 10 m/s
# Plot erstellen
plt.figure(figsize=(10, 6))
# Feste Parameter (wasserähnliche Strömung in einem Rohr)
density = 1000.0 # kg/m³
characteristic_length = 0.01 # 1 cm (Rohrdurchmesser)
viscosity = 0.001 # Pa·s
# Reynolds-Zahl berechnen
Re = reynolds_number(density, v, characteristic_length, viscosity)
plt.plot(v, Re, color='blue', linewidth=2)
plt.xlabel('Geschwindigkeit (m/s)', fontsize=12)
plt.ylabel('Reynolds-Zahl', fontsize=12)
plt.title('Reynolds-Zahl vs Geschwindigkeit (Wasser in 1cm-Rohr)', fontsize=14, fontweight='bold')
plt.grid(True, alpha=0.3)
# Laminar/Turbulent-Übergangslinien hinzufügen
plt.axhline(y=2300, color='green', linestyle='--', linewidth=2, label='Laminare Grenze (2300)')
plt.axhline(y=4000, color='red', linestyle='--', linewidth=2, label='Turbulenzbeginn (4000)')
plt.legend(loc='upper left', fontsize=10)
plt.tight_layout()
plt.savefig('reynolds_plot.svg', format='svg', dpi=300)
print("Plot gespeichert als reynolds_plot.svg")