Softwareprojekte

Neben der theoretischen Erforschung neuer mathematischer Verfahren zur Lösung von Gleichungssystemen, Matrix-Gleichungen und vielfältigen Problemen aus dem Bereich der Modellreduktion oder der optimalen Steuerung, bemühen wir uns auch um deren konkrete Umsetzung in Software Paketen. Hauptaugenmerk liegt dabei zum einen auf reproduzierbaren Ergebnissen und zum anderen auf der Ausnutzung moderner Computer-Architekturen und deren Programmiermodellen. Je nach Problemstellung verwenden wir die gebräuchlichen Programmiersprachen im Wissenschaftlichen Rechnen. Diese erstrecken sich in unserer Fachgruppe von C/C++ über komplexe MATLAB Projekte bis hin zu Fortran und Python.

Aktuelle Entwicklungen & Beiträge

FlexiBLAS - Eine Blas Wrapper-Bibliothek
Die BLAS Bibliothek ist eine der grundlegenden Softwarepakete bei der Entwicklung numerischer Algorithmen. Sie bildet die Grundlage für viele weitere Softwarebibliotheken, wie zum Beispiel LAPACK, PLASMA oder MAGMA. Obwohl eine schnelle BLAS Implementierung ein Grundbaustein schneller Algorithmen ist, kann es je nach Situation, zum Beispiel bei der Fehlersuche oder Performanceanalyse, notwendig sein, die zugrundeliegende BLAS Version auszutauschen. Das von uns entwickelte Framework erlaubt diesen Austausch ohne dass Programme neu kompiliert oder gelinkt werden müssen. mehr
MEPACK - Matrix Equation Package
MEPACK ist eine Software-Bibliothek, die sich auf das Lösen von dichten Sylvester-ähnlichen Matrixgleichungen konzentriert. Die Bibliothek ist in Fortran geschrieben und bietet Schnittstellen für C, MATLAB und GNU Octave. Bei der Entwicklung wurde großer Wert darauf gelegt, dass die Algorithmen von aktuellen Fortran-Compilern sehr gut an moderne CPU-Architekturen angepasst werden können. Zusätzlich werden die Algorithmen durch den Einsatz von gerichteten azyklischen Graphen unter Verwendung von OpenMP beschleunigt, um den Nutzen von Multicore-Architekturen zu erhöhen. mehr
M.E.S.S. - Matrix Equations Sparse Solvers
MESS, die Matrix Equations Sparse Solvers Bibliothek ist der Nachfolger der Lyapack MATLAB-Toolbx. Die Bibliothek steht als MATLAB-Toolbox und C-Bibloiothek (mit Interfaces für Python und Julia) bereit. Die Anwendungsgebiete liegen im Lösen großer dünn besetzter Matrixgleichungen, sowie ihrer Anwendungen in der Modellordnungsreduktion und optimalen Steuerung. Darüberhinaus stellt die C Version eine Reihe zusätzlicher Hilfsroutinen für effiziente dünn besetzte Matrixarithmetik auf modernen Merkernarchitekturen.
mehr
morgen - Model Order Reduction for Gas and Energy Networks
"morgen" ist eine modulare und erweiterbare Simulationsplattform zum Leistungsvergleich von verschiedenen Kombinationen von Eulergleichungsmodellen, Zeitschrittlösern und projektionsbasierten Modellreduktionsmethoden an diversen Netzwerken und Szenarien. Ein Fokus ist hierbei die datengetriebene Modellordnungsreduktion für Gasnetzsimulationen.
mehr
MORLAB - Model Order Reduction LABoratory
MORLAB ist eine Sammlung von MATLAB/Octave Funktionen für Modellreduktion von dynamischen Systemen basierend auf dem Lösen von Matrixgleichungen. Die Implementierung nutzt dabei Spektralprojektionsmethoden, wie z.B. Methoden basierend auf der Matrix-Signumsfunktion and der Matrix-Diskfunktion.
mehr
pyMOR - Modellordnungsreduktion in Python
pyMOR ist eine Softwarebibliothek zum Erstellen von Anwendungen zur  Ordnungsreduktion von großskaligen Modellen mit der Programmiersprache Python. Der Hauptfokus liegt auf der Anwendung von reduzierten Basismethoden auf parametrisierte partielle Differentialgleichungen. Alle Algorithmen in pyMOR sind in Form abstrakter Schnittstellen für die nahtlose Integration mit externen, hochdimensionalen PDE-Solvern formuliert. Darüber hinaus sind reine Python-Implementierungen von Finite-Elemente- und Finite-Volume-Diskretisierungen unter Verwendung von NumPy und SciPy für die schnelle generierung von Protoypen verfügbar.

Die CSC Gruppe erweitert den FUnktionsumfang sukzessive um Methoden für dynamische Systeme mit Ein- und Ausgängen.
mehr
The Control and Systems Library SLICOT
Die SLICOT Bibliothek ist eine Sammlung von Fortran 77 Routinen zu numerischen Algorithmen für Probleme in der System- und Regelungsltheorie. Basierend auf den Funktionen aus BLAS und LAPACK bietet SLICOT Routinen zum Design und zur Analyse von dynamischen Systemen an. Durch den Einsatz von FORTRAN 77 wird auch eine zukünftige Weiterverwendung in Produktiv-Software garantiert. Die Weiterentwicklung erfolgt auf Github. mehr
Zur Redakteursansicht