Modern modeling languages for general physical systems, such as Modelica, Amesim, or Simscape, rely on Differential Algebraic Equations (DAEs), i.e., constraints of the form f(\dot{x},x,u)=0. This drastically facilitates modeling from first principles of the physics, as well as model reuse. In recent works [RR9334], we presented the mathematical theory needed to establish the development of compilers and tools for DAE-based physical modeling languages on solid mathematical grounds.At the core of this analysis sits the so-called structural analysis, whose purpose, at compile time, is to either identify under- and over-specified subsystems (if any), or to rewrite the model in a form amenable of existing DAE solvers, including the handling of mode change events. The notion of "structure" collects, for each mode and mode change event, the variables and equations involved, as well as the latent equations (additional equations redundant with the system), needed to prepare the code submitted to the solver. The notion of DAE index (the minimal number of times any equation has to be possibly differentiated) is part of this structural analysis. This report complements [RR9334] by collecting all the needed background on structural analysis. The body of knowledge on structural analysis is large and scattered, which also motivated us to collect it in a single report.We first explain the primary meaning of structural analysis of systems of equations, namely the study of their regularity or singularity in some generic sense. We then briefly review the body of graph theory used in this context. We develop some extensions, for which we are not aware of any reference, namely the structural analysis of systems of equations with existential quantifiers. For the structural analysis of DAE systems, we focus on John Pryce's Sigma-method, that we both summarize and extend to non-square systems. The uses of these tools and methods in [RR9334] are highlighted in this report.
翻译:用于普通物理系统的现代模拟语言, 如 Modelica, Amesim 或 Simscape, 依赖于 差异代数方程式( DAEs), 即 f(\\\ dot{x}, x, u) = 0 的制约。 这极大地便利了从物理的最初原则以及模式再利用来建模。 在最近的作品中[ RR9334], 我们提出了数学理论, 以建立基于 DAE 的物理模拟语言的编译器和工具, 以坚实的数学基础为基础。 本分析的核心是所谓的 结构方程式分析, 在编译时间里, 目的是要确定指定次和指定次次子系统( 如果有的话), 或者以适合现有的 DAE 解算解算器( 常规解算法) 的形式重写模型, 包括模式改变事件的处理。 “ 结构的“ 结构” 概念, 包括每个模式和模式变化事件, 的变量和方程式, 以及我们这个系统里的隐性方程式, 都需要 E, 为了编写提交解解的代码, 。