Reshuffling

Volker Waurich, Ines Gubsch, Christian Schubert, Marcus Walther · 2014

This paper presents a novel algorithm, named Reshuffling, for manipulating a system of differential-algebraic equations (DAE). An algorithm is introduced to rearrange edges in the graph representation of the DAE in order to resolve cycles. The algorithm comprises a method to detect cycles of linear equations in the bipartite graph and to rearrange the cycle nodes by substituting equations. The incidence structure of the cycle changes, which can lead to a dissection of cycles. As an effect, constant variables can be evaluated or implicit constraints can be revealed and thus singularities prevented. For some models, this is essential to solve the system. Furthermore, the performance can be increased because the number of necessary equations needed to calculate the state derivatives is reduced or large systems of equations are split into various smaller ones. This also helps parallelization as it alleviates bottlenecks. The depicted algorithm was developed using the DAE derived from Modelica models and the algorithm is implemented in the OpenModelica Compiler (OMC).

Read the paper · More papers on PaperTik