Hilding Elmqvist

Add your bio.


Sessions

09-10
14:35
25min
Resizable Arrays in Object-Oriented Modeling
Martin Otter, Hilding Elmqvist

The Modelica language (Modelica.org) makes it easy to build large, complex models by allowing the instantiation of reusable component models. Modelica tools typically expand arrays of variables, equations and components and perform symbolic transformations on the scalar elements. This reduces the efficiency of the translation process and makes it difficult to change array dimensions after translation.

Scalarization can be avoided by imposing certain restrictions on the way models are written. This paper describes such restrictions, and the algorithms needed to be applied during the translation. As a result, arrays are resizable after translation and also during simulation. Several examples demonstrate the approach with the Web App Modiator. As a side effect, it is also shown how to provide meaningful diagnostics for erroneous models.

New Translation Methods and Tools
202
09-10
15:25
25min
Modiator - A Web App for Modelica Simulation
Hilding Elmqvist, Martin Otter

The Modelica language (www.modelica.org) has become a de facto standard for systems modeling and many tools exist. This paper describes certain modern enhancements and a static web app implementation called Modiator (Modelica Instant Simulator). It allows an improved immediate first-time user experience since the web app is available in seconds and simulations can be done directly in the browser. State of the art numerical solvers from the Sundials suite have been compiled into WebAssembly. The Modelica model is translated into Javascript code using techniques such as sorting, tearing, index reduction, state selection, etc. A subset of Modelica is supported with some extensions, for example, support for self-modifying models. This paper also presents the Fluid1D and Model3D libraries.

New Translation Methods and Tools
202