Replies: 3 comments
-
Ich fühle mich vielleicht nur bedingt im Stande dazu etwas zu sagen aber für mich klingt die Option |
Beta Was this translation helpful? Give feedback.
-
Konvergenzfehler waren durch einen Bug im Solver ausgelöst worden - damit ist die Diskussion wahrscheinlich hinfällig. Wieder einmal ein Beweis dafür, dass man erstmal gründlich an super einfachen Modellen testen muss, bevor man mit der Optimierung anfängt :) |
Beta Was this translation helpful? Give feedback.
-
Hat sich nach Behebung des Programmierfehlers erledigt - voll gekoppelte Berechnung funktioniert. |
Beta Was this translation helpful? Give feedback.
-
Temperaturabhängigkeit der Viskosität und Einfluss auf das Gesamtsystem
Anne:
Modellvereinfachung
Gerade im Ingenieurs-Anwendungskontext ist der Einfluss der Viskosität während der dynamischen Simulation zu klären. Für die Auslegung der Rohrquerschnitte und der Pumpe ist es sicherlich praktikabel, konservativ mit der größten Viskosität und damit größtem Druckverlust zu planen.
Würde man während der dynamischen Simulation die Temperatureinflüsse begünstigend berücksichtigen, so ergeben sich letztlich geringere Druckverluste und geringere Pumpenleistungen + Energieverbräuche. Dieses könnte sicher dazu beitragen, bei PV-generiertem Pumpenstrom den Eigendeckungsgrad zu erhöhen. Die Frage hierbei ist:
Diese beiden Fragen sind aus meiner Sicht primär akademischer Natur, aber möglicherweise durchaus relevant für Hauke's Diss.
Wenn sich herausstellt, dass die Berücksichtigung der Temperaturabhängigkeit der Viskosität nur marginalen (und nicht-konservativen) Einfluss hat, kann man auch mit konstanten Viskositäten rechnen.
Numerikoptimierung
Grundsätzlich ist es hilfreich, zunächst eine komplett besetzte Jacobi-Matrix zu haben, um diese dann mit alternativen Implementierungen zu vergleich. Verwendet man eine andere Systemjacobi-Matrix mit Fehlstellen, so kann man die Matrizen vergleichen und prüfen, ob nicht vielleicht kritische Therme verloren gegangen sind.
Thermische-Interaktion in der Integrator-Jacobi-Matrix auf benachbarte Rohre beschränken
Wenn man bei der Besetzungsstruktur der System-Jacobi-Matrix von einem normalen bidirektionalen Netzwerk ausgeht, und Fernwirkungen vernachlässigt, so kann man wieder mit einer schwach-besetzten Matrixstruktur arbeiten und KLU oder GMRES mit entsprechender ILU Vorkonditionierung verwenden. Dieses geht bei stärkeren Änderungungen der Viskositäten zu Lasten der Konvergenz, da die systemweite Rückwirkung der Viskositäten auf Energiebilanzen ohne Newton-Information ausiteriert werden muss. Dieses kann dann zu gehäuften Konvergenzfehlern und letztlich kleineren Integratorschritten führen.
Fragen sind hier:
Die Implementierung ist knifflig - wenn man bei der Bestimmung der Besetzungsstruktur Fehler macht, kann man die aus den Fehlern resultierenden Konvergenzfehler nicht mehr sauber von den erhöhten Konvergenzfehlern wegen Entfernung der Fernwirkung trennen und ggfs. falsche Schlussfolgerungen ziehen.
Anpassung der Viskositäten aus der System-Newton-Iteration auslagern
Hierbei werden die temperaturabhängigen Viskositäten nur zwischen erfolgreich absolvierten Integrationsschritten angepasst. D.h. nach jedem Integrationsschritt bzw. nach mehreren Schritten (min Time delay oder so) werden die Viskositäten angepasst. Unter der Voraussetzung, dass der Einfluss auf die Strömungsgeschwindigkeiten/Druckverluste gering ist, wird sich eine diskrete Anpassung nur bedingt in Konvergenz-/Fehlerschätzerfehlern auswirken.
Fragen:
Implementierungsziele
NANDRAD 2 hat primär eine Ingenieursausrichtung, d.h. die gewählte Implementierung sollte hinreichend schnell und genau, aber 100% robust sein. Letzteres wird auch durch einen schlanken Quelltext erreicht, den man gut überblicken und prüfen kann. Dies spräche einer gleichzeitigen Umsetzung mehrerer Ansätze entgegen. Wir sollten uns also für einen entscheiden.
Option A): erstmal alle Varianten implementieren, testen an Beispielnetzwerken und in einer sauberen wissenschaftlichen Publikation diskutieren. Danach nur die beste Variante im Quelltext behalten.
Option B): gleich versuchen, eine optimale Implementierungsvariante zu finden, diese mit entsprechenden Referenzfällen auf Robustheit testen und sich um andere Themen kümmern.
Beta Was this translation helpful? Give feedback.
All reactions