Von schnellen Simulationen, belastbaren Ergebnissen, Äpfeln und Birnen

Im offiziellen Issue-Tracker zu FDS und SMV wurde in den letzten Wochen eine interessante Diskussion um eine „Fehler“-Meldung zu FDS geführt.

Ein Anwender meldet, dass seine Simulation mit FDS 6 ca. 5mal mehr Zeit benötigt, als mit FDS 5.

Einer der Entwickler, Dr. Jason Floyd von Hughes Associates, weist in seiner Antwort darauf hin, dass die Eingabedateien zu beiden Simulationen, die hier hinsichtlich ihrer Laufzeit verglichen werden, nicht identisch sind, sondern in der FDS 5-Simulation die Strömung eines Fluids ohne Verbrennungsreaktion simuliert wird, während in der Simulation für FDS 6 explizit Reaktionseigenschaften definiert wurden, was zusätzliche Rechenzeit kostet.

Darüber hinaus weist Dr. Floyd darauf hin, dass (selbst wenn die Eingaben identisch wären) der Vergleich zwischen FDS 5 und 6 hinkt, da beide Programmversionen sich in vielerlei Hinsicht unterscheiden:

  • Als Hintergrundfluid ist in FDS 5 Stickstoff voreingestellt, in FDS 6 ein Gemisch aus Stickstoff, Sauerstoff, Wasserdampf und Kohlenstoffdioxid. Zwar werden die einzelnen Stoffe als Gemisch betrachtet, also die Ausbreitung mit nur einer Transportgleichung simuliert, der Strahlungslöser hat jedoch bei der Berechnung der stoffabhängigen Absorption mehr zu tun.
  • FDS 6 stellt schärfere Bedingungen an das Courant-Friedrichs-Lewy-Kriterium zur Bestimmung der Zeitschrittweite, was zu kleineren Zeitschritten und damit zu einem höheren Rechenaufwand führt.
  • Bei der Verwendung von mehreren Berechnungsgebieten (nur so konnte der Anwender vor FDS 6.1 die 32 Kerne seines System mit FDS 6 überhaupt in einer Simulation nutzen) wendet FDS 6 nicht mehr ausschließlich den direkten Drucklöser an, sondern setzt auf eine iterative Anwendung des Drucklösers, wobei die Anzahl der Iterationen von dem Erreichen eines voreingestellten Abbruchfehlers abhängt. Zusammen mit einer ganzen Menge anderer Verbesserungen probieren die Entwickler so den Massen- und Energieaustausch an den Ãœbergängen zwischen den Berechnungsgebieten zu verbessern. Voreingestellt sind maximal 10 Iterationen pro Zeitschritt, in den V&V-Beispielen werden allerdings teilweise 100 bis 1.000 Iterationen angesetzt – verantwortlich für die Wahl der möglichen Iterationen ist der Nutzer.
  • Anders als FDS 5 nutzt FDS 6 nicht mehr den Ansatz mit einer Smagorinsky-Konstante, sondern das Deardorff-Modell, in dem die kinetische Energie im Bereich kleiner der Filtergröße anders berechnet wird. Das Modell kann signifikant bessere Ergebnisse bei der Simulation turbulenter Strömungen liefern, aber (der Leser wird es schon ahnen): es kostet mehr Rechenzeit.

Es gibt also genug gute Gründe, warum FDS 6 langsamer als FDS 5 sein darf. Die Entwickler haben hier aus meiner Sicht genau die richtige Entscheidung getroffen, und Qualität nicht der heiligen Kuh „Geschwindigkeit“ geopfert, sondern mit FDS 6 viele der kleinen und großen Probleme von FDS 5 behoben und erst dann entschieden, ob der Qualitätsgewinn den entstandenen Mehraufwand rechtfertigt. Darüber hinaus gibt es aber noch eine andere Sichtweise auf die Dinge: Ist die Fragestellung „Warum ist meine Simulation mit FDS 6 bis zu 5 mal langsamer als meine Simulation mit FDS 5?“ überhaupt zielführend oder anders gefragt:

„Ist FDS 6 überhaupt langsamer als FDS 5?“.

