Ing Ind - Inf (Mag.)(ord. 270) - BV (478) NUCLEAR ENGINEERING - INGEGNERIA NUCLEARE

*

A

ZZZZ

097484 - SIMULATION TECHNIQUES AND TOOLS

Ing Ind - Inf (Mag.)(ord. 270) - MI (473) AUTOMATION AND CONTROL ENGINEERING - INGEGNERIA DELL'AUTOMAZIONE

*

A

ZZZZ

097484 - SIMULATION TECHNIQUES AND TOOLS

Ing Ind - Inf (Mag.)(ord. 270) - MI (481) COMPUTER SCIENCE AND ENGINEERING - INGEGNERIA INFORMATICA

*

A

ZZZZ

097484 - SIMULATION TECHNIQUES AND TOOLS

Obiettivi dell'insegnamento

The course is aimed to deepen the concepts of dynamic modelling and simulation, and to explain the architecture of the most popular relevant software tools. To be more specific, the course is aimed to provide students with the skills needed to address problems of modeling and simulation of complex engineering systems. The first part will be dedicated to illustrate the causal approach to modeling, on which probably the most widespread simulation tool is based: Simulink. The second part of the course will be devoted to introducing the acausal approach, based on object-oriented programming concepts, languages and tools. In particular, in this second part, the characteristics of the modeling language Modelica will be illustrated, now standard "de facto" for the modular, multi domain modelling. The characteristics of the modelling and simulation environments will be illustrated in reference to some application cases.

Risultati di apprendimento attesi

Lectures will allow students to:

Understand the theory of numerical methods for the solution of systems of ordinary differential equations (ODE).

Model and numerically solve hybrid dynamic models (events).

Understand the basic theory of differential-algebraic equations systems (DAE).

Use an object-oriented modelling language (Modelica) to model complex engineering systems.

Understand symbolic manipulation techniques applied to DAE system in order to derive efficient simulation codes.

Exercises will allow students to:

Build simulation models of complex systems in both causal (Simulink) and acausal (OpenModelica) modelling environments.

Describe and solve hybrid dynamical systems.

Select solver parameters and interpret the results of the simulations in terms of accuracy and computation efficiency.

Argomenti trattati

Lectures

1. Introduction. 2. Causal approach. 2.1 ODE systems. 2.2 Theorem of global existence and uniqueness of an IVP: hypothesis. 2.3 Theorem of global existence and uniqueness of an IVP: thesis. 2.4 Numerical integration and stability of the solution of an IVP. 2.5 Elementary methods. 2.5.1 Forward Euler method. 2.5.2 Consistency and convergence. 2.5.3 0-stability of the forward Euler method. 2.5.4 Region of absolute stability. 2.5.5 Stiffness. 2.5.6 Backward Euler method. 2.5.7 Newton method. 2.5.8 Trapezoid method. 2.5.9 Midpoint methods. 2.6. Managing discontinuities. 2.7 Local error and tolerances. 2.8 Methods of step size selection. 2.9 Higher order methods. 2.9.1 General formulation of Runge Kutta methods. 2.9.2 Accuracy, 0-stability and absolute stability regions of Runge-Kutta methods. 2.9.3 Adams-Bashforth methods. 2.9.4 Adams-Moulton methods. 2.9.5 BDF methods. 2.9.6 0-stability of multistep methods. 2.9.7 Absolute stability of multistep methods. 3. Acausal approach. 3.1 DAE systems. 3.2 Index: examples. 3.3 DAE systems with constant coefficients. 3.4 Index and numerical integration. 3.5 General definition of index. 3.6 Hessenberg forms. 3.7 Coordinate partitioning method. 3.8 BDF methods for DAE systems. 3.9 Runge Kutta methods for DAE systems. 4. Introduction to the Modelica language. 4.1 Classes, connectors, inheritance. 4.2 Algorithms, functions and event models. 4.3 Packages. 5 Modelica code translation. 5.1 Hybrid DAE system. 5.2 Structural analysis. 5.2.1 Bipartite graphs. 5.2.2 Duff Algorithm. 5.2.3 Pantelides theorem. 5.2.4 BLT reordering. 5.2.5 Sargent and Westerberg algorithm. 5.2.6 Tarjan algorithm (notes). 5.2.7 Tearing.

Exercises

All exercises will be carried out in a computer laboratory.

1. Matlab exercises on basic numerical methods. 2. Introduction to Simulink. 2.1 Model of discontinuous friction: stick-slip and hunting motion. 2.2 Model of continuous friction: stick-slip and hunting motion. 2.3 Use of S-functions: simulation of a double pendulum. 2.4 Use of S-functions: simulation of a brushless motor. 3. Introduction to OpenModelica. 3.1 Simulation of a brushless motor in OpenModelica. 3.2 Use of stream connectors. 3.3 Use of conditional connectors and model of digital controllers. 3.4 Models of hybrid systems and event iteration. 3.5 Multibody model of a machine tool.

Prerequisiti

Basic theory of differential equations.

Modalità di valutazione

The evaluation test will be both practical and oral and it will be divided into two parts. In a first part the student will be asked to develop "from scratch" and simulate the model of a freely chosen dynamic system, in either a causal or in an acausal modelling environment. The complexity of the model, the mastery of the modeling tool and the ability to interpret the results will constitute elements of judgment. In the second part the student will be asked to show his/her knowledge of the theoretical contents of the course, answering theoretical questions or solving simple exercises.

Bibliografia

U. M. Ascher, L. R. Petzold, Computer Methods for Ordinary Differential Equations and Differential-Algebraic Equations, Editore: SIAM, Anno edizione: 1998, ISBN: 978-0-89871-412-8
Modelica by Examplehttp://book.xogeny.com/Introduction to Object-Oriented Modeling and Simulation with Modelica Using OpenModelicahttps://www.openmodelica.org/images/docs/tutorials/modelicatutorialfritzson.pdfF. E. Cellier, E. Kofman, Continuous System Simulation, Editore: Springer US, Anno edizione: 2006, ISBN: 978-1-4419-3863-3

Software utilizzato

Nessun software richiesto

Forme didattiche

Tipo Forma Didattica

Ore di attività svolte in aula

(hh:mm)

Ore di studio autonome

(hh:mm)

Lezione

32:30

48:45

Esercitazione

17:30

26:15

Laboratorio Informatico

0:00

0:00

Laboratorio Sperimentale

0:00

0:00

Laboratorio Di Progetto

0:00

0:00

Totale

50:00

75:00

Informazioni in lingua inglese a supporto dell'internazionalizzazione

Insegnamento erogato in lingua
Inglese

Disponibilità di materiale didattico/slides in lingua inglese

Disponibilità di libri di testo/bibliografia in lingua inglese

Possibilità di sostenere l'esame in lingua inglese

Disponibilità di supporto didattico in lingua inglese