SimQuality ist der Name eines Forschungsprojekts, jedoch eigentlich viel mehr als das. Er steht für eine Überzeugung, dass Simulationsprogramme wertvolle Planungswerkzeuge sind. Und wie bei jedem Werkzeug entscheidet dessen Qualität auch über das Produkt, in unserem Fall gute, funktionale Gebäude mit geringem Energiebedarf und höchstmöglicher Nutzung regenerativer Energiequellen.

Qualitätssicherung von Simulationssoftware

Aus eigener langjähriger Erfahrung in der Entwicklung von Simulationsprogrammen wissen wir, dass Simulationsentwicklung keinesfalls eine einfach Aufgabe ist. Komplexe physikalische Modelle und flexible Parameterwahl seitens der Anwender bedingen gleichermaßen komplexen Programmcode. Und dieser ist nur in sehr seltenen Fällen gleich von Anfang an fehlerfrei.

Daher sollte eine möglichst umfangreiche Prüfung der Berechnungsfunktionalität eines jeden Simulationsprogramms erfolgen. Eine geprüfte und zertifizierte Software bietet viele Vorteile, unter anderem:

  • erhöht Vertrauen in das Simulationswerkzeug und die Simulationsergebnisse
  • schafft Vergleichbarkeit zwischen verschiedenen Softwareprodukten, bzw. Simulationsprogrammen mit ähnlicher Aufgabenstellung
  • erlaubt norm-äquivalente Planung, Dimensionierung und Nachweisführung

Gerade letzterer Punkt ist im sehr normengeprägten Planungsprozess in Deutschland sehr wichtig, denn die Entwicklung und Aktualisierung der Normen ist ein zäher Prozess. Es dauert daher mitunter sehr lange (> 10 Jahre), bis sich der Stand der Forschung/Technik in den Normen wiederfindet. Und so lange sollte man mit Hinblick auf die drängenden Herausforderungen des Klimaschutzes und des notwendigen Umdenkens im Bauwesen sicher nicht warten.

Vision und Zielsetzung von SimQuality

Wir sind davon überzeugt, dass Simulationssoftware uns erlaubt, bessere und energiesparendere Gebäude zu planen, zu bauen und zu betreiben. Und diese sind in der Regel durch geringere Investkosten und vor allem Betriebskosten sogar wirtschaftlicher. Wenn statt einer statischen Lastanalyse eine dynamische Simulation die Prozesse genauer abbilden hilft, und dadurch z.B. etliche Bohrpfähle einer Geothermieinstallation eingespart werden können, dann werden dadurch Investkosten signifikant reduziert. Ebenso führt eine simulationsgestützte, realistische Dimensionierung von Pumpen, Rohren, Speichersystemen etc. in der Regel zu kleineren Komponenten und damit geringeren Invest- und vor allem Betriebskosten (und natürlich auch geringeren Energieverbräuchen und CO2-Emissionen).

SimQuality soll die Verwendung von qualitativ hochwertiger und modellseitig standardisierte Simulationssoftware im Planungsprozess erleichtern und in der Breite etablieren. Dies soll über folgende Mechanismen erreicht werden:

  • Auf der Webseite werden Information über verfügbare Simulationstools und deren Fähigkeiten gesammelt und übersichtlich dargestellt.
  • Simulationstools durchlaufen Testreihen und werden entsprechend Ihrer Fähigkeiten bewertet (und ähnlich Stiftung Warentest benotet).
  • Simulationsmodelle werden detailliert dokumentiert und die Parametrisierung beschrieben.
  • Die Testfälle der SimQuality-Prüfserie dokumentieren das Aufsetzen und Parametrisieren von Simulationsmodellen (und die Programmeingabe) und unterstützen so auch den Lernprozess für die Verwendung der Programme.

Simulationsinteressierten sollen auf dieser Webseite Antworten auf folgende Fragen erhalten:

  • Welche Tools sind geeignet, eine bestimmte Aufgabenstellung/Problemstellung zu bearbeiten?
  • Welche Fähigkeiten und Qualitäten hat ein bestimmtes Simulationsprogramm?

Damit diese Fragen hinreichend objektiv beantwortet werden können, haben wir eine Reihe von Bewertungsregeln für die Verwendung der Plattform aufgestellt.

Regeln

Im SimQuality-Forschungsprojekt haben wir eine Reihe von Regeln für die Prüfung von Simulationsprogrammen entwickelt:

  1. Prüfergebnisse werden jeweils für eine Kombination aus Programm/Bibliothek, Version, und Prüfer/Ergebnisbereitsteller abgelegt.
  2. Es werden nur Ergebnisse für veröffentlichte Software erlaubt, d.h. spezifische Programmanpassungen nur zum Zweck der Validierung sind nicht erlaubt. Die geprüften Programme müssen Planern/Ingenieuren auf dem Markt zugänglich sein.
  3. Die Ergebnisse müssen von Dritten reproduzierbar sein. Dies kann am Einfachsten durch Bereitstellen der Simulationseingangsdaten erreicht werden (dafür gibt es Bonuspunkte bei der Bewertung). Auch eine zusätzliche Dokumentation der Dateneingabe/Modellierung kann helfen das Reproduzieren der Daten zu erleichtern.