Ein schönes Beispiel für einen irreführenden Vergleich hat Ende letzten Jahres Elon Musk in einem Blog-Beitrag zu Bränden des Model S seiner Firma Tesla Motors veröffentlicht.
Aufgrund der intensiven Berichterstattung über einzelne PKW-Brände der Marke Tesla Motors konnte der Eindruck erweckt worden sein, seine Fahrzeuge seien hinsichtlich des Brandeintrittsrisikos unsicherer als konventionelle Fahrzeuge mit Verbrennungsmotor.
Musk weist darauf hin, dass statstisch alle 20 Millionen gefahrene km ein konventioneller PKW brennt, während Brände bei der Marke Tesla Motors statistisch nur alle 100 Millionen gefahrene km vorkommen.
Ähnliche Vergleiche werden häufig bei Fragestellung nach dem sichereren Trasportmedium (Flieger oder PKW) oder beispielsweise dem Risiko eines Hai-Angriffs gezogen.

Will man also die Simulationszeiten 2er verschiedener Programme oder die numerischen Kosten der Umsetzung 2er verschiedener Modelle vergleichen, kann es irreführend sein, lediglich die Laufzeit der Simulation auszuwerten. Entscheidend ist die Laufzeit bei vergleichbarer Qualität, und da hinkt der direkte Vergleich des fragenden Anwenders gewaltig.

Der Strömungslöser von FDS 5 mit konstanter Smagorinsky-Zahl neigt dazu, die Länge der Kernzone (also des Bereiches einer konstanten Geschwindigkeit) deutlich zu überschätzen. Im Ergebnis prognostizierte FDS in größerer Entfernung vom Düsenauslass zu hohe Geschwindigkeiten.

Jet_Vel_FDS5

Der Strömungslöser von FDS 6 mit Ansatz nach Deardorff liefert schon bei deutlich gröberer Diskretisierung deutlich bessere Ergebnisse (gezeigt wird beide male das Geschwindigkeitsprofil entlang der Achse).

Jet_Vel_FDS6

Mein Kollege Gregor Jäger konnte dazu vor einigen Jahren einen Testfall in das offizielle Handbuch einbringen, der beide FDS-Versionen deutlich vergleicht:

 

Jet_vel_center

Wie bei jedem guten Diagramm lohnt auch hier ein zweiter Blick, um sich die Aussage des Diagramms klar zu machen.

Auf der X-Achse ist das Verhältnis des Abstandes x vom Düsenauslass zum Düsendurchmesser aufgetragen, auf der Y-Achse die Geschwindigkeit am Düsenauslass im Verhältnis zur lokalen Geschwindigkeit in einem Abstand x vom Düsenauslass. Ein horizontaler Kurvenverlauf in der Nähe des Düsenauslasses zeigt also eine konstante Geschwindigkeit an. Der Übergangspunkt vom horizontalen Verlauf der Kurve in einen fallenden Verlauf markiert also das Ende der Kernzone.

Die beiden schwarzen Kurven stellen den Kurvenverlauf zweier analytischer Lösungen mit unterschiedlichen Mischzahlen m dar. Ein qualitativ gutes Ergebnis sollte zwischen beiden Kurven liegen.

Betrachtet man jetzt die Lösung mit konstanter Smagorinsky-Zahl (csmag wie in FDS 5 angewendet), fällt auf, dass ein qualitativ akzeptables Ergebnis mindestens eine Auflösung des Auslasses von 16 x 16 = 256 Zellen benötigt. Im Vergleich dazu liefert beispielsweise das dynamische Smagorinsky-Modell schon mit 8 x 8 = 64 Zellen  ein sehr gutes Ergebnis.

Um qualitativ vergleichbar gute Ergebnisse in FDS 5 erreichen zu können, benötigt FDS 5 also grob 8 mal so viele Zellen wie FDS 6 und ca. eine halb so große Zeitschrittweite dt, woraus sich in erster Näherung eine 16fach längere Simulationsdauer ergibt. Im Vergleich dazu, kann man FDS 6 eigentlich einfach nur schnell nennen.

WordPress Cookie Hinweis von Real Cookie Banner