Library Bar

General Information about the Library Bar

By default the comment is displayed as the label of the individual entries in the tree view. This comment is displayed for the SimulationX libraries in the selected language (German or English). For the elements of the Modelica Standard Library in contrast the name of the type is displayed instead of the comment. You can change the display of the symbols and the behavior when double-clicking on them in the properties of the Library Bar.

Figure 1: Settings of the Library Bar

In the toolbar of the library bar there is an input field for the search for element types. After the button "Search" has been pushed the program starts searching the tree view for the input character string starting with the currently selected element type. In the search both the name and the comment of the types are included. When the search has been successful the found entry is selected. By pushing the Search button again the search can continue. By pressing the filter button, the view of the library bar can be adjusted by sorting or filtering. The icons of the element types in the tree view can be highlighted specifically by an additional marking.

Storing the element type as a file The element type is stored as a file. Further types contained in this type are also stored in this file. The corresponding file name is found in the preview window at the bottom of the library bar.
Storing of a group or package as a directory The package or the group is stored as a file in a separate directory. The types declared within this package can be stored in separate files or within the actual file. Packages which are contained within this package can also be stored as a directory.
Coded element type or group The element type is coded and can only be edited after the correct password has been entered. Different Modelica tools use different coding methods in general.
Blocked element type or Modelica class The element type or Modelica class is opened in TypeDesigner or the diagram view. Further editing is only possible after TypeDesigner or the respective diagram view has been closed.

Context Menu

The following commands are available via a context menu for the selected entry of the tree view. The icons given at the edge inform to which element types the respective command can be applied on principle. The applicability of a command can depend on further conditions which will be mentioned specifically in the text.

New... Use this command to create a new type of the specified Modelica class. The commands "Model", "Connector", "Block", "Function" and "Package" are available to create user-defined types. The newly created type is opened for editing in TypeDesigner. Name and comment and, if required, the respective target directory have to be input in a dialog field for a newly created group. This can be edited like a Modelica package in TypeDesigner later.
Delete Use this command to delete the selected type including the types contained in it. Note that the file or the directory where the respective type is stored will also be deleted then. A corresponding warning has to be confirmed prior to the deletion. If the type is to be removed from the tree view only temporarily, the command "Unload" can be used.
Duplicate This function creates a copy of the selected type. In the following dialog is type-name and target package of the copy can be specified. If the destination is the same package is assigned to another name.
Open Select this command to edit the model of the selected type in the TypeDesigner, diagram view, text view, 3D view or to open the documentation view. As long as the diagram view is open the respective type remains blocked for further editing. Modelica Standard Library types can be opened but not stored. Note the reference in the Modelica section of "Result Analysis, Documentation and Settings".
New Version Use this command to create a new version of the selected type. The newly created version substitutes the basic type in the library view. The basic version remains available though. Models which use a type for which several versions are available use the respective current version by default. However use of a certain version can also be demanded. The consistent use of versions can help in ensuring the reproducibility of computation results because models can be developed in this way which remains unaffected from later changes to the basic types.
New Derivative With this command you can create a derivative of the selected type. Derivatives permit the extension of existing element types by, for instance, an additional connector or parameter. However you cannot change the behavior of the element fundamentally with a derivation.
Reload Use this command to load anew a group of element types starting with the selected type. This can be necessary if you have modified a mo-file outside SimulationX and want to apply these changes in SimulationX. Note that all opened models must be closed before you execute this command. Model changes can be stored in this process.
Unload To save storage space or to reduce the size of the library bar you can unload individual types or groups of types. In contrast to deletion files or directories will not be deleted in this process. The respective types will be available again upon restart or execution of the command "Reload". Note that all opened models must be closed before you execute this command. Model changes can be stored in this process.
SVN Update Use this command to update your local copy of a particular package or type (see next section). 
SVN Commit Use this command to submit all changes made to the package or type to the repository (see next section). 
TortoiseSVN This context menu holds additional options for version management. See next section for more details.
Expand/Collapse Use this command to expand or collapse the tree view for the selected entry.
Samples This command initiates a search for examples in the Sample Browser containing the selected type.
Help Use this command to open the Help for the selected type. Alternatively, press F1.
Drag and Drop Element types can be copied or shifted within the library bar and in the tree view of the model explorer by drag and drop. Types of the Modelica Standard Library cannot be shifted. Protected types are excluded from drag-and-drop operations as a matter of principle. To copy or shift such a type you have to remove the password protection in TypeDesigner first.
The shifting of element types can cause models which use these types to be no longer loadable. Therefore you should use this option only in rare cases.

