Klimaskepsis mit dem PC
Who dares wins!
Startseite Navigation Klima- geschichte Fehler von Skeptikern Kosten der Klimapolitik Spenden Impressum

Konvektion

Konvektion 1d stationär

Die Luft ist ein schlechter Wärmeleiter und in der Erdatmosphäre geschieht ein erheblich größerer Teil des Wärmetransportes über Konvektion. Dieses Programm stellt eine Erweiterung des Programmes für die stationäre 1d Wärmeleitung dar. Der Stab wird durch ein mit einem Fluid durchströmtes Rohr ersetzt.

Durchströmtes Rohr mit Randbedingungen

Anwenden des Programms

  1. Zuerst erstellen Sie ein Verzeichnis, in dem Sie das Programm "fluisa_konvektion_st_1d" laufen lassen wollen.
  2. In diesem Verzeichnis benötigen Sie die Quelldateien, d.h. die python3-Dateien "fluisa_konvektion_st_1d_haupt.py", "steuer.py", "gitter.py", "rand_bed.py", "koeff_matrix.py", "loeser_lgs_3diag.py" und "ausgabe.py" sowie die Steuerdatei "steuer.txt", die Gitterdatei "gitter_fvm_11.dat" und die Datei mit den Randbedingungen "rand.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_1d_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_st_1d_hauptpy" in "fluisa_konvektion_st_1d_haupt.py", "steuerpy" in "steuer.py", "gitterpy" in "gitter.py", "rand_bedpy" in "rand_bed.py", "koeff_matrixpy" in "koeff_matrix.py", "loeser_lgs_3diagpy" in "loeser_lgs_3diag.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.
  3. Dann öffnen Sie ein Konsolenfenster in diesem Verzeichnis (rechter Mausklick im Fenster des Verzeichnisses, dann "Terminal hier öffnen" klicken).
  4. 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.
  5. Dann wird das Programm gestartet:
    • Das kann mit dem Konsolanbefehl python3 fluisa_konvektion_st_1d_haupt.py geschehen.
    • oder Sie starten die Python-Umgebung IDLE in der Konsole mit idle, öffnen die Datei "fluisa_konvektion_st_1d_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.
  6. 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.
  7. Ein Klick auf den "weiter"-Button läßt das Programm die Temperaturverteilung ausrechnen.
  8. Die Temperaturverteilung wird als Graphik angezeigt, die Temperaturen werden in die Konsole geschrieben und in einer Datei und als Graphik gespeichert.
  9. Ein Wegklicken der Graphik (großes Kreuz oben rechts) beendet das Programm.

Dokumentation

Archiv Python
Hauptprogramm in python3
Steuereinheit in python3
Gittereinheit in python3
Randbedingungseinheit in python3
Koeffizientenmatrix in python3
Löser des LGS in python3
Ausgabeeinheit in python3
Steuerdatei
Gitterdatei
Randbedbedingungsdatei

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 eine Gerade ist. Die Geschwindigkeit u "nimmt die Temperaturwerte in Strömungsrichtung mit", damit wird die Gerade zu einer Kurve verzerrt. Wenn Sie die Geschwindigkeit u verzehnfachen, d.h. in der Steuerdatei "steuer.txt" den Wert unter "Geschwindigkeit u [m/s]" von 2.5 auf 25.0 ändern (und natürlich auch die Namen der Ausgabedatei "temp_c_2.5.dat" in "temp_c_25.0.dat" sowie die Graphikdatei "temp_c_2.5" in "temp_c_25.0" und den Graphiktitel von "Temperaturverteilung bei u=2.5 m/s, cds-Schema" in "Temperaturverteilung bei u=25 m/s, cds-Schema") und die Rechnung noch einmal starten (d.h. bei Punkt 5 noch einmal weitermachen), dann wird dieses Bild errechnet:


Man sieht, daß sich einerseits der Effekt der Strömung verstärkte, andererseits sich eine numerische Instabilität einstellt: Der Temperaturpunkt bei x = 0.8 liegt höher als 1.0, die Eintrittstemperatur. Dieses liegt am Konvergenzverfahren CDS. 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_25.0.dat" in "temp_u_25.0.dat" sowie die Graphikdatei "temp_c_25.0" in "temp_u_25.0" und den Graphiktitel von "Temperaturverteilung bei u=25 m/s, cds-Schema" in "Temperaturverteilung bei u=25 m/s, uds-Schema"), dann ergibt eine erneute Rechnung (wieder bei Punkt 5 starten) dieses Bild:

Man sieht, die numerische Instabilität verschwand.

Es sei hier erwähnt, daß zwar die Einströmbedingung mit einer Dirichlet-Bedingung gut erfüllbar ist, aber nicht die Ausströmbedingung. Diese wäre mit einer Neuman-Randbedigung besser realisiert. Eine Neumann-Randbedingung setzte sich bis zum Einströmort fort und erzeugte somit nur ein uninteressantes Temperaturfeld.