Upload
doanphuc
View
215
Download
1
Embed Size (px)
Citation preview
Einführung inOpenFOAM
21.06.2017
Peter Steininger
Ostbayerische Technische Hochschule Regensburg
Sommersemester 2017
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 1 / 28
1 Einleitung
2 OpenFOAM Ordnerstruktur
3 Anwendungen - Solver und weitere Werkzeuge
4 Aufbau eines Cases
5 Beispiel „Rückspringende Stufe“
6 Weiterführende Informationen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 2 / 28
Einleitung
1 Einleitung
2 OpenFOAM Ordnerstruktur
3 Anwendungen - Solver und weitere Werkzeuge
4 Aufbau eines Cases
5 Beispiel „Rückspringende Stufe“
6 Weiterführende Informationen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 3 / 28
Einleitung
Einleitung
OpenFOAM steht für Open Source Field Operation AndManipulationEine in C++ geschriebene ProgrammbibliothekUnterliegt der General Public License (GPL)
- Kostenfreie Nutzung- Veränderung des Quellcodes möglich- Erweiterung um neue Modelle
Im Gegensatz zu kommerziellen Black-Box Tools ist ein größererLernaufwand notwendig
- Preprocessing in der Shell (bzw. in einem Editor)- Umgang mit Linux-Distribution
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 4 / 28
Einleitung
Einleitung
OpenFOAM vs. Kommerzielle CFD Tools:Keine GUIKein einzelnes Executable→ Spezifische Anwendung muss ausgewählt werdenKeine ausführliche Dokumentation für alle Anwendungen→ Quellcode liefert EinblickZugang zum kompletten Source Code→ Keine Black-BoxEinfache Anpassung von Solvern→ Eignung für Forschung und Entwicklung
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 5 / 28
Einleitung
Einleitung
Wesentliche Entwicklungsrichtungen:OpenFOAM (aktuelle Version 4.1)
- Weiterentwickelt von OpenFOAM Foundation- I. d. R. die erste Wahl für die meisten Anwender
foam-extend (aktuelle Version 4.0)- Weiterentwickelt von Community/Wikki Ltd.- Zusätzliche Möglichkeiten gegenüber OpenFOAM:
* Toolkit für Fluid-Struktur-Interaktion* Erweiterung einzelner Solver um bewegte Netze (z. B. icoFoam→ icoDyMFoam)
* etc.
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 6 / 28
OpenFOAM Ordnerstruktur
1 Einleitung
2 OpenFOAM Ordnerstruktur
3 Anwendungen - Solver und weitere Werkzeuge
4 Aufbau eines Cases
5 Beispiel „Rückspringende Stufe“
6 Weiterführende Informationen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 7 / 28
OpenFOAM Ordnerstruktur
OpenFOAM Ordnerstruktur
$WM_PROJECT_DIR
applications
bin
doc
etc
platforms
src
tutorials
wmakePowered by TCPDF (www.tcpdf.org)
applications:- solvers: Quellcode fürTop-Level-Solver
- utilities: Quellcode fürzusätzliche Werkzeuge
bin:- Shell Skripte wieparaFoam, foamLog,etc.
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 8 / 28
OpenFOAM Ordnerstruktur
OpenFOAM Ordnerstruktur
$WM_PROJECT_DIR
applications
bin
doc
etc
platforms
src
tutorials
wmakePowered by TCPDF (www.tcpdf.org)
doc:- Enthält User Guide,Programmer’s Guideund DoxygenDokumentation in htmlFormat (auch überwww.openfoam.org/docs/cpp/ erreichbar)
etc:- Umgebungsvariablen,globale Instruktionen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 9 / 28
OpenFOAM Ordnerstruktur
OpenFOAM Ordnerstruktur
$WM_PROJECT_DIR
applications
bin
doc
etc
platforms
src
tutorials
wmakePowered by TCPDF (www.tcpdf.org)
platforms:- bin: EnthältBinärdateien, nachdemapplicationskompiliert wurde
- lib: EnthältBibliotheken, nachdemsrc kompiliert wurde
src:- Quellcode fürGrundbausteine (z. B.OpenFOAM,TurbulenceModels,etc.)
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 10 / 28
OpenFOAM Ordnerstruktur
OpenFOAM Ordnerstruktur
$WM_PROJECT_DIR
applications
bin
doc
etc
platforms
src
tutorials
wmakePowered by TCPDF (www.tcpdf.org)
tutorials:- Beispiel Cases für jedenSolver
wmake:- Spezielles makeKommando (fürKompilierung desCodes)
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 11 / 28
Anwendungen - Solver und weitere Werkzeuge
1 Einleitung
2 OpenFOAM Ordnerstruktur
3 Anwendungen - Solver und weitere Werkzeuge
4 Aufbau eines Cases
5 Beispiel „Rückspringende Stufe“
6 Weiterführende Informationen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 12 / 28
Anwendungen - Solver und weitere Werkzeuge
Anwendungen - Solver und weitere Werkzeuge
Die für den Benutzer wichtigen Anwendungen findet man unter:$WM_PROJECT_DIR/applications → solvers und utilities.
Welche physikalischen Bereiche werden abgedeckt (OpenFOAM 4.0)?
basiccombustioncompressiblediscreteMethodsDNSelectromagnetics
financialheatTransferincompressiblelagrangianmultiphasestressAnalysis
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 13 / 28
Anwendungen - Solver und weitere Werkzeuge
Anwendungen - Solver und weitere Werkzeuge
Ein Blick in den Bereich incompressible liefert:adjointShapeOptimizationFoamboundaryFoamicoFoamnonNewtonianIcoFoampimpleFoampisoFoamshallowWaterFoamsimpleFoam
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 14 / 28
Anwendungen - Solver und weitere Werkzeuge
Anwendungen - Solver und weitere Werkzeuge
Wofür kann ich beispielsweise icoFoam einsetzen?
In jedem Verzeichnis befindet sich ein *.C-File, mit dem Namen desSolvers (z. B. icoFoam.C).
Transient solver for incompressible, laminar flow ofNewtonian fluids.
Die gängigen Solver (und deren Einsatzgebiet) sind ebenfalls im UserGuide zu finden.
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 15 / 28
Anwendungen - Solver und weitere Werkzeuge
Anwendungen - Solver und weitere Werkzeuge
Welches mathematische Modell ist im Solver hinterlegt?
OpenFOAM verwendet eine Domain Specific Language (DSL)(oft auch „equation mimicking“ genannt), um die Leserlichkeit desCodes (des mathematischen Modells) zu verbessern.
Der Code des mathematischen Modells ist im *.C-File (z. B.icoFoam.C) hinterlegt.
Developing new solvers:• As the user has complete access to the source code, he/she has total
freedom to modify existing solvers or use them as the starting point for new solvers.
• New solvers can be easily implemented using OpenFOAM® high level programming, e.g.:
OpenFOAM® brief overview
Module 1 - Lecture 1 8
solve(
fvm::ddt(rho,U)+ fvm::div(phi,U)- fvm::laplacian(mu,U)
==- fvc::grad(p)
);
@⇢U
@t+ r · �U �r · µrU = �rp
Correspondence between the implementation and the original equation is clear.
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 16 / 28
Anwendungen - Solver und weitere Werkzeuge
Anwendungen - Solver und weitere Werkzeuge
Die für den Benutzer wichtigen Anwendungen findet man unter:$WM_PROJECT_DIR/applications → solvers und utilities.
Unter utilities findet man folgende Werkzeuge (OpenFOAM 4.0):meshmiscellaneousparallelProcessingpostProcessingpreProcessing...
Eine Übersicht ist ebenfalls im User Guide zu finden.
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 17 / 28
Aufbau eines Cases
1 Einleitung
2 OpenFOAM Ordnerstruktur
3 Anwendungen - Solver und weitere Werkzeuge
4 Aufbau eines Cases
5 Beispiel „Rückspringende Stufe“
6 Weiterführende Informationen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 18 / 28
Aufbau eines Cases
Aufbau eines CasesDirectory structure of an OpenFOAM® case
$WM_PROJECT_USER_DIR/run (or any directory of your preference)
case_directory (the name of the directory is given by the user)
system
controlDict fvSchemes fvSolution
constant
Physical properties and
advanced physicspolyMesh
Mesh information
0
BC & IC
Time directories
Solution files
case_directory: path to the case, often located in $WM_PROJECT_USER_DIR/runsystem: contains run-time control and solver numerics.constant: contains physical properties, turbulence modeling properties, advanced physics and so on.
constant/polyMesh: contains the polyhedral mesh information.0: contains boundary conditions (BC) and initial conditions (IC).time_directories: contains the solution and derived fields (these directories are created by the solver according to the preset saving frequency)Module 1 - Lecture 3 43
system- controlDict: Allgemeine Einstellungen (Start- und Endzeit,Zeitschritt, Ausgabe von Ergebnisdateien, etc.)
- fvSchemes: Diskretisierung einzelner Terme,Interpolationsverfahren
- fvSolution: Lösung linearer Gleichungssysteme,Druck-Geschwindigkeits-Kopplung (z. B. SIMPLE),Unterrelaxation
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 19 / 28
Aufbau eines Cases
Aufbau eines CasesDirectory structure of an OpenFOAM® case
$WM_PROJECT_USER_DIR/run (or any directory of your preference)
case_directory (the name of the directory is given by the user)
system
controlDict fvSchemes fvSolution
constant
Physical properties and
advanced physicspolyMesh
Mesh information
0
BC & IC
Time directories
Solution files
case_directory: path to the case, often located in $WM_PROJECT_USER_DIR/runsystem: contains run-time control and solver numerics.constant: contains physical properties, turbulence modeling properties, advanced physics and so on.
constant/polyMesh: contains the polyhedral mesh information.0: contains boundary conditions (BC) and initial conditions (IC).time_directories: contains the solution and derived fields (these directories are created by the solver according to the preset saving frequency)Module 1 - Lecture 3 43
constant- <...>Properties: Physikalische Eigenschaften (Turbulenz,Viskosität, etc.)
- polyMesh: Informationen, die das Mesh betreffen (Points, Faces,etc.)
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 20 / 28
Aufbau eines Cases
Aufbau eines CasesDirectory structure of an OpenFOAM® case
$WM_PROJECT_USER_DIR/run (or any directory of your preference)
case_directory (the name of the directory is given by the user)
system
controlDict fvSchemes fvSolution
constant
Physical properties and
advanced physicspolyMesh
Mesh information
0
BC & IC
Time directories
Solution files
case_directory: path to the case, often located in $WM_PROJECT_USER_DIR/runsystem: contains run-time control and solver numerics.constant: contains physical properties, turbulence modeling properties, advanced physics and so on.
constant/polyMesh: contains the polyhedral mesh information.0: contains boundary conditions (BC) and initial conditions (IC).time_directories: contains the solution and derived fields (these directories are created by the solver according to the preset saving frequency)Module 1 - Lecture 3 43
0- Anfangs- und Randbedingungen der verwendeten Felder (z. B. pund U)
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 21 / 28
Beispiel „Rückspringende Stufe“
1 Einleitung
2 OpenFOAM Ordnerstruktur
3 Anwendungen - Solver und weitere Werkzeuge
4 Aufbau eines Cases
5 Beispiel „Rückspringende Stufe“
6 Weiterführende Informationen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 22 / 28
Beispiel „Rückspringende Stufe“
Beispiel „Rückspringende Stufe“
156 6 Turbulente Strömungen
6.7 Praktikum: Strömung über eine rückspringende Stufe
Die Güte von Turbulenzmodellen in RANS-Simulationen wird jetzt am Beispiel der Strö-mung von Luft über eine zurückspringende Stufe, kurz Stufenströmung, untersucht.
Problembeschreibung In Abb. 6.9 ist die betrachtete Strömungskonfiguration mitihren wesentlichen Merkmalen skizziert. Das Strömungsgebiet wird durch die unter-schiedlichen Ränder Einlass, Auslass sowie den festen Wänden des durchströmtenKanals begrenzt. Die Stufenhöhe als charakteristischer geometrischer Parameter be-trägt h D 10mm. Die Geometrie entspricht der Hälfte der Strömungskonfiguration einesbekannten Experiments [32, 33], eine entsprechende Symmetrieebene soll berücksichtigtwerden.
In den Referenzuntersuchungen [32, 33, 38] besitzt die turbulente Strömung stromaufder Stufe die mittlere Geschwindigkeit uein D uein Oex D 7m=s bei einer Turbulenzinten-sität t iein D 1%. An der Wand bildet sich eine turbulente Grenzschicht aus, die an derStufe eine Dicke ı D h besitzt. Dort löst sie ab und wird zur freien Scherschicht. An derScherschicht entstehen Wirbel vom Kelvin-Helmholtz-Typ, die die Scherschicht nach undnach aufweiten. Außerdem wird die Scherschicht in Richtung der Kanalwand abgelenkt.Sie legt sich schließlich stromab der Stufe im Punkt A wieder an die Wand an.
Der Abstand �xA von A zur Stufe, die sogenannte Wiederanlege-Länge, ist dabeider Parameter, der in der CFD-Simulation vorhergesagt werden soll. Für die mittlereWiederanlege-Länge kann aufgrund einer überschlägigen Schätzung ein Wert von�xA D5h angenommen werden [40]. Die genaueren experimentellen und numerischen Untersu-chungen [32, 33, 38] ergeben für die oben beschriebene Konfiguration den Wert �xA D6h.
Das RANS-Modell besteht aus (6.14) und (6.15). Die Kopplung der beiden Gleichun-gen soll wieder mit dem SIMPLE-Algorithmus erfolgen. Die unbekannten Reynolds-Spannungen �RS
ij in (6.15) werden mit Hilfe des Spalart-Allmaras-Modells (6.42) appro-ximiert. Mit dem Turbulenzmodell wird die turbulente Grenz- und Scherschichtströmung
Abb. 6.9 Strömung über einezurückspringende Stufe
A
tiein
freie ScherschichtGrenzschicht
Symmetrieebene
Wand
Einlass
Auslass
paus
uein
Strömung ist:zweidimensionalinkompressibelstationärturbulent
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 23 / 28
Beispiel „Rückspringende Stufe“
Beispiel „Rückspringende Stufe“
156 6 Turbulente Strömungen
6.7 Praktikum: Strömung über eine rückspringende Stufe
Die Güte von Turbulenzmodellen in RANS-Simulationen wird jetzt am Beispiel der Strö-mung von Luft über eine zurückspringende Stufe, kurz Stufenströmung, untersucht.
Problembeschreibung In Abb. 6.9 ist die betrachtete Strömungskonfiguration mitihren wesentlichen Merkmalen skizziert. Das Strömungsgebiet wird durch die unter-schiedlichen Ränder Einlass, Auslass sowie den festen Wänden des durchströmtenKanals begrenzt. Die Stufenhöhe als charakteristischer geometrischer Parameter be-trägt h D 10mm. Die Geometrie entspricht der Hälfte der Strömungskonfiguration einesbekannten Experiments [32, 33], eine entsprechende Symmetrieebene soll berücksichtigtwerden.
In den Referenzuntersuchungen [32, 33, 38] besitzt die turbulente Strömung stromaufder Stufe die mittlere Geschwindigkeit uein D uein Oex D 7m=s bei einer Turbulenzinten-sität t iein D 1%. An der Wand bildet sich eine turbulente Grenzschicht aus, die an derStufe eine Dicke ı D h besitzt. Dort löst sie ab und wird zur freien Scherschicht. An derScherschicht entstehen Wirbel vom Kelvin-Helmholtz-Typ, die die Scherschicht nach undnach aufweiten. Außerdem wird die Scherschicht in Richtung der Kanalwand abgelenkt.Sie legt sich schließlich stromab der Stufe im Punkt A wieder an die Wand an.
Der Abstand �xA von A zur Stufe, die sogenannte Wiederanlege-Länge, ist dabeider Parameter, der in der CFD-Simulation vorhergesagt werden soll. Für die mittlereWiederanlege-Länge kann aufgrund einer überschlägigen Schätzung ein Wert von�xA D5h angenommen werden [40]. Die genaueren experimentellen und numerischen Untersu-chungen [32, 33, 38] ergeben für die oben beschriebene Konfiguration den Wert �xA D6h.
Das RANS-Modell besteht aus (6.14) und (6.15). Die Kopplung der beiden Gleichun-gen soll wieder mit dem SIMPLE-Algorithmus erfolgen. Die unbekannten Reynolds-Spannungen �RS
ij in (6.15) werden mit Hilfe des Spalart-Allmaras-Modells (6.42) appro-ximiert. Mit dem Turbulenzmodell wird die turbulente Grenz- und Scherschichtströmung
Abb. 6.9 Strömung über einezurückspringende Stufe
A
tiein
freie ScherschichtGrenzschicht
Symmetrieebene
Wand
Einlass
Auslass
paus
uein
Anfangsbedingungen- p = 0Pa- u = (7,7 0 0)ms−1
Randbedingungen:- Einlass: uein = (7,7 0 0)ms−1, tiein = 1%, ν = 0,0047m2 s−1
- Auslass: paus = 0Pa- Wände: No-Slip (reibungsbehaftet)- Oben: Symmetrie
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 24 / 28
Beispiel „Rückspringende Stufe“
Beispiel „Rückspringende Stufe“
0 0.02 0.04 0.06 0.08 0.1−3
−2
−1
0
1
2
x in m
Uxin
ms−
1
OpenFOAMFLUENT
Experiment: xh= 6
FLUENT: xh≈ 0,052m
0,01m = 5,2 → 12% Abweichung
OpenFOAM: xh≈ 0,052m
0,01m = 5,2 → 12% Abweichung
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 25 / 28
Weiterführende Informationen
1 Einleitung
2 OpenFOAM Ordnerstruktur
3 Anwendungen - Solver und weitere Werkzeuge
4 Aufbau eines Cases
5 Beispiel „Rückspringende Stufe“
6 Weiterführende Informationen
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 26 / 28
Weiterführende Informationen
Weiterführende Informationen
Tutorials, Download der Software, etc.www.openfoam.org/Inoffizielles OpenFOAM-Wikiwww.openfoamwiki.net/Forum rund um OpenFOAMwww.cfd-online.com/
Peter Steininger (OTH Regensburg) OpenFOAM Sommersemester 2017 27 / 28