At the bottom of the library bar a preview picture and some useful information regarding the entry which you selected in the tree view are displayed in a small separate window area. Via a hyperlink the directory which contains the file belonging to the respective type can be opened in Windows Explorer.

Tree View Elements

The library bar (2) serves for selection, management and editing of element types. Logically related element types are combined in groups which are structured hierarchically and displayed in a tree view similar to the folder view in Windows Explorer. The folders contained in the library bar can be subdivided into the following groups:


The favorites bar can extend the library bar or even replace it if configured accordingly. The folder "Favorites" which used to be part of the library bar in SimulationX up to version 3.7 has been moved to the new favorites bar. Favorites can be set as usual by dragging and dropping individual types or entire packages. The favorites bar can be enabled or disabled from the View menu.

You can store links to frequently used element types or libraries under Favorites by drag and drop. Creating new groups permits the creation of a customized folder structure independently of the actual name hierarchy of the contained element types. The contents of the Favorites folder are stored individually for every user in the file in the directory for the user data of the user (e.g. C:\Users\<user>\AppData\Roaming\ESI Group\SimulationX 4.3).

SimulationX Libraries

All libraries and element types licensed and contained in the SimulationX scope of delivery are shown in these folders. The element types contained here can neither be changed nor deleted. You can transfer the properties of an element type to a new element type though by creating a derivative of the existing type (see "Extension of Types"). The new element which has been created in this way can be edited in TypeDesigner. If a certain SimulationX library is not required it can be excluded from automatic loading at the program start.

How to exclude a library from the automatic loading at the program start
  1. In the menu "File" click "Options".

  2. In the dialog field "Options" select the tab "Libraries & Add-ons".

  3. Remove the selection mark for the library which you want to exclude from the automatic loading at the program start.

Modelica Standard Library

You will find the contents of the Modelica Standard Library in this folder. The Modelica types contained there can be opened in TypeDesigner and here you can check the contained components and the Modelica source code. However you cannot change or delete the element types.

For installation hints refer to section "Installation" of the Modelica Standard Library.

Other Modelica libraries

In this folder you will find the contents of other libraries installed under the Modelica search path. The Combustion Engines (detailed) (e.g. Combustion Engines, synchronizer) belongs also to  this category. The groups and element types contained in this folder can be renamed, moved by drag and drop or copied, edited in TypeDesigner or even deleted. You can expand the libraries by new types. You create a new Modelica library by highlighting the root entry "SimulationX" in the tree view of the library bar and add "Package" as a new Modelica class via the selection box in the toolbar or the context menu. The TypeDesigner is opened automatically for further editing of the package. The created package can be extended by new Modelica classes in the same way.

Loaded SimulationX models

The library bar also holds loaded SimulationX models (*.ism) and projects (*.isx). This makes handling models inclduing the referenced libraries, local classes/types and external data much easier:
  • SimulationX loads models and projects in their individual (isolated) namespaces. This prevents a type A in a Model1 from being instantiated, while also referenced in another model (e.g. Model2.A).
  • Loading SimulationX projects that include embedded libraries does not require libraries with of same name to be unloaded when they have already been loaded globally. So in principle, each project can work with its own embedded version of this library.
  • Edit, delete or insert types within an embedded library.
  • The namespace isolation described above hides the original, globally loaded version of the library from the model. Types from this global library cannot be used in the model. In cases where this is required, the model must be loaded without the embedded types (deselect them in the list).
  • The Library Bar also displays local types, i.e. types within the model. The same commands as in the Model Explorer (Types) apply to these types.

