|
Konvektion 2d
Konvektion 2d stationär
Im Gegensatz zur Wärmekonvektion im eindimensionalen Fall kann man im 2d-Fall wesentlich besser
plausible Fälle erzeugen. Hier sind z.B. eine Eintritts- und eine Austrittsfläche für die Strömung und Ränder mit einer Temperaturverteilung möglich. Das Fluid
kommt vom Westrand her mit einer Temperatur 0 K (Dirichlet-Randbedingung im Westen) und verläßt im Osten das Rechengebiet mit der Neumann-Randbedingung Temperaturgradient = 0.
Wie schon beim eindimensionalen Fall werden Simulationen mit den zwei Diskreditierungsschemata cds und uds und zwei verschiedenen Strömungsgeschwindigkeiten durchgeführt.
Anwenden des Programms
- Zuerst erstellen Sie ein Verzeichnis, in dem Sie das Programm "fluisa_konvektion_stat_2d" laufen lassen wollen.
- In diesem Verzeichnis benötigen Sie die Quelldateien, d.h. die python3-Dateien "fluisa_konvektion_stat_2d_haupt.py", "steuer.py", "gitter.py", "rand_bed.py",
"stroemungs_feld.py","koeff_matrix.py","loeser_lgs_5diag.py" und "ausgabe.py" sowie die Steuerdatei "steuer.txt", die Gitterdateien "gitter_fvm_11_11.dat" und "gitter_fvm_41_21.dat" sowie die
Dateien mit den Randbedingungen
"rand_11_11_neumann_ost.dat" und "rand_41_21_neumann_ost.dat".
- Am einfachsten ist es, das *.tar-Archiv herunterladen und im Zielverzeichnis zu entpacken. Das können Sie z.B. mit dem Konsolenbefehl tar -xf fluisa_konvektion_2d_stat.tar oder
mit einem Entpackprogramm wie Xarchiver machen. Das Archiv enthält die Quelldateien, die Steuerdatei und die Dokumentation des Programms als *.pdf.
- Sie können aber auch jede Datei einzeln herunterladen. Dann müssen Sie jeweils den Punkt - also "." - im Dateinamen vor py ergänzen. Sie müssen die Dateinamen von
"fluisa_konvektion_stat_2d_hauptpy" in "fluisa_konvektion_stat_2d_haupt.py", "steuerpy" in "steuer.py", "gitterpy" in "gitter.py", "rand_bedpy" in "rand_bed.py", "stroemungs_feldpy" in
"stroemungs_feld.py", "koeff_matrixpy" in "koeff_matrix.py", "loeser_lgs_5diagpy" in "loeser_lgs_5diag.py" und "ausgabepy" in "ausgabe.py"
ändern. Leider war es nicht möglich, die funktionierendem Dateiendungen beizubehalten, da der Server eine Fehlermeldung beim Anklicken ausgibt.
Im *.tar-Archiv sind alle Dateiendungen richtig, die Programme sind sofort nach dem Entpacken lauffähig.
- Dann öffnen Sie ein Konsolenfenster in diesem Verzeichnis (rechter Mausklick im
Fenster des Verzeichnisses, dann "Terminal hier öffnen" klicken).
- Führen Sie zur Sicherheit einen Virenscan über dieses Verzeichnis durch. Z.B. ich benutze clamscan mit dem Befehl
clamscan -r -i. Sie können natürlich einen anderen Virenscanner benutzen.
- Dann wird das Programm gestartet:
- Das kann mit dem Konsolanbefehl python3 fluisa_konvektion_stat_2d_haupt.py geschehen.
- oder Sie starten die Python-Umgebung IDLE in der Konsole mit idle, öffnen die Datei "fluisa_konvektion_stat_2d_haupt.py" über den Menüpunkt File -> Open.
Dann öffnet sich ein weiteres Fenster mit dem Hauptprogramm. Dieses wird dann mit dem Menüpunkt run module gestartet.
- Das Programm listet dem Benutzer die Steuerparameter, die in der Steuerdatei enthalten sind, auf und gibt dem Benutzer die Möglichkeit, die Steuerdaten mit einem Klick auf den
"Eingabe ändern"-Button zu ändern.
- Ein Klick auf den "weiter"-Button läßt das Programm die Temperaturverteilung ausrechnen.
- Die Temperaturverteilung wird als Graphik angezeigt, die Temperaturen werden in die Konsole geschrieben und in einer Datei und als Graphik gespeichert.
- Ein Wegklicken der Graphik (großes Kreuz oben rechts) beendet das Programm.
Mit den vorgegebenen Eingabewerten, vorhanden in den Dateien steuer.txt, rand.dat, gitter_fvm_11.dat, errechnet das Programm folgendes Bild:
Man sieht: Bei Konvektion zusätzlich zur Wärmeleitung ändert sich der Graph, der bei der reinen Leitung
aus einer Menge schwach gekrümmten Kurven besteht. Die Geschwindigkeit u "nimmt die Temperaturwerte in Strömungsrichtung mit", damit werden die Kurven in Strömungsrichtung
verzerrt.
Wenn Sie die Geschwindigkeit u in der Steuerdatei "steuer.txt" den Wert unter "Geschwindigkeit u [m/s]" von 2.5 auf 38.35 ändern (und natürlich auch die Namen der
Ausgabedatei "temp_c_2.5.dat" in "temp_c_38.35.dat" sowie die Graphikdatei "temp_c_2.5" in "temp_c_38.35" und den Graphiktitel von "Temperaturverteilung bei u=2.5 m/s, cds-Schema" in
"Temperaturverteilung bei u=38.35 m/s, cds-Schema") und die Rechnung noch einmal starten (d.h. bei Punkt 5 noch einmal weitermachen), dann werden diese Bilder errechnet:
Temperaturverteilung in Kanal unter Konvektion u=38.35 m/s, cds-Schema | Temperaturverteilung in Kanal unter Konvektion u=38.35 m/s, cds-Schema |
Temperaturverteilung in Kanal unter Konvektion u=38.35 m/s, cds-Schema |
Man sieht, daß sich einerseits der Effekt der Strömung verstärkte - die 0K Temperatur wird weiter zum Ostrand transportiert, andererseits sich eine numerische Instabilität
einstellt:
Es gibt eine Zone mit einer Temperatur < 0.0 K, was unphysikalisch ist. Dieses liegt am Konvergenzverhalten der cds-Diskretisierung. Bei weiterer Erhöhung der Strömungsgeschwindigkeit
wird die Rechnung komplett instabil, es ergeben sich keine sinnvollen Werte mehr, in der Ausgabedatei steht dann NAN: not a number.
Wenn man in der Steuerdatei unter dem Punkt "Konvektionsschema:" das c zum u ändert (und wie oben die Ausgabedatei "temp_c_38.35.dat" in "temp_u_38.35.dat" sowie die Graphikdatei
"temp_c_38.35" in "temp_u_38.35" und den Graphiktitel von "Temperaturverteilung bei u=38.35 m/s, cds-Schema" in "Temperaturverteilung bei u=38.35 m/s, uds-Schema"), dann ergibt eine erneute
Rechnung (wieder bei Punkt 5 starten) diese Bilder:
Temperaturverteilung in Kanal unter Konvektion u=38.35 m/s, uds-Schema | Temperaturverteilung in Kanal unter Konvektion u=38.35 m/s, uds-Schema |
Temperaturverteilung in Kanal unter Konvektion u=38.35 m/s, uds-Schema |
Man sieht, die numerische Instabilität verschwand.
Zum Abschluß kann man eine Rechnung mit einem realistischeren parabelförmigen Strömungsprofil laufenlassen. Hierzu müssen die Namen der Ausgabedateien erneut geändert
werden, wie oben die Ausgabedatei "temp_u_38.35.dat" in "temp_u_50_p.dat" sowie die Graphikdatei
"temp_u_38.35.dat" in "temp_u_50_p.dat" und den Graphiktitel von "Temperaturverteilung bei u=50 m/s, uds-Schema, p". Außerdem muß das Programm auf andere Gitter- und Randdateien
zugreifen: die Gitterdatei wird in der Steuerdatei von "gitter_fvm_11_11.dat" in "gitter_fvm_11_11.dat" und die Datei mit den Randbedingungen von "rand_11_11_neumann_ost.dat" in
"rand_41_21_neumann_ost.dat" geändert.
Temperaturverteilung in Kanal unter Konvektion u=50 m/s, uds-Schema, Parabelprofil | Temperaturverteilung in Kanal unter Konvektion u=50 m/s, uds-Schema, Parabelprofil |
Temperaturverteilung in Kanal unter Konvektion u=50 m/s, uds-Schema, Parabelprofil |
Zurück zur Startseite
|
|