Bitte benutzen Sie diese Kennung, um auf die Ressource zu verweisen: http://dx.doi.org/10.18419/opus-13130
Autor(en): Willeke, Leonard
Titel: A preCICE-FMI Runner to couple controller models to PDEs
Erscheinungsdatum: 2023
Dokumentart: Abschlussarbeit (Master)
Seiten: xvii, 40
URI: http://nbn-resolving.de/urn:nbn:de:bsz:93-opus-ds-131493
http://elib.uni-stuttgart.de/handle/11682/13149
http://dx.doi.org/10.18419/opus-13130
Zusammenfassung: Partitioned simulation or co-simulation allows to simulate complex systems by breaking them into smaller, independent subsystems. The Functional Mock-Up Interface FMI enables co-simulation by defining a framework for simulation models. Models adhering to the standard interface (FMUs) are executed and coupled by an importer. This framework approach works well for models based on ODEs and DAEs but reaches its limits for models based on PDEs. Such models require sophisticated, legacy software packages not compatible with the FMI standard. However, only PDE-based models are able to accurately simulate many physical aspects important in engineering like heat transfer or Fluid-Structure interactions. A possible solution to this problem is the open-source coupling library preCICE. preCICE couples PDE-based simulation programs in a black-box fashion to achieve partitioned multi-physics simulations. The coupling of the FMI standard to preCICE would allow the co-simulation of FMI models with the more than 20 simulation programs in the preCICE ecosystem. This thesis is focused on the development of a preCICE-FMI Runner software to couple FMUs with preCICE. The Runner serves as an importer to execute the FMU and steer the simulation. Additionally, it calls the preCICE library to communicate and coordinate with other solvers. The scope is not to develop a general Runner software, but to couple FMUs that contain control algorithms with PDE-based models as a first step. The software is written in Python and relies on the Python package FMPy as well as the preCICE Python bindings. Two test cases show the functionality of the preCICE-FMI Runner. The coupling of ODE-based models with FMUs matches the results of a pure Python implementation with an accuracy of 10 −4 . The coupling of a PDE-based model to a controller FMU proofs the working principle, although the results could not be tested against other implementations. The scope of the implemented abilities restricts the possible simulation scenarios, but does not prohibit a general use for coupling scenarios beyond control applications.
Partitionierte Simulation oder Co-Simulation erlaubt es, die Simulation eines komplexen Systems mit kleineren, unabhängigen Subsystemen durchzuführen. Das Functional Mock-Up Interface FMI ermöglicht Co-Simulation durch die Definition eines Frameworks für Simulationsmodelle. Modelle, die diesem Interface-Standard folgen (FMUs), werden von einem Importer ausgeführt und gekoppelt. Dieser Framework Ansatz zur Co-Simulation funktioniert gut für Simulationsmodelle die auf ODEs und DAEs beruhen, allerdings nicht für Modelle mit PDEs. Diese Modelle werden oftmals durch fortgeschrittene Legacy - Softwarepakete berechnet, die nicht an die normierten Bedingungen des FMI Standards angepasst werden können. Viele physikalische Aspekte wie Hitzeübertragung oder Fluid-Struktur Interaktionen, die eine große Bedeutung für Ingenieursanwendungen haben, können aber nur mit PDE-basierten Modellen präzise berechnet werden. Eine mögliche Lösung für dieses Problem ist die Open-Source Kopplungsbibliothek preCICE. preCICE koppelt PDE-basierte Simulationsmodelle, um Multiphysiksimulationen durchzuführen. Die Kopplung des FMI Standards mit preCICE würde die Co-Simulation von FMUs mit den mehr als 20 Simulationsprogrammen erlauben, die preCICE derzeit verbindet. Diese Thesis beschäftigt sich mit der Entwicklung einer ”preCICE-FMI Runner” Software, um FMUs mit preCICE zu koppeln. Der Runner agiert als Importer für die FMU, um deren Simulation auszuführen und zu steuern. Gleichzeitig ruft er die preCICE Bibliothek auf, um mit anderen Simulationsprogrammen zu kommunizieren und die Simulation zu koordinieren. Der Fokus dieser Arbeit liegt nicht darauf, eine allgemeine Runner Software zu entwickeln. Stattdessen soll eine FMU, die ein Regelungsmodell implementiert, mit einer PDE-basierten Simulation gekoppelt werden. Die Software wird in Python geschrieben und nutzt das Python-Paket FMPy sowie die preCICE Python Bindings. Zwei Testfälle zeigen die Funktionalität des preCICE-FMI Runners. Die Kopplung von ODE-basierten Modellen mit FMUs zeigt Übereinstimmung mit einer reinen Python - Implementierung bis zu einer Genauigkeit von 10 −4 . Die Kopplung eines PDE-basierten Modelles mit einer Controller-FMU bezeugt die prinzipielle Machbarkeit dieser Kopplung. Die Resultate konnten allerdings nicht mit anderen Implementierungen verglichen werden. Der Umfang der umgesetzten Funktionalitäten begrenzt die möglichen Simulationsanwendungen, ermöglicht aber dennoch die Nutzung für unterschiedlichste Kopplungsszenarien über Regelungsanwendungen hinaus.
Enthalten in den Sammlungen:05 Fakultät Informatik, Elektrotechnik und Informationstechnik

Dateien zu dieser Ressource:
Datei Beschreibung GrößeFormat 
Thesis_Willeke.pdf670,39 kBAdobe PDFÖffnen/Anzeigen
Presentation_Willeke.pdfSlides for the final presentation823,52 kBAdobe PDFÖffnen/Anzeigen


Alle Ressourcen in diesem Repositorium sind urheberrechtlich geschützt.