JuliaSim Modeling Language: Composing Complex Systems with MTK | Tiller | JuliaCon 2024

Описание к видео JuliaSim Modeling Language: Composing Complex Systems with MTK | Tiller | JuliaCon 2024

JuliaSim Modeling Language: Composing Complex Systems with MTK by Michael Tiller
PreTalx: https://pretalx.com/juliacon2024/talk...

There are several methods for creating models for ModelingToolkit. The simplest way is to declare whatever variables or parameters the model includes along with the equations used to describe the systems behavior. From here, ModelingToolkit finds the most efficient approach for solving that system. It is also possible to use a collection of Julia macros to describe reusable component models and systems composed of these reusable component models.

The JuliaSim Modeling Language (JSML) approach adds yet another way of composing ModelingToolkit models. Instead of building on top of Julia imperative semantics to describe and construct models, JSML takes a declarative approach. It provides a domain specific language (DSL) for defining reusable component models (their equations, parameters, connectors) and how these components are connected in order to define systems. The hope is that this DSL provides a very focused way of describing the behavior and composition of models that makes for an easier learning curve, better diagnostics, static analysis and a greater ability to reason about such models. These components will leverage Julia functions for any imperative semantics they require.

JSML models are fully compatible with both ModelingToolkit.jl as well as the JuliaSim modeling environment. In practice this means that JSML defines not just how the components behave, but also how they are rendered in a graphical environment. Model libraries leverage the Julia package manager and can therefore be fully versioned and dependent on other model libraries.

Комментарии

Информация по комментариям в разработке