Pseudo Array Causalization


  • Karim Abdelhak
  • Francesco Casella
  • Bernhard Bachmann



array preservation, causalization, matching, sorting, large scale


In the current state-of-the-art modeling tools for simulation, it is common to describe system behavior symbolically using mixed continuous and discrete differential-algebraic equations, so called hybrid DAEs. To correctly resolve higher index problems, hybrid systems and to efficiently use ODE solvers, a matching and sorting problem has to be solved, commonly referred to as causalization. Typically multidimensional equations and variables are scalarized, which leads to excessive build time and generated code size in the case of large systems. An algorithm will be presented, that preserves array structures as much as possible while still solving the problem of causalization in scalar fashion. Test results carried out in the OpenModelica tool show a reduction in build time of one/two orders of magnitude and of a factor two/three in the simulation run time for models of the ScalableTestSuite library.