User-defined types

New groups, element types or other Modelica classes are created by first selecting in the tree view of the library bar the group which is to contain the newly to be created type. The desired type can be added via the context menu then. For further editing the TypeDesigner is opened (see section "TypeDesigner") or, in the case of a newly created group, a corresponding dialog field is displayed.

Output Area

The output area logs messages, tracing outputs, warnings and error messages. These messages are allocated to different categories (e.g. simulation, file). The content of the output area can be stored, exported in text format and printed. For more information, see the section on "Tracing".

Figure 2: Output area

Model Explorer

The tree view of the model explorer represents all components and types used in the model. use the filter button to filter the entries of the Model Explorer. Settings are stored and are available after a restart of SimulationX again. For a selected element (e.g. "Mass1") or a connection the parameters and result variables are listed in tabular form. If no model elements have been marked, the general parameters and result variables of the model will be displayed.

Figure 3: Model Explorer: (1) Components, (2) Parameters Table, (3) Results Table, (4) Types

The Model Explorer windows can be arranged freely within the SimulationX workspace. You can also hide views that are not needed. The tree views, just like the library bars, come with options for sorting and filtering. Use this feature to hide entries that you do not need.

Component Properties

Select the component (element or connection) which you want to edit, either in the diagram view or in the tree view of the model explorer. A component, selected in the diagram view, is selected also in the tree view of the model explorer and vice versa. For the selected component the related parameters and result variables are shown in two tables. To edit an entry you click on the desired table field. Now you can edit the contents of the field or choose an entry from the corresponding selection list. As long as the field is edited, the corresponding parameter is not updated. The transfer of the new value to the parameter takes place only after completion and validation of the input. For the completion of the input there are the following possibilities:

  • Change to another row using the cursor keys and res. a mouse click on the new field
  • Press the Return key
  • Change the focus to another window, e.g. by a click to the diagram view.

Modifications can be undone using the command "Undo" in the menu "Edit". By clicking on the header of the parameter or result variable table with the right mouse button, you can select the columns to be displayed by ticking them accordingly. These are the following for parameter tables and result variable tables:

All columns can be shown with ascending/descending sorting order. To this end click on the corresponding column header and the sorting will proceed. ( ascending; descending). To toggle the protocol attribute of a result variable click on the corresponding symbol in the protocol column. Drag and drop can move activated protocol symbols into the diagram view or an already opened result window. For this click on the protocol symbol and move it to the desired place, while keeping the button pressed. When releasing the button, the result protocol is shown either in a new or in an existing result window.

The current value of a result variable cannot be changed. However, the unit of measurement, in which the variable should be shown, can be changed.

Parameters and Result Variables

A parameter or a result variable can be added to the current model or to a user-defined element type as follows:

  1. Select the model or an element type defined in the model in the tree view of the model explorer.

  2. Open the context menu in the corresponding table of the model explorer, using the right mouse button.

  3. Choose the item "New". The new variable or parameter will be shown in the table.

  4. Name and comment of the new variable or parameter can be edited directly in the table.

A parameter or a result variable can be removed from the current model or from a user-defined element type as follows:

  1. Select the model or an element type defined in the model in the tree view of the model explorer.

  2. Select the desired parameter or variable in the corresponding table.

  3. Perform the command "Delete" from the context menu. The parameter or the variable will be removed from the table and the model. You can only remove parameters or variables, which you have added beforehand.

Note: You can also use the TypeDesigner to add or to remove parameters or variables.

Result Window Manager

The Result window manager (8) facilitates the central management of the result windows of all opened models. Result windows can be hidden or displayed with a click on the respective icon or closed by actuation of the respective button on the icon bar.

The buttons are described in chapter Managing result windows. By ticking/unticking in the list of the result windows you can display/hide individual result windows.