Difference between revisions of "OpenModelica/C2/Overview-of-OpenModelica/English"

From Script | Spoken-Tutorial
Jump to: navigation, search
 
(3 intermediate revisions by the same user not shown)
Line 9: Line 9:
 
|| '''Slide Number 2'''
 
|| '''Slide Number 2'''
 
'''Learning Objectives'''
 
'''Learning Objectives'''
| | In this tutorial, we will learn about:
+
| | In this tutorial, we will learn:
 
* About '''OpenModelica
 
* About '''OpenModelica
 
* '''Modeling '''&''' Simulation
 
* '''Modeling '''&''' Simulation
Line 27: Line 27:
  
 
'''What is OpenModelica'''
 
'''What is OpenModelica'''
|| What is OpenModelica?
+
|| What is '''OpenModelica'''?
  
 
'''OpenModelica''' is
 
'''OpenModelica''' is
Line 35: Line 35:
  
 
|-
 
|-
| | '''Slide Number 6 '''
+
| | '''Slide Number 5 '''
  
  
Line 46: Line 46:
  
 
|-
 
|-
| | '''Slide Number 4'''
+
| | '''Slide Number 6'''
 
'''What is Modeling?'''
 
'''What is Modeling?'''
 
|| What is '''Modeling'''?
 
|| What is '''Modeling'''?
  
Translating the actual process behaviour into mathematical expressions is called '''Modeling'''
+
Translating the actual process behaviour into mathematical expressions is called '''Modeling'''.
 
|-
 
|-
|| '''Slide Number 5'''
+
|| '''Slide Number 7'''
 
'''What is Simulation?'''
 
'''What is Simulation?'''
 
|| What is '''Simulation'''?
 
|| What is '''Simulation'''?
Line 58: Line 58:
 
'''Simulation''' uses a model to study the behaviour and performance of an actual or theoretical system.
 
'''Simulation''' uses a model to study the behaviour and performance of an actual or theoretical system.
  
* It allows evaluation of a '''model to optimize the system performance
+
* It allows evaluation of a model to optimize the system performance
* And makes predictions about a real system.
+
* And makes predictions about a real system
 
|-
 
|-
| | '''Slide Number 7'''
+
| | '''Slide Number 8'''
  
  
Line 73: Line 73:
 
Few of the important subsystems are:  
 
Few of the important subsystems are:  
 
|-
 
|-
| | '''Slide Number 8'''
+
| | '''Slide Number 9'''
  
 
'''OMNotebook DrModelica model editor'''
 
'''OMNotebook DrModelica model editor'''
Line 90: Line 90:
 
This is a '''graphical connection editor''', for '''component '''based '''model '''design.
 
This is a '''graphical connection editor''', for '''component '''based '''model '''design.
 
|-
 
|-
|| '''Slide Number 9'''
+
|| '''Slide Number 10'''
  
  
Line 106: Line 106:
 
'''OMShell''':  
 
'''OMShell''':  
  
It is an '''interactive command line session handler '''for '''Modelica scripting'''.
+
It is an interactive command line session handler for Modelica scripting.
 
+
  
 
|-
 
|-
Line 115: Line 114:
 
| | Point to the menus.
 
| | Point to the menus.
 
| | You can see a lot of menus and exciting capabilities in '''OMEdit.
 
| | You can see a lot of menus and exciting capabilities in '''OMEdit.
 
  
 
All of these will be explained in detail later in this series.
 
All of these will be explained in detail later in this series.
Line 125: Line 123:
 
| | Let me point out some advantages of '''OpenModelica.'''
 
| | Let me point out some advantages of '''OpenModelica.'''
 
|-
 
|-
| | '''Slide Number 8'''
+
| | '''Slide Number 11'''
  
  
Line 151: Line 149:
  
 
Here we will learn about:
 
Here we will learn about:
* Different tools and icons in the '''OMEdit '''window
+
* Different tools and icons in the '''OMEdit''' window
* How to open a '''class '''from the '''Libraries Browser''
+
* How to open a '''class''' from the '''Libraries Browser'''
 
