OpenFOAM CFD-Tutorial
Fluiddomain vernetzen, OpenFOAM-Patches zuweisen und CFD-Ergebnisse pruefen
Uebersicht
Dieses Tutorial fuehrt durch ein reales OpenFOAM-CFD-Beispiel in confBuild. Die Screenshots wurden am 2026-06-21 im Browser aufgenommen, mit dem Beispielprojekt OpenFOAM Step Duct Tutorial Example auf Basis des OpenFOAM-pitzDaily-Kanals mit Ruecksprung.
Zeit
Etwa 20 Minuten fuer ein vorbereitetes Modell mit klaren Inlet-, Outlet- und Wandflaechen
Beispielnetz
blockMesh und checkMesh erzeugten 25.012 Punkte und 12.225 Zellen
Beispielergebnis
simpleFoam erreichte Zeit 20 mit 0,317% Inlet/Outlet-Flow-Balance-Fehler
Beispiel-Artefakt
- Case: OpenFOAM-
pitzDaily-Step-Duct, stationaere inkompressible Stroemung. - Ausgefuehrte Befehle:
blockMesh,checkMesh,simpleFoamundfoamToVTK. - Velocity-Zusammenfassung: Mittelwert 5,496 m/s, Maximum 11,171 m/s. Pressure-Bereich: -9,937 Pa bis 19,424 Pa.
- Ergebnis in confBuild als abgeschlossener CFD-Task mit VTU-Feldvisualisierung geladen.
Schritt 1: Reales Step-Duct-Beispiel oeffnen
Fuer CFD beschreibt das Netz das Fluidvolumen, nicht das feste Bauteil. In diesem Beispiel ist der Editor mit einer Step-Duct-Fluiddomain, OpenFOAM-Solvereinstellungen, 10 m/s Inlet-Velocity, 0 Pa Outlet-Pressure und benannten Boundary-Rollen fuer Inlet, Outlet und No-Slip-Waende geladen.
Das ist der echte Browser-Screenshot aus dem Beispielprojekt, kein Mockup. Er zeigt das Quell-Setup vor Mesh- und Solverpruefung.
Vor dem Meshing
- Verwenden Sie ein geschlossenes Volumen fuer den Bereich, in dem das Fluid stroemen soll.
- Benennen oder identifizieren Sie Inlet-, Outlet- und Wandflaechen eindeutig.
- Bei duennen 2D-aehnlichen CFD-Faellen muessen Vorder- und Rueckseite als
empty-Patches verfuegbar bleiben. - Starten Sie einfach. Der erste Lauf sollte mit einem groben oder mittleren Netz pruefen, ob das Setup stimmt.
Schritt 2: Mesh- und Face-Group-Bereitschaft pruefen
Oeffnen Sie das Mesh/Loads-Setup und pruefen Sie, ob das erzeugte Netz verwendbare Flaechengruppen liefert. CFD-Randbedingungen brauchen Mesh-Metadaten, nicht nur sichtbare Geometrie. Wenn in diesem Panel keine Gruppen erscheinen, muss mit Face-Group-Ausgabe neu vernetzt werden oder das OpenFOAM-Netz muss explizite Patch-Rollen mitbringen.
Der Screenshot ist ein echter Mesh-&-Loads-Zustand. Er dokumentiert den Face-Group-Gate vor der Boundary-Zuweisung, statt vorzugeben, dass jedes Netz bereits fertig vorbereitet ist.
Meshing-Checks
- Das ausgewaehlte Objekt sollte das Stroemungsvolumen sein, nicht ein Hindernis-Solid.
- Flaechengruppen sollten die Netzgenerierung ueberstehen, damit CFD-Randbedingungen sie spaeter referenzieren koennen.
- Im Tutorialbeispiel definiert der OpenFOAM-Case selbst die Patches:
inlet,outlet, Wand-Patches und gepaarteempty-Patches vorne/hinten. - Lokale Verfeinerungen und Boundary Layers sollten nur dort gesetzt werden, wo sie das gewuenschte Ergebnis verbessern.
Schritt 3: OpenFOAM-Regionen und Randbedingungen zuweisen
Wechseln Sie in das Simulations-Setup und nutzen Sie den CFD-Flow. Die Volumenregion wird zur OpenFOAM-Fluidregion, waehrend Flaechengruppen zu OpenFOAM-Patches wie inlet, outlet, wall, symmetry, far_field oder empty werden.
Minimales Boundary-Setup
- Mindestens ein Inlet- oder Far-Field-Patch sollte eine von Null verschiedene Stroemungsgeschwindigkeit definieren.
- Ein Outlet- oder Druckreferenz-Patch sollte das Druckfeld sauber schliessen.
- Wall-Patches sollten alle festen Oberflaechen abdecken, die das Fluid beruehrt.
- Bei 2D-Setups sollten die duennen Vorder- und Rueckseiten
emptyverwenden. - Im aufgenommenen Beispiel sind
upperWallundlowerWallNo-Slip-Waende,frontAndBacknutztempty.
Schritt 4: OpenFOAM starten
Wenn das Setup vollstaendig ist, erzeugt confBuild aus Netz- und Boundary-Metadaten einen OpenFOAM-Case. Im aufgenommenen Beispiel hat der OpenFOAM-Runner blockMesh, checkMesh, simpleFoam und foamToVTK abgeschlossen und anschliessend das Velocity-Feld aus internal.vtu exportiert.
Dieses Bild ist die echte OpenFOAM-Postprocessing-Vorschau aus dem Tutoriallauf. checkMesh bleibt der Gatekeeper, bevor Solveroutput verwendet wird.
Was im Runner passiert
- UNV-Netze werden mit
ideasUnvToFoamkonvertiert; MSH-Netze mitgmshToFoam. checkMeshprueft Topologie und Qualitaet, bevor der Solver startet.- Stationaere inkompressible Faelle nutzen
simpleFoam; transiente inkompressible Faelle nutzenpimpleFoam. - Abgeschlossene Cases werden mit
foamToVTKfuer die Visualisierung exportiert. - Das Beispielnetz bestand mit max. Non-Orthogonality 5,95 Grad und max. Skew 0,261.
Schritt 5: CFD-Ergebnis pruefen
Nach dem Solverlauf pruefen Sie sowohl die Feldvisualisierung als auch die numerische Zusammenfassung. Ein sauberes Ergebnis zeigt das gewuenschte Feld, einen bestandenen Mesh-Quality-Status, plausible Residuals und einen niedrigen Flow-Balance-Fehler.
Der Ergebnis-Screenshot ist aus dem echten abgeschlossenen CFD-Task geladen. Er zeigt 5,07e-4 m3/s Total Flow und 0,317% Balance Error.
Ergebnis-Checkliste
- Pruefen Sie das angezeigte Feld, meistens Velocity Magnitude oder Pressure.
- Lesen Sie zuerst OpenFOAM-Mesh-Status und Mesh-Quality-Warnungen.
- Vergleichen Sie Inlet- und Outlet-Flow, um fehlende oder doppelte Patches zu erkennen.
- Pruefen Sie Residuals und Solver Steps, bevor Sie lokale Detailwerte verwenden.
- In diesem Lauf hat
simpleFoam20 Solver-Steps bei Zeit 20 abgeschlossen.
Unterstuetzter OpenFOAM-Umfang
Der aktuelle Workflow konzentriert sich auf praktische inkompressible CFD-Faelle, die aus Editor-Geometrie und Mesh-Metadaten vorbereitet werden koennen.
Bereit
3D inkompressible Stroemung
Stationaere oder transiente Faelle mit Fluidvolumen-Netzen
Bereit
Duenne 2D-Stroemung
Gepaarte empty-Patches an den duennen Flaechen verwenden
Bereit
Laminar, k-epsilon, k-omega SST
Turbulenzmodell im CFD-Setup auswaehlen
Bereit
Inlet-, Outlet-, Wall-, Symmetry- und Far-Field-Patches
Boundary-Rollen werden aus Flaechengruppen gemappt
Noch nicht
Kompressible, poroese, rotierende, Dynamic-Mesh-, Heat-Transfer- oder Species-Cases
Diese Faelle vorerst ausserhalb dieses Editor-Workflows halten
Troubleshooting
Keine Flaechengruppen sichtbar
Netz neu erzeugen und pruefen, ob wirklich die Fluiddomain ausgewaehlt ist. CFD-Boundaries brauchen Mesh-Metadaten, nicht nur sichtbare Flaechen.
checkMesh schlaegt fehl
Kleine Geometriedetails vereinfachen, Netzfeinheit anpassen und Sliver-Flaechen reduzieren, bevor Solverparameter geaendert werden.
Solver-Setup ist blockiert
Fluidregion, nicht-null Inlet- oder Far-Field-Velocity, einen Pressure-Outlet oder Referenzdruck und doppelte Patch-Zuweisungen pruefen.
2D-Case laeuft nicht
Die duennen Vorder- und Rueckseiten muessen als empty zugewiesen sein und der Case muss als 2D-CFD-Setup konfiguriert werden.
Naechste Schritte
Nach dem ersten gueltigen Lauf verfeinern Sie gezielt nur die Teile des Workflows, die das relevante Ergebnis beeinflussen.
- Nutzen Sie FEM-Netzgenerierung, um Netzfeinheit, Elementgroesse und Flaechengruppen zu verstehen.
- Nutzen Sie FEM-Simulation, um den breiteren Simulationsbereich kennenzulernen.
- Fuehren Sie mindestens einen Netzverfeinerungs-Vergleich durch, bevor CFD-Werte fuer technische Entscheidungen verwendet werden.