Modelica is a standardized language for describing the behavior of physical and cyber-physical systems. It incorporates mathematical constructs and physical interactions directly into the language and it can be used to create graphical, component-oriented models of complex physical systems. site

YOUTUBE -mvEUuc-sWE Published on Sep 17, 2016

Unbeknownst to most software developers, Modelica is used by a wide range of big name industrial companies (e.g., Ford, United Technologies, BMW, Airbus) to simulate a host of real world devices and systems.

This talk will cover how the mathematical and physical information described in Modelica is transformed into a running simulation of that physical system. There are a number of fascinating algorithms that are needed to transform the hybrid differential-algebraic equations extracted from a Modelica model into imperative simulation code.

The compilation is completely different from a typical programming language. Attendees may recognize some similarities to functional reactive programming (FRP) but extended to include continuous behavior.


There is mutual respect between Michael Tiller and Bret Victor. Michael mentions being impressed with Bret's extended essay on technical contributions toward addressing climate change. Let's Worry about the Train

Bret Victor there asks, "what if there were an npm for scientific models?" Michael demonstrates exactly that. github npm

In practical terms, the distinction between DAEs and ODEs is often that the solution of a DAE system depends on the derivatives of the input signal and not just the signal itself as in the case of ODEs; this issue is commonly encountered in systems with hysteresis, such as the Schmitt trigger. wikipedia