Die Einführung des VIVO-Systems an der HTWD befindet sich derzeit in der Testphase. Daher kann es noch zu anwendungsseitigen Fehlern kommen. Sollten Sie solche Fehler bemerken, können Sie diese gerne >>hier<< melden.
Sollten Sie dieses Fenster schließen, können Sie über die Schaltfläche "Feedback" in der Fußleiste weiterhin Meldungen abgeben.
Vielen Dank für Ihre Unterstützung!
Towards utilizing repeating structures for constant time compilation of large Modelica models
Modelica is a language for modeling and simulating complex physical systems. A Modelica compiler generates a differential-algebraic equation (DAE) system from Modelica source code. The physical system is simulated by solving the DAE numerically. Before this can be done, the Pantelides algorithm is often applied to reduce the index of the DAE. Modelica's ability of structured programming makes it easy to describe physical systems with a repeating structure, like a roller chain, a battery pack or a solar panel. Such Modelica models generate DAE systems with many repeated sections. The Pantelides algorithm is not capable of using and preserving these repeating structures. As a consequence Modelica compilers need to unroll such structures. Huge memory consumption and the generation of bulky source code for the numerical solver is often a consequence. This article discusses techniques, which make it possible to preserve and use repeating structures during Pantelides index reduction. It is shown how the search for augmenting paths and the calculation of minimal structural singular subsets can be shortened. The method is restricted to repetitions, which are described by non-nested for-loops.