Section: Research Program
Structural Analysis of DAE Systems
The Modelica language is based on Differential Algebraic Equations (DAE). The general form of a DAE is given by:
where
Let
The state variables of
A leading variable
DAE are a strict generalization of ordinary differential
equations (ODE), in the sense that it may not be immediate
to rewrite a DAE as an explicit ODE of the form
For a square DAE of dimension
can locally be made explicit, i.e., the Jacobian matrix of
In practice, the problem of automatically finding a ”minimal”
solution
A renowned method for the SA of DAE is the Pantelides method;
however, Pryce's
Pantelides method
In 1988, Pantelides proposed what is probably the most well-known SA method for DAE [55]. The leading idea of his work is that the structural representation of a DAE can be condensed into a bipartite graph whose left nodes (resp. right nodes) represent the equations (resp. the variables), and in which an edge exists if and only if the variable occurs in the equation.
By detecting specific subsets of the nodes, called Minimally Structurally Singular (MSS) subsets, the Pantelides method iteratively differentiates part of the equations until a perfect matching between the equations and the leading variables is found. One can easily prove that this is a necessary and sufficient condition for the structural nonsingularity of the system.
The main reason why the Pantelides method is not used in our work is that it cannot efficiently be adapted to multimode DAE (mDAE). As a matter of fact, the adjacency graph of a mDAE has both its nodes and edges parametrized by the subset of modes in which they are active; this, in turn, requires that a parametrized Pantelides method must branch every time no mode-independent MSS is found, ultimately resulting, in the worst case, in the enumeration of modes.
Pryce's -method
Albeit less renowned that the Pantelides method, Pryce's
This matrix is given by:
where
The primal problem consists in finding a maximum-weight perfect matching (MWPM) in the weighted adjacency graph. This is actually an assignment problem, for the solving of which several standard algorithms exist, such as the push-relabel algorithm [44] or the Edmonds-Karp algorithm [43] to only give a few. However, none of these algorithms are easily parametrizable, even for applications to mDAE systems with a fixed number of variables.
The dual problem consists in finding the component-wise minimal
solution
From the results proved by Pryce in [56], it is known
that the above algorithm terminates if and only if it is provided a
MWPM, and that the values it returns are independent of the choice of
a MWPM whenever there exist several such matchings. In particular, a
direct corollary is that the
Another important result is that, if the Pantelides method succeeds
for a given DAE
Working with this method is natural for our works, since the algorithm for solving the dual problem is easily parametrizable for dealing with multimode systems, as shown in our recent paper [31].
Block triangular decomposition
Once structural analysis has been performed, system
-
the dependency graph of system
is generated, by taking into account the perfect matching between equations and unknowns ; -
the strongly connected components (SCC) in this graph are determined: these will be the equation blocks that have to be solved;
-
the block dependency graph is constructed as the condensation of the dependency graph, from the knowledge of the SCC; a BTF of system
can be made explicit from this graph.