Die Angabe der Version erlaubt es, zwischen verschiedenen Entwicklungsstufen einer Software zu unterscheiden.

Die Angabe des Prüfers/Prüfdaten-Bereitstellers erlaubt es, unterschiedliche Kompetenzen/unterschiedliches Detailwissen bei Simulationsanwendern zu berücksichtigen. So hat ein Entwickler der Software sicher ein größeres Detailwissen und kann ggfs. undokumentierte/unbekannte Spezialfunktionen nutzen, die ein „normaler“ Ingenieur vielleicht nicht kennt. Dies hat aber auch den Vorteil, dass die Anwendung dieser Funktionalitäten in der Testreihe erläutert und damit bekannt gemacht werden. Und damit hilft dieses auch allen anderen Anwendern der Software.

Prüfmethodiken

Neben Regressionstests und Modul-/Einheitentests (engl. unit tests) ist das Durchführen von Testreihen und Vergleichen der Simulationsergebnisse gegen Referenzwerte wichtig für die Qualitätssicherung eines Berechnungsprogramms. Leider ist alleine das Formulieren von Testreihen und Prüfkriterien selbst recht schwierig. Das Thema ist in zahlreichen Publikationen aufgegriffen worden und es existieren auch bereits einige Prüfserien und Testreihen.

Es gibt grundlegend verschiedene Prüfmethodiken, um ein Modell auf korrekte Funktionalität zu prüfen. Je nach Verfahren und Autor werden hier verschiedenste Begriffe verwendet, wie Validierung, Verifizierung, Plausibilitätstests, Benchmarking, usw. Eine eindeutige Definition ist unserer Meinung nach nicht wirklich möglich. Wir verwenden allgemein den Begriff Validierung als Synonym für Funktionsprüfung.

Übliche Testverfahren sind:

  1. Vergleich zwischen Simulationsergebnissen und analytischen Lösungen,
  2. Vergleich von Simulationsergebnissen mit Messwerten, und
  3. Vergleich von Simulationsergebnissen mehrere Programme/Modelle untereinander.

Analytische Lösungen

Der Vergleich mit analytischen Lösungen ist bei heutigen Aufgabenstellungen und dynamischen Simulationsprogrammen de-facto nicht möglich. Lediglich für stark vereinfachte Spezialfälle lassen sich analytische Lösungen konstruieren. Diese sind durch die Vereinfachungen jedoch nicht mehr praxisrelevant und Aussagen aus einer analytischen Validierung lassen sich in der Regel nicht verallgemeinern. Eine Ausnahme bilden analytische (Näherungs-)Lösungen für stationäre Wärmebrückenberechnungen.

Vergleich mit Messwerten

Der Vergleich mit Messwerten/Monitoringdaten scheint auf den ersten Blick naheliegend zu sein. Betrachtet man eine Validierung genauer, so ergeben sich jedoch vielfältige Probleme und Fehlerquellen.

In der Regel werden Simulationsprogramme nicht verwendet, das Monitoring bzw. die Messdatenerfassung zu konzipieren. D.h. es wird nicht a-priori geprüft, ob die erfassten Messparameter überhaupt zureichend und geeignet sind, ein Simulationsmodell zu validieren. Stattdessen werden in der Regel zuerst Messwerte erfasst und dann wird versucht, dass Simulationsmodell mit den Daten abzugleichen (oder es werden von Dritten bestimmte Messwerte herangezogen).

Dies bedingt natürlich das Problem, dass bestimmte Freiwerte für Parameter verbleiben, die dann zur Kalibrierung des Modells genutzt werden können. Eine häufige Kritik bei diesem Ansatz ist, dass die Simulationsergebnisse passend „gefittet“ werden. Ein derartiger Abgleich der Simulationsergebnisse mit Messdaten liefert somit lediglich den Nachweis, dass das Simulationsmodell prinzipiell in der Lage ist, die Komplexität der gemessenen Realität (einschließlich potentieller Messfehler) zu reproduzieren.

Bei der Erfassung und Auswertung von Messwerten müssen zahlreiche Fehlerquellen berücksichtigt und minimiert werden:

  • Messfehler in Messhardware/Kalibrierung von Sensorik/Sensordrifts etc.,
  • Platzierung von Sensoren (bspw. können signifikante Temperaturunterschiede in einem Raumluftvolumen gemessen werden, wenn der Sensor in verschiedenen Positionen platziert wird: abgehängt in Raummitte, an einer Außenwandecke, Innenwandfläche, eher oben oder unten, in Fensternähe/ bzw. der Sonnenstrahlung ausgesetzt, … ; Unterschiede von mehreren Kelvin sind hier möglich)
  • Interpretation von Messdaten (Raumlufttemperatur vs. operativer Temperatur; Globalstrahlung oder vorwiegend Diffusstrahlung wegen Eigenverschattung/Fremdverschattung; Oberflächentemperatur oder Temperatur in/über der Grenzschicht; …)

Gerade letzteres ist beim Vergleich von Messdaten mit Simulationsergebnissen kritisch zu betrachten. Simulationsmodelle arbeiten mit Vereinfachungen und Idealisierungen der bebauten Umgebung (bspw. Annahme perfekt durchmischter Raumvolumnia, oder Vernachlässigung von Wärmebrückeneffekten und Annahme homogener Oberflächentemperaturen etc.). Entsprechend müssen Messdaten bzw. Simulationergebnisse dahingehend überprüft werden, ob sie beide die gleiche Aussage treffen. Gerade bei Verwendung von publizierten Messdaten ohne Detailinformationen über Messerfassung, Sensorplatzierung etc. ist das Ergebnis eines Abgleichs mit der Simulation kritisch zu sehen.

Alternativ kann man Sensorik direkt mit dem Ziel der Validierung von Modellen platzieren und dabei bestimmte Störgrößen direkt eliminieren. Aus diesem Grund ist eigentlich immer zu empfehlen, das geplante Monitoring vorab mit dem Simulationsmodell zu prüfen und mit der Simulation eine entsprechende Sensorikauswahl zu treffen und Messmethodik festzulegen.

Vergleich verschiedener Modelle und Implementierungen

Eine weitere Form der Validierung ist der Vergleich verschiedener Simulationsmodelle untereinander. Wenn die zu vergleichenden Modelle einen ähnlichen Aufgabebereich abdecken und ähnliche Genauigkeitsanforderungen erfüllen sollen, darf man eine hinreichend große Übereinstimmung der Modellergebnisse erwarten. Dies bedingt jedoch einige Voraussetzungen:

  • die Modelle müssen hinsichtlich Modellkomplexität und abgebildeter Effekte vergleichbar sein,
  • die Modelle müssen gleich oder zumindest ähnliche Parameter verwenden; oder es muss klar definiert und eindeutige Umrechnungsvorschriften zwischen Modellparametern geben,
  • die Ergebnisgrößen müssen vergleichbar sein (bereits der Vergleich von Stundenmittelwerten der Temperatur und Momentanwerten der Temperatur kann je nach Anwendungsfall zu größeren Abweichungen führen),
  • die numerischen Algorithmen müssen der mathematischen Formulierung angemessen sein; zu starke Gleichungsvereinfachungen zum Zweck der Implementierung dürfen nicht zu Approximationsfehlern führen (bspw. Verwendung stationärer Gleichungen für stark dynamische Prozesse; zu große Mittelungsintervalle etc.); auch müssen vergleichbare Numerikparameter verwendet werden, wenn diese einen Einfluss auf die Ergebnisse haben (bspw. Gitterdetailstufen bei FEM/FVM Methoden etc.)
  • die Softwareimplementierungen dürfen keine Fehler enthalten

In der Realität ist es schwierig, alle diese Bedingungen einzuhalten. Entsprechend ergeben sich beim modellseitigen Vergleich zwischen verschiedenen Programmen für ein gewähltes realistisches Anwendungsszenario zum Teil sehr viele Ergebnisvarianten, wie nachfolgend dargestellt:

Homogenisierung von Modell-Modell-Vergleichen

Es gibt verschiedene Möglichkeiten, die Variationsbreite beim Modell-Modell-Vergleich zu reduzieren. Ausgehend von der Forderung nach gleichwertiger Anwendbarkeit der Modelle können verschiedenen Szenarien definiert werden, in denen Modellkomponenten spezifisch geprüft werden. Komplextests, bei denen viele Modellkomponenten gleichzeitig aktiv sind, bergen immer das Risiko, dass Fehlerquellen in einzelnen Modellkomponenten durch andere physikalische Effekte verwaschen werden, oder dass sich unterschiedliche Fehler kompensieren. Daher ist es zielführender, individuelle Komponententests durchzuführen, in denen jeweils bestimmte Modellfunktionalitäten mit einer Bandbreite an Parameter geprüft und verglichen werden. Dabei werden die zu verwendenden Parameter sehr genau vorgegeben, und auch das zu verwendende physikalische Modell entsprechend der Ergebnisanforderung detailliert beschrieben.

Bei Verwendung derartiger Komponententests lassen sich Programmierfehler oder Modellgenauigkeitsprobleme direkt identifizieren. Korrekte Modellergebnisse liegen bei diesen individuellen Tests häufig in einem sehr engen Korridor, welches die Definition von Validierungskriterien erleichtert.

Dieser Ansatz der Modell-Modell-Validierung durch individuelle Komponententests wird durch SimQuality in der SimQuality (2020) Testsuite verfolgt.

Andreas Nicolai, Jan. 2021