JuliaCon 2025

Building Modeling Libraries with Dyad
2025-07-23 , David Lawrence Hall Room 104

Dyad is a declarative language for describing the composition of ModelingToolkit models. It encompasses all aspects of the models: their mathematical behavior and graphical appearance and composition.

This talk introduces the standard libraries we are building with Dyad. It gives insight into how we manage these libraries and how one can develop custom component libraries to integrate with the rest of the ecosystem.


Using Dyad, declarative descriptions of the guiding mathematical behavior and graphical appearance can be specified for models. Using Dyad Studio (a VSCode extension) or CLI tooling, this description is compiled to ModelingToolkit models to leverage the rich SciML ecosystem for building, solving, and analyzing the ODESystem.

With this acausal framework, we have built standard libraries in Electrical, Translational, Rotational, Hydraulic, and Thermal domains. And we expect to include even more domains. We follow industry standards to remain consistent with other modeling applications. These libraries come with a suite of unit tests, examples and documentation (which is partly auto-generated).

To keep it lightweight, these libraries are packaged as separate Julia packages; using the package manager and some of its latest features, we maintain compatibility with these libraries.

Custom libraries can be created with Dyad Studio's streamlined process. One can import the appropriate domains and build composite models with standard components as building blocks.

He works as a modeling and simulation engineer at JuliaHub.

He loves to code, paint, write and trek. He likes Julia ecosystem and contributes to it.

This speaker also appears in: