Towards utilizing repeating structures for constant time compilation of large Modelica models

Research output: Contribution to book/Conference proceedings/Anthology/ReportConference contributionContributedpeer-review

Abstract

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.

Details

Original languageEnglish
Title of host publicationEOOLT '14: Proceedings of the 6th International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools
PublisherAssociation for Computing Machinery (ACM), New York
Pages35-38
Number of pages4
ISBN (electronic)978-1-4503-2953-8
Publication statusPublished - Oct 2014
Peer-reviewedYes

Publication series

SeriesEOOLT: Equation-Based Object-Oriented Modeling Languages and Tools

External IDs

Scopus 84939534079

Keywords

Keywords

  • Pantelides algorithm, Modelica, differential algebraic equations, index reduction, matching theory