* Use of '''Simulate''' & '''Re-simulate''' button
 
* Use of '''Simulate''' & '''Re-simulate''' button
 
|-
 
|-
Line 174: Line 172:
 
|-
 
|-
 
| | Play ST for 10 secs
 
| | Play ST for 10 secs
| | Here is a glimpse of this tutorial.
+
| | Here is the glimpse of this tutorial.
 
|-
 
|-
 
| | '''Developing an equation based model''' slide
 
| | '''Developing an equation based model''' slide
Line 187: Line 185:
 
| | The next tutorial is '''Control flow and Event handling.'''
 
| | The next tutorial is '''Control flow and Event handling.'''
  
This tutorial demonstrates how to  
+
This tutorial demonstrates how to-
 
* Use '''if-else statement'''
 
* Use '''if-else statement'''
 
* '''when statement '''
 
* '''when statement '''
Line 199: Line 197:
 
| | Next comes '''Functions and Types.'''
 
| | Next comes '''Functions and Types.'''
  
This tutorial demonstrates how to  
+
This tutorial demonstrates how to-
 
* Define a '''function '''and
 
* Define a '''function '''and
 
* Type and use an '''algorithm'''
 
* Type and use an '''algorithm'''
Line 213: Line 211:
 
* Declare '''array variables'''
 
* Declare '''array variables'''
 
* Construct '''arrays'''
 
* Construct '''arrays'''
* Use '''for '''and '''while loops '''and use '''OMShell'''
+
* Use '''for '''and '''while loops '''and  
 +
* use '''OMShell'''
 
|-
 
|-
 
| | Play ST for 10 secs
 
| | Play ST for 10 secs
Line 232: Line 231:
 
| | The next tutorial is '''Modelica Packages.'''
 
| | The next tutorial is '''Modelica Packages.'''
  
This tutorial demonstrates how to
+
This tutorial demonstrates how to-
 
* Create a '''package'''
 
* Create a '''package'''
 
* Import a '''package'''
 
* Import a '''package'''
Line 242: Line 241:
 
| | The next tutorial is '''Annotations in Modelica.'''
 
| | The next tutorial is '''Annotations in Modelica.'''
  
This tutorial demonstrates how to  
+
This tutorial demonstrates how to-
 
* Specify an '''annotation'''
 
* Specify an '''annotation'''
 
* Define a '''record'''
 
* Define a '''record'''
Line 281: Line 280:
 
|-
 
|-
 
| |  
 
| |  
| | In the future, we could add more tutorials in the Intermediate and Advanced levels of this series.
+
| | In the future, we could add more tutorials in the '''Intermediate''' and '''Advanced''' levels of this series.
 
|-
 
|-
| | '''Slide Number 10'''
+
| | '''Slide Number 12'''
 
'''Summary'''
 
'''Summary'''
 
| | Let us summarize now.
 
| | Let us summarize now.
  
In this tutorial, we have learnt about,
+
In this tutorial, we have learnt:
  
 
* About '''OpenModelica'''
 
* About '''OpenModelica'''
Line 295: Line 294:
 
* Content available in various tutorials under this series
 
* Content available in various tutorials under this series
 
|-
 
|-
| | '''Slide Number 12'''
+
| | '''Slide Number 13'''
 
'''About the Spoken Tutorial Project'''
 
'''About the Spoken Tutorial Project'''
| | Watch the video available at following link.
+
| | Watch the video available at the following link.
  
 
http://spoken-tutorial.org/  
 
http://spoken-tutorial.org/  
Line 306: Line 305:
 
'''Spoken Tutorial Workshops'''
 
'''Spoken Tutorial Workshops'''
 
| | The Spoken Tutorial Project Team
 
| | The Spoken Tutorial Project Team
* Conducts workshops using spoken tutorials
+
* Conducts workshops and
* Gives certificates to those who pass an online test
+
* Gives certificates
* For more details, please write to '''contact@spoken-tutorial.org'''
+
* For more details, please write to us
 
|-
 
|-
 
| | '''Slide Number 15'''
 
