List of Tutorials

The tutorials are free and take place on Monday, 14:00 – 17:45.

Tutorial 1: (Room: Fürstenfelder 2/3)
Introduction to Modeling, Simulation, and Parallel Computing with Modelica using OpenModelica

by Peter Fritzson, Olena Rogovchenko, Martin Sjölund, Mahder Gebremedhin, Kristian Stavåker, Linköpping University, Sweden

The first part of the tutorial gives an introduction to the Modelica language to people who are familiar with basic programming concepts. It gives a basic introduction to the concepts of modeling and simulation, as well as the basics of object-oriented component-based modeling for the novice, and an overview of modeling and simulation in a number of application areas. The second part presents methods how multi-core computational power can be used for efficient simulation of Modelica models. This includes automatic parallelization of equation-based models, coarse-grained explicit parallelization, and execution on GPUs. Depending on the attendees the two parts are presented in parallel or in subsequence. The OpenModelica environment with its graphical user interface and scripting will be used for hands-on exercises.

More information on tutorial 1

Tutorial 2: (Room: Stadtsaal)
Mathematical Aspects of Modeling and Simulation with Modelica

by Bernhard Bachmann, University of Applied Sciences Bielefeld, Germany

The object-oriented modeling language Modelica provides powerful features that make it possible to build up and simulate very complex even hybrid systems quite easily. But, what happens, if a Modelica tool is not capable to compile and/or correctly simulate the system of interest? Reasons can be i.e. modeling errors, wrong parameter values and/or numerical instabilities. Automatic problem detection is usually not possible and only understanding of symbolical and numerical techniques behind the scene can help resolving this issue. This tutorial provides a basic understanding on the mathematical aspects of object-oriented modeling and simulation. The different phenomena are explained in detail using simple Modelica examples which can be thoroughly analyzed during hand-out exercises.

More information on tutorial 2

Tutorial 3: (Room: Kleiner Saal)
Synchronous Controllers and State Machines in Modelica 3.3

by Hilding Elmqvist, Sven Erik Mattsson, Dassault Systemes, Sweden
Martin Otter and Bernhard Thiele, DLR, Germany

Modelica has been extended with synchronous constructs for describing discrete-time controllers as well as state machines for sequential control and hybrid system modeling. Much focus has been given to safe constructs and intuitive and well-defined semantics. The tutorial will introduce the new concepts of Modelica 3.3 and give plenty of examples on how to use them in practice. The principles of partitioning a system model into different clocks (continuous, periodic, non-periodic, multi-rate) will be explained. Parallel and hierarchical state machines will be introduced including submodels within states. The supporting Modelica library will be described and how mapping to various hardware platforms, for hardware-in-the-loop simulation and embedded control, is performed. Hands on exercises, using Dymola, will give the participants a more detailed understanding of the power of the new features for synchronous controllers and state machines.

Tutorial 4: (Room: Seminarraum S1)
Vehicle Dynamics Library Tutorial

by John Griffin and Johan Andreasson, Modelon AB, Sweden

This tutorial session will allow attendees to be introduced to the capabilities of Dymola and the Vehicle Dynamics Library (VDL). Attendees will have the opportunities to walk-through the library. The benefits of Modelica-based tools will be highlighted through guided, hands-on example experiments. These examples will demonstrate how Dymola/VDL can be successfully used at any phase of the vehicle design process with experiments ranging from the vehicle component to the system level.

More information on tutorial 4

Tutorial 5: (Room: Säulensaal)
Dynamic Optimization and FMI Simulation with

by Johan Åkesson and the team, Modelon AB, Sweden

Dynamic optimization is becoming a standard industrial technology to solve a wide range of industrial engineering problems. These include optimal control and model predictive control, model calibration and state estimation as well as design and sizing problems. In this tutorial, participants will get hands on experiences with formulating and solving engineering problems where simulation based on the FMI standard, dynamic optimization based on the Optimica extension and Python scripting are used as building blocks. During the tutorial, we will also discuss challenges and pitfalls in optimization of industrial processes, and we highlight modeling considerations for dynamic optimization. The open source platform is used in the tutorial.

More information on tutorial 5

Tutorial 6: (Room: Fürstenfelder 4)
Advanced Analysis of Modelica Models using MapleSim and Maple

by Orang Vahid, Maplesoft, Canada

Since its inception, Modelica has held the promise of letting engineers go further with physical modeling than just running simulations. With recent developments in MapleSim and Maple, users can create and document their own symbolic and numeric analyses of Modelica models in a rich problem-solving environment, in addition to performing traditional simulations.

This tutorial will guide you through the process of loading a Modelica model into Maple and then extracting the model equations into a form amenable to a wide range of analysis. Through hands-on exercises, it will provide you with basic skills in developing your own analyses in Maple, and implementing the results in MapleSim.

Examples will include control design, frequency analysis, vibration attenuation, parameter sweeps, Monte-Carlo and optimization, and sensitivity analysis. Attendees will be provided with an evaluation copy of Maple and MapleSim for use on their own Windows, Mac, or Linux computer.

More Information on tutorial 6

Tutorial 7: (Room: Seminarraum S5)
Code-Export in SimulationX - Steps from offline model to real-time platform

by Karsten Todtermuschke, ITI Gmbh, Germany

The tutorial provides the creation of a simple powertrain model using elements from the Modelica Standard Library. Different analyzing methods like computation of natural frequencies or error estimates of state variables will be applied to ensure the real-time capability of this model.

Afterwards, a functional mock-up unit (FMU) of a selected component of the powertrain will be created for both Model Exchange and Co-Simulation via code export. This will be followed by a re-import of the generated FMU into the powertrain model.

Finally, the comparison of the created models will show the similarities and differences between Model Exchange and Co-Simulation.

More information on tutorial 7

Tutorial 8: (Room: Seminarraum S6)
Creating new tools for Modelica using the Modelica SDK

by Peter Harmann, DeltaTheta, UK

Modelica models contain a significant resource of company intellectual property, from parameter data to the connectivity of subsystems in products. Development of Modelica libraries also creates, and requires, a lot of information such as where and how each model definition is utilised. The deltatheta Modelica SDK (Software Development Kit) maximises the use of this information by providing a complete Modelica implementation embedded in a software library. This allows developers to create their own tools and utilities that can access, query, modify, translate and simulate Modelica models.

Participants in this tutorial will learn how to use simple programming tools together with the deltatheta Modelica SDK to create powerful tools that can extract valuable information from their Modelica libraries. All software required will be provided and only basic programming experience is needed.