JuliaCon 2020 (times are in UTC)

Jusdl.jl - Julia Based System Description Language
2020-07-29, 13:00–13:30, Green Track

The talk will introduce Jusdl.jl, which is a Julia based system description language and simulation tool that focuses on effective system simulations together with online and offline data analysis. Jusdl provides users with the ability to simulate systems consisting of components represented by different types of equations and the flexibility of enriching analysis capabilities with user-defined plugins.


Numerical simulations can be expressed as solving the mathematical equations--derived from the modeling--and/or processing the data obtained from those equations. Based on the properties of the system at hand and the level of abstraction in the modeling, the mathematical equations may be ordinary, stochastic, delay differential or difference equations. Although different simulation environments have been developed for numerical simulations of systems, they are able to simulate mostly the models represented by ordinary differential or differential-algebraic equations. This is restrictive when considering the diversity of mathematical models that can be encountered. In Jusdl.jl, it is possible to simulate discrete-time and continuous-time, static or dynamical systems. In particular, it is possible to simulate dynamical systems modeled by different types of differential equations such as ODE(Ordinary Differential Equation), Random Ordinary Differential Equation(RODE), SDE(Stochastic Differential Equation), DDE(Delay Differential Equation) and DAE(Differential-Algebraic Equation), and discrete difference equations. During the simulation, the data flowing through the links of the model can be processed online and specialized analyzes can be performed. These analyses can also be enriched with plugins that can be defined using the standard Julia library or various Julia packages. The simulation is performed by evolving model components individually and in parallel in sampling time intervals. The individual evolution of the components allows the simulation of the models including the components that are represented by different kinds of mathematical equations.

Key features of Jusdl.jl includes * Simulation of a large class of systems:
* Static systems (whose input, output relation is represented by a functional relation)
* Dynamical systems (whose input, state and output relation is represented by difference or differential equations)
* Dynamical systems modelled by continuous time differential equations: ODE, DAE, RODE, SDE, DDE
* Dynamics systems modelled by discrete time difference equations. * Simulation of models consisting of components that are represented by different type mathematical equations * Individual construction of components, no need to construct a unique equation representing the whole model * Online data analysis through plugins * Flexibility to enrich the data analysis scope through user-defined plugins