| | '''Slide Number 15'''
Line 316: Line 315:
  
 
Please visit this site.
 
Please visit this site.
 
  
 
Choose the minute and second where you have the question.
 
Choose the minute and second where you have the question.
Line 334: Line 332:
 
This will help reduce the clutter.
 
This will help reduce the clutter.
  
With less clutter, we can use this discussions as instructional material.
+
With less clutter, we can use this discussion as instructional material.
 
|-
 
|-
 
| | '''Slide Number 17'''
 
| | '''Slide Number 17'''
Line 359: Line 357:
 
'''Thanks'''
 
'''Thanks'''
 
| | This tutorial is contributed by Kaushik Datta and Priyam Nayak.
 
| | This tutorial is contributed by Kaushik Datta and Priyam Nayak.
 
  
 
Thanks for joining.
 
Thanks for joining.
 
|-
 
|-
 
|}
 
|}

Latest revision as of 15:05, 14 August 2018

Visual Cue Narration
Slide Number 1 Welcome to the Spoken Tutorial on Overview of OpenModelica.
Slide Number 2

Learning Objectives

In this tutorial, we will learn:
  • About OpenModelica
  • Modeling & Simulation
  • Subsystems of OpenModelica Environment
  • Features of OpenModelica
  • Content available in various tutorials under this series
Slide Number 3

System Requirements

To record this tutorial, I am using
  • OpenModelica version 1.12.0 and
  • Ubuntu Linux OS 16.04
Slide Number 4

What is OpenModelica

What is OpenModelica?

OpenModelica is

  • An open-source modeling and simulation environment
  • Object-oriented, multi-domain modeling language for complex systems
  • Intended for both industrial and academic purposes
Slide Number 5


Commercial modeling and simulation tool

There are many commercial modeling and simulation tools like:
  • Dymola
  • COMSOL Multiphysics
  • Simulink
Slide Number 6

What is Modeling?

What is Modeling?

Translating the actual process behaviour into mathematical expressions is called Modeling.

Slide Number 7

What is Simulation?

What is Simulation?

Simulation uses a model to study the behaviour and performance of an actual or theoretical system.

  • It allows evaluation of a model to optimize the system performance
  • And makes predictions about a real system
Slide Number 8


Subsystems of OpenModelica Environment


OpenModelica has a number of subsystems integrated in its environment.


Few of the important subsystems are:

Slide Number 9

OMNotebook DrModelica model editor


OpenModelica Connection Editor (OMEdit)

OMNotebook:

It provides a lightweight notebook editor, compared to the more advanced Mathematica extension.


OMEdit:

This is a graphical connection editor, for component based model design.

Slide Number 10


OpenModelica Optimization Editor (OMOptim)


OpenModelica Shell (OMShell)

OMOptim:

It extends the capabilities of OpenModelica towards design optimization.


OMShell:

It is an interactive command line session handler for Modelica scripting.

Cursor on the interface. I have already opened the OMEdit window here.
Point to the menus. You can see a lot of menus and exciting capabilities in OMEdit.

All of these will be explained in detail later in this series.

Now I will go the slides.
Let me point out some advantages of OpenModelica.
Slide Number 11


Features of OpenModelica

It is completely free of cost and free to use and distribute.

It has excellent solvers.

It is an equation oriented environment.

It has brilliant capability to solve Ordinary Differential Equations.

Users can create their own models using OpenModelica.
ST Slide Now, we will briefly go through the individual tutorials in this series.

I have opened all these tutorials on separate tabs in my browser window.

Let’s go through them one by one.

Introduction to OMEdit slide We will begin with the first tutorial Introduction to OMEdit.

Here we will learn about:

  • Different tools and icons in the OMEdit window
  • How to open a class from the Libraries Browser
  • Use of Simulate & Re-simulate button
Play ST for 10 secs Let me play this tutorial
Examples through OMEdit slide The next tutorial is Examples through OMEdit.

This tutorial demonstrates how to simulate existing Modelica library examples.

Play ST for 10 secs Let us listen to it.
OpenModelica Connectors slide The next tutorial is OpenModelica Connectors.

This tutorial will explain how to-

  • Drag and drop different classes
  • Connect them to build a system
Play ST for 10 secs Here is the glimpse of this tutorial.
Developing an equation based model slide The next tutorial is Developing an equation based model

This tutorial demonstrate on how to create a textual model in OMEdit and simulate it.

Play ST for 10 secs Let me play this tutorial.
Control flow and Event handling slide The next tutorial is Control flow and Event handling.

This tutorial demonstrates how to-

  • Use if-else statement
  • when statement
  • Handle time & state events.
Play ST for 10 secs Let us listen to it.
Functions and Types slide Next comes Functions and Types.

This tutorial demonstrates how to-

  • Define a function and
  • Type and use an algorithm
Play ST for 10 secs Here is a glimpse of this tutorial.
Arrays in Modelica slide After this comes Arrays in Modelica.

This tutorial will explain how to-

  • Declare array variables
  • Construct arrays
  • Use for and while loops and
  • use OMShell
Play ST for 10 secs Let us play this tutorial.
Array Functions and Operations slide The next tutorial is Array Functions and Operations.

This tutorial will explain how to-

  • Use array construction functions
  • Array conversion functions
  • Perform arithmetic operations on vectors and matrices.
Play ST for 10 secs Let us listen to it.
Modelica Packages slide The next tutorial is Modelica Packages.

This tutorial demonstrates how to-

  • Create a package
  • Import a package
Play ST for 10 secs Here is a glimpse of this tutorial.
Annotations in Modelica slide The next tutorial is Annotations in Modelica.

This tutorial demonstrates how to-

  • Specify an annotation
  • Define a record
Play ST for 10 secs Let me play this for you.
Icon and Diagram Views slide After this comes Icon and Diagram Views.

This tutorial will explain how to-

  • Specify icon and diagram views
  • Insert shapes in icon and diagram view
Play ST for 10 secs Let us listen to it.
Component oriented modeling slide The next tutorial is Component oriented modeling.

This tutorial will explain how to-

  • Instantiate a model
  • Define connector classes
Play ST for 10 secs Here is a glimpse of this tutorial.
Block component modeling slide Lastly we have Block component modeling.

This tutorial will explain how to-

  • Use MISO block
  • Instantiate functions
Play ST for 10 secs Let us listen to it.
In the future, we could add more tutorials in the Intermediate and Advanced levels of this series.
Slide Number 12

Summary

Let us summarize now.

In this tutorial, we have learnt:

  • About OpenModelica
  • Modeling and Simulation
  • Subsystems of OpenModelica environment
  • Features of OpenModelica
  • Content available in various tutorials under this series
Slide Number 13

About the Spoken Tutorial Project

Watch the video available at the following link.

http://spoken-tutorial.org/

It summarizes the Spoken Tutorial project.

Slide Number 14

Spoken Tutorial Workshops

The Spoken Tutorial Project Team
  • Conducts workshops and
  • Gives certificates
  • For more details, please write to us
Slide Number 15

Forum slide

Do you have questions in this Spoken Tutorial?

Please visit this site.

Choose the minute and second where you have the question.

Explain your question briefly.

Someone from the FOSSEE team will answer them.

Slide Number 16

Forum for specific questions:


The Spoken Tutorial forum is for specific questions on this tutorial.

Please do not post unrelated and general questions on them.

This will help reduce the clutter.

With less clutter, we can use this discussion as instructional material.

Slide Number 17

Textbook Companion Project

The FOSSEE team coordinates coding of solved examples of popular books.

We give honorarium and certificates for those who do this.

For more details, please visit this site.

Slide Number 18

Lab Migration Project

The FOSSEE team helps migrate commercial simulator labs to OpenModelica.

We give honorarium and certificates for those who do this.

For more details, please visit this site.

Slide Number 19

Acknowledgements

Spoken Tutorial and FOSSEE projects are funded by NMEICT, MHRD, Government of India.
Slide Number 20

Thanks

This tutorial is contributed by Kaushik Datta and Priyam Nayak.

Thanks for joining.

Contributors and Content Editors

Kaushik Datta