Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Consistent terminology: Modeling, DAE, ODE

I am new to the subject "modeling of physical systems". I read some basic literature and did some tutorials in Modelica and Simulink/Simscape. I wanted to ask you, if I understand the following content correctly:

  • Symbolic manipulation is the process of transforming a differential-algebraic system of equation (physical model: DAE) into a system of differential equations (ODE) that can be solved by standard solvers (Runge, Kutta, BDF, ...)
  • There are also solver that can solve DAE's directly. But Modelica (openModelica, Dymola) and Simscape transfer the System into an ODE (why are this methods better compared to direct DAE solvers?)
  • A "flat Modelica code" is the result ( = ODE) of the transformation.

Thank you very much for your answers.

like image 488
AssMero Avatar asked May 20 '16 19:05

AssMero


People also ask

What is ODE and DAE?

DAE (Differential Algebraic Equations) is used when you a have a mix of Ordinary differential equations and algebraic equations that describe the system you are modelling. But you if you simply have pure ODE (Ordinary differential Equations) set you don't need a DAE solver.

What is DAE in mathematics?

A differential-algebraic equation (DAE) is an equation involving an unknown function and its derivatives.

What are algebraic States?

Algebraic states are variables that do not have the differential operator ($) applied in any equation. These algebraic states are declared in the variables section.


1 Answers

Symbolic processing for Modelica includes:

  • remove object oriented structure and obtain an hybrid DAE (flat Modelica)
  • perform matching, index reduction, casualization to get an ODE
  • perform optimization (tearing, common subexpression elimination, etc)
  • generate code for a particular solver

OpenModelica can also solve the system in DAE mode without transforming it to ODE and I guess other Modelica tools can also do that.

A "flat Modelica code" is Modelica code where the object orientation is removed, connect equations are expanded to normal equations. The result is a hybrid DAE.

See Modelica Spec 3.3 for more info about all this (for example Appendix C): https://modelica.org/documents/ModelicaSpec33Revision1.pdf

like image 95
Adrian Pop Avatar answered Oct 30 '22 08:10

Adrian Pop