Aspects of Heterogeneous System Models in Industrial Applications
Presentation by Robert Höpler, Founder of SysOpt GmbH.
Heterogeneity can be present on various stages in system modelling and simulation. A system model is often called ‘multi-domain’, when different technical domains are present, such as hydraulics, mechanics, and control. When it comes to simulation this is just the surface of this domain level. Various mathematical and modelling formalisms can lie underneath which lead to different mathematical equations of motion, numerical properties, and computational complexity. On a specification level we see the choice between different modelling formalisms and modelling languages, libraries, coding styles, and authoring tools. Often there is a need to mix these. Decisions taken here strongly influence expressiveness of the models and ability for code generation and deeply impact software engineering topics such as development processes and exchange of models. Multi-domain approaches such as Modelica try to reconcile some these sources of heterogeneity. On an executional level we find classical desktop system simulation but more complex settings such as co-simulation, parallelization, real-time systems, and optimization which constrain numerical stability and precision and simulation speed. There might be an intricate feedback to the specification level, e.g., when modelling for specific solvers. Efforts like the Functional Mockup Interface (FMI) address some of these aspects and focus on interfacing and exchange of executional models. Prevalent system simulation tools are usually mature and controllable – as long as one stays within the desired scope of the tool. Following some examples we show how practical considerations influence design decisions and the choice of tooling.