Section: New Software and Platforms


Implicit Structural Analysis of Multimode DAE systems

Keywords: Structural analysis - Differential algebraic equations - Multimode - Scheduling

Scientific Description: Modeling languages and tools based on Differential Algebraic Equations (DAE) bring several specific issues that do not exist with modeling languages based on Ordinary Differential Equations. The main problem is the determination of the differentiation index and latent equations. Prior to generating simulation code and calling solvers, the compilation of a model requires a structural analysis step, which reduces the differentiation index to a level acceptable by numerical solvers.

The Modelica language, among others, allows hybrid models with multiple modes, mode-dependent dynamics and state-dependent mode switching. These Multimode DAE (mDAE) systems are much harder to deal with. The main difficulties are (i) the combinatorial explosion of the number of modes, and (ii) the correct handling of mode switchings.

The aim of the software is on the first issue, namely: How can one perform a structural analysis of an mDAE in all possible modes, without enumerating these modes? A structural analysis algorithm for mDAE systems has been designed and implemented, based on an implicit representation of the varying structure of an mDAE. It generalizes J. Pryce's Sigma-method to the multimode case and uses Binary Decision Diagrams (BDD) to represent the mode-dependent structure of an mDAE. The algorithm determines, as a function of the mode, the set of latent equations, the leading variables and the state vector. This is then used to compute a mode-dependent block-triangular decomposition of the system, that can be used to generate simulation code with a mode-dependent scheduling of the blocks of equations.

Functional Description: IsamDAE (Implicit Structural Analysis of Multimode DAE systems) is a software library for testing new structural analysis algorithms for multimode DAE systems, based on an implicit representation of incidence graphs, matchings between equations and variables, and block decompositions. The input of the software is a variable dimension multimode DAE system consisting in a set of guarded equations and guarded variable declarations. It computes a mode-dependent structural index-reduction of the multimode system and produces a mode-dependent graph for the scheduling of blocks of equations. Evaluation functions make it possible to return the lists of leading equations and leading variables, as well as the actual scheduling of blocks, in a specified mode.

IsamDAE is coded in OCaml, and uses the following packages: * MLBDD by Arlen Cox, * Menhir by François Pottier and Yann Régis-Gianas, * Pprint by François Pottier, * XML-Light by Nicolas Cannasse and Jacques Garrigue.

Release Functional Description: Version 0.2: * MEL: ad hoc language for the declaration of variable dimension multi-mode DAE systems * automatic parsing, model checking and model allocation * XML output for the list of evaluation blocks (parameters, equations, unknowns to be computed) * new algorithms for the mode-dependent scheduling and the evaluation of the scheduling in a given mode

News Of The Year: It has been possible to perform the structural analysis of systems with more than 750 equations and 10 to the power 23 modes, therefore demonstrating the scalability of the method.

  • Authors: Benoît Caillaud and Mathias Malandain

  • Contact: Benoît Caillaud