Skip to content

2023.2 Release🔗

Update (version 2.21.1)
General availability: Modelon managed 2023-October-18

This update include following new functionality and improvements for Modelon managed:

Build: Model Builder🔗

Model Diagram View🔗

  • Several improvements for Dark Mode.
  • When you open a model, it may take a while for the experiments to load if the network connection is poor. Therefore Impact now shows a spinner during loading, also to avoid wrong states in Impact.

Parameter Dialog🔗

  • Modelica Types with Choices are now displayed as dropdowns to select a value from the list.

Analyze: Experiment Builder🔗

  • Steady-State simulation is now "always enabled". We have removed that user setting in order to enable more predefined experiments in our Libraries.
  • Duplicate read-only experiments as it is possible for writable experiments, to modify settings like “initializeFrom” for read-only example models.
  • Apply experiment settings of a read-only experiment to a new model (to same would not work, because the model is read-only too), in order to continue to work with the modified model.
  • Right sidebar -> Experiment settings: The number of output points (also known as ncp) and the interval settings must be compatible. Therefore, there is now a toggle to enter either points or interval. The values are converted into each other.
  • If you select ExplicitEuler as solver, you can now enter the step size next to it in the right sidebar (solver option h). Once this step size is set and you change the solver, it is simply ignored and not rejected by the compiler.
  • Initialization from the latest result for steady-state simulations, does now work without re-choosing results.
  • Execution-option is added in Experiment mode under Analysis tab.

Release 2023.2 (version 2.9.8)🔗

General availability: Modelon managed 2023-June-21 | Customer managed 2023-Aug-28

Welcome to the 2023.2 release of Modelon Impact. This release's focus has been on strengthening collaboration, deployment, and multi-execution capabilities.

Selected highlights:🔗

Build🔗

Analyze🔗

Collaborate🔗

Note, the workspace format has been redesigned to better support collaboration and distribution of custom content. An automatic conversion script will upgrade your workspaces to the new format, see the Workspace conversion guide for further information including how to upgrade to the latest version of Modelon Libraries. A summary of breaking changes are described here.

Build: Libraries🔗

The Modelon library suite has been improved and contains following highlights:

Aerospace🔗

  • Hydrogen storage tank – New tank model for sizing and dynamic simulation of hydrogen storage tanks
  • Propulsion and power

    • Moist air support for running tests in inclement weather conditions
    • Fuel cells for use in gas turbines are available
  • Fuel systems - Re-circulation examples for early fuel system design

  • Connecting Modelon libraries - Demonstrators of how to connect different libraries with each other

Automotive🔗

  • Air conditioning cycles

    • Hardening and robustness by mass conservation improvements
    • Automatic summation of refrigerant volumes and mass
    • Non-ideal sensors with various defects like bias, drift, noise
  • Electrified vehicles - Improved documentation and guides

Energy, Air conditioning and Refrigeration🔗

  • Air conditioning cycles - Improved fin-on-tube heat exchanger types
  • Fast and efficient simulations for refrigerant blends with lookup tables incl support to create refrigerant mixtures
  • Power plants - New coupled examples of Combined Cycle Power Plant and Carbon Capture & Storage
  • Microgrid - Improved usability for optimization, new component models for coupled heat and electricity systems
  • Fuel cells - Water transport through fuel cell membranes and nitrogen crossover

Build: Model Builder🔗

  • Facilitation of best Modeling practice - Modelon Impact no longer allows the creation of top-level classes except packages, because this is not recommended in Modelica. Note, Import/upload of top-level classes is still supported.
  • Prevent users from making mistakes - PLAY button is now only enabled if a class can be simulated. Examples of classes that can't be simulated are types, packages, partial models etc. See Modelica specification for further details.
  • Updates to support working efficiently with Projects
    • The package selector, in the "Create"/"Duplicate to"/"Extend" dialog shows now also Projects

Model Debug🔗

Improved run-time diagnostics🔗

Event information is now accessible in the log viewer. To enable it, set the dynamic_diagnostics simulation option to true. Since previously it is possible to see the number of events and now it is possible to see the source of those events.

Improved the log messages for triggered assert. The time of the event and the conditional expression that triggered the event is now included.

Improved error-messages🔗

There have been several improvements to create understandable and actionable error messages:

  • Improved error handling when out of disk space. The user is no longer prevented from starting the application and receives a user-friendly error in the UI.
  • Several compiler errors message improvements

Analyze: Built-in workflows🔗

It's now easier to distribute self-contained experiments with the following improvements.

Self-contained experiments🔗

Experiments store now all information, which is needed to reproduce a result (parameter modifications, solver, and compiler options). This simplifies sharing as the experiment execution is no longer dependent on local user settings. It makes it also easier to switch between experiments that require different execution settings such as dynamic and steady-state simulation.

Execution settings are available under the tab Execution in the Application settings dialog, which now shows the settings for the selected experiment.

Project-specific custom functions🔗

Custom functions can now be distributed within a Project and will then show up automatically in workspaces using that project. This avoids the manual step that was previously needed to install a custom function.

Note that there are now two ways to install a custom function, Global or through a Project. A custom function installed globally will show up in all workspaces.

Additional experiment improvements🔗

Experiments are now supported in encrypted libraries. This makes it possible to create and distribute experiments together with libraries (bundled as a project).

An additional improvement is that an experiment can be inherited from a parent class.

Analyze: Solver🔗

Distributed compute🔗

Access to larger machines on impact.modelon.cloud🔗

At impact.modelon.cloud, users who purchase productivity licensing will get access to more computing through a pre-configured machine profile selection page. This enables faster execution as a multi-experiment can be distributed and parallelized to significantly reduce the overall execution time

Learn more about distributed computing on impact.modelon.cloud and on-premises and private cloud here.

Faster execution of parallel simulations🔗

There have been performance improvements when distributing simulations on +20 cores.

Non-blocking execution of multi-execution experiments🔗

Users are allowed to run one interactive simulation in parallel to a multi-execution experiment in order to not be blocked from developing models. From the Impact UI, a user can continue to work and simulate by opening Impact in a new tab.

Modelica Compiler🔗

Selected compiler improvements:

  • Support for nominal value of continuous states that depend on the initial system
  • Support for the unbounded attribute for Real variables. If a model contains states with unbounded attributes, the relative tolerance will be set to 0 and the error will only be controlled by the absolute terms. See the Modelica specification for further details.

See release notes in OPTIMICA Compiler Toolkit (OCT) User Guide for further information.

Optimization🔗

The optimization framework now supports optimization of a model that uses a table. This has been enabled by support for external objects with strings and arrays in the constructor function. Note, a limitation is that only one external object of same type is allowed.

See release notes in OCT user manual for further information.

Collaborate: Integration Tools🔗

Add-in for Microsoft Excel🔗

Modelon Impact 2023.2 comes with a new add-in for Microsoft Excel that lets users set up, configure, and execute model experiments from Excel. This includes the setup of user-defined cases and executes batch simulations. Excel built-in support for post-processing can be used to visualize results including rapid requirements verification.

Note, this first version of Add-in for Excel supports running Dynamic simulations and showing result values at the end-time of the simulation.

Learn how to get started with the Add-in for Microsoft Excel here.

Python Client🔗

The Python client library has been improved and contains following improvements:

  1. Stream-lined authentication workflow in the Modelon Impact JupyterLab environment

  2. API to fetch all running/active executions

  3. API to fetch FMU model description xml

  4. API to fetch a workspace including project size

  5. Get experiments for a model

  6. Support to fetch only the last point for a result trajectory

  7. Added support to import a shared workspace

  8. Specify variable filter as a list of strings

  9. General documentation improvements:

    1. Information on Modelon Impact version requirements
    2. Extended examples on multi-simulation using different sampling methods
    3. A search extension has been added to allow users to search as they type in the documentation page.

Collaborate: Sharing Tools🔗

App Mode🔗

A Base or Pro user can now export a pre-configured model as App Mode to a Deployment user. This enables easy sharing of models to non-simulation experts that get access to a simplified experiment view.

Further improvements:

  • Simplified export of app-mode from the new share button. The latest result can be included in the export.
  • App Mode workspaces are visually separated from standard workspaces on Impact Home page
  • Simplified Impact Home page for deployment users, where a workspace can be imported but not created. Note, deployment users can only open Workspaces exported as App Mode

Learn more about App-mode here.

Workspace configuration sharing🔗

Share a link to a workspace configuration with a colleague from the Workspace configurator. The Workspace becomes accessible to the collaborator through the guided project(s) check-out/clone into your user space. Dependencies are automatically configured.

This functionality makes it easier to collaborate and help onboard new users. The link can e.g. be posted in a welcome mail to a new team member, on a wiki etc. It can also be used to create workspace templates.

Note - The link sharing is based on common access to repositories with version-controlled Projects. Projects need to be version controlled on git or svn servers (impact.modelon.cloud does NOT currently offer hosting of git/svn servers)

Introduction of Projects🔗

Projects have been introduced to support Share workspace configuration and to improve the experience of working with custom content (experiments, views, custom function etc).

The noticeable difference in the User-interface is that each Modelica package belongs to a Project, as indicated in the Project browser.

With a project, it's possible to reuse version controlled Modelica packages in multiple Workspaces. This also facilitates a collaboration setup where system engineers use a version-controlled library developed by another group (e.g. a component library developed by a central modelling team).

Projects can be downloaded from the Modelon Impact (Project browser) and uploaded (imported) from the Workspace Management project explorer.

Learn more about Project.

Improved version control support🔗

Following improvements make it easier to work with version control:

  • UI-support to upload a project to version control from the Workspace Management. This makes it possible to add a Modelica package created in Modelon Impact to version control.
  • Experiments, Views, and Favorites are now stored as single files, which makes them easier to maintain and reuse, and better suited for version control.

Workspace Configuration🔗

More user-friendly way of handling credentials🔗

The “master password” for handling version-controlled credentials has been replaced with a per- user generated encryption key replacing the password incl automatic unlock of the credentials store.

Note, this change means that you must re-enter your version control credentials the first time you log in to Workspace Management.

Automatically configured dependencies🔗

Dependencies are automatically detected and configured in the Workspace configurator. This makes it easier and faster to configure a workspace.

Import of encrypted Modelica libraries🔗

There is now UI support to import an encrypted library within the workspace configurator. This functionality can be used to import and use libraries that are not present in the Modelon Impact installation.

Note, a 100 MB size limit for upload exists in the UI.

Central place for workspace configuration🔗

All configuration of Libraries, Library versions, and Projects in a workspaces is now done through Workspace management.

  • Library version selection is done in the Workspace configuration tab of Workspace management by adding a library with the selected version to the Workspace. Note, selecting library version from Library bar is not supported anymore.

  • A cogwheel in the Project browser directs you to Workspace Management

Collaborate: Cloud Access🔗

Modelon managed🔗

Increased storage and memory🔗

The storage and memory have been increased:

  • From 16Gb to 32Gb storage per user
  • From 8Gb to 10Gb memory (default profile). Note, more memory is available with productivity licenses. This enables compiling and optimization of larger memory-intensive models.

Note, best practice is to use an output filter to avoid creating large result files.

Faster compilation🔗

As a result of the increased memory there is a performance gain for compilations.

JupyterLab user environment updates🔗

  1. JupyterLab environment upgraded to version 3.6.3
  2. Code server (VScode) upgraded to version 4.13.0
  3. Dash updated to version 2.10

Platform information🔗

Execution environment🔗

This release include following execution environment.

Execution environments v2023.2
Optimica Compiler Toolkit v1.44
   Modelica compliance v3.4 of Modelica Language specification1
   FMU compliance v2 (default) and v1
Operating system CentOS v7.4
Python environment v3.9
C compiler GCC v4 and glibc v2.17

1 See Optimica Compiler Toolkit User's guide for further information about Modelica compliance and limitations.

Libraries🔗

This release includes following library versions. Columns indicate the release when a version was made available.

Libraries 2023.2 2023.1 2022.2
AirConditioning 1.26.0 1.25.0 1.24
AircraftDynamics 1.9.0 1.8.0 1.7
Electrification 1.10.0 1.9.0 1.8
EngineDynamics 2.11.0 2.10.0 2.9
EnvironmentalControl 3.15.0 3.14.0 3.13
FuelCell 1.17.0 1.16.0 1.15
FuelSystem 5.4.0 5.3.0 5.2
HeatExchanger 2.11.0 2.10.0 2.9
Hydraulics 4.19.0 4.18.0 4.17
HydroPower 2.17.0 2.16.0 2.15
IndustryExamples 1.3.0 1.2.0 1.1
JetPropulsion 2.6.0 2.5.0 2.4
LiquidCooling 2.11.0 2.10.0 2.9
Modelon 4.3.0 4.2.0 4.1
Pneumatics 2.15.0 2.14.0 2.13
ThermalPower 1.26.0 1.25.0 1.24
ThermoFluidPro NA 1.25.0 1.24
VaporCycle 2.11.0 2.10.0 2.9
VehicleDynamics 4.3.0 4.2.0 4.1

Bug fixes🔗

There have been many bug fixes, below are a few highlighted ones.

  • The FMU OCT runtime log level is now coordinated with the experiment log level
  • Fixed a bug on Dark mode, where the canvas remains black when toggling the dark mode

Changes🔗

  • FMU import now only creates classes inside top-level packages. If the imported model is needed in a sub-level package, it can be moved manually.

Breaking Changes🔗

Modelon Impact 2023.2 comes with a completely new and cloud-native workspace concept, which affects the way data is stored. To support this, Modelon Impact and the Workspace Management app have been reworked behind the scenes.

The new Workspace concept separates Modelica library contents and Modelon Impact specific artifacts and introduces reusable Projects.

This enables enhanced collaboration between Modelon Impact users through Workspace configuration sharing, easier installation of Custom functions, and more version control-friendly format of Experiments, Views, and Favorites. For more information on this concept, see chapter Workspace.

Workspaces created in previous versions of Modelon Impact can be converted to the new format to continue working on them. They cannot be used in the previous version of Impact after conversion, but a backup is created to ensure no data is lost in the conversion process. See more information on conversion in the section Workspace conversion.

To support the new Workspace format, some Modelon Impact APIs for scripting users have changed. See details below.

Breaking changes to Modelon Impact APIs🔗

The following sections list all breaking changes to Modelon Impact public APIs.

Python Client🔗

The python client included in with the release on impact.modelon.cloud comes with the following breaking changes:

  1. The initialize_from method in SimpleExperimentExtension, SimpleFMUExperimentDefinition and SimpleModelicaExperimentDefinition are now renamed to with_initialize_from.
  2. The clone method in Workspace entity has been removed.
  3. The options argument is removed from the download method in Workspace entity.
  4. The env_names parameter for CredentialManager class now takes a list of environmental variable names instead of a string.
  5. The get_artifact method in Case entity method now returns a CustomArtifact class. It used to return a tuple containing the artifact and result name before.
  6. Any REST API version less than 4.0.0 is not supported.
  7. The upload_fmu method has been removed and the functionality is now available as import_fmu in the Model entity.
  8. The upload_model_library has been removed and the functionality is now available as import_modelica_library in the Project entity.
  9. The status method in all operations class inheriting BaseOperation class is now a property.

REST API🔗

  1. POST/clone and DELETE /workspaces api have been removed and the 'is_clone' key is removed from the GET /workpaces and GET /workpaces/ response.
  2. The PUT /workspaces/{workspace_id} has its functionality changed to update the workspace configuration. See api docs for new request body schema.
  3. The response schema for POST /api/uploads/results has been updated to contain only id and location dashboard key removed from workspace schema.
  4. The schema for POST /workspace-exports has changed.
  5. Removed POST /workspaces/{workspace}/exports and GET /workspaces/{workspace}/exports/{exportID} endpoints as we now have POST /workspace-exports.
  6. Migration boolean is removed from GET /workspace response.
  7. Renamed migration to conversion in API.
  8. Removed old workspace import. Note - This has been revived now with support for both zip and definition-based imports.
  9. Removed 'GET /libraries', GET and POST '/workspaces/{workspace}/libraries', GET and DELETE '/workspaces/{workspace}/libraries/{library}' and POST '/workspaces/{workspace}/libraries/{library}/models' end-points.
  10. Route for importing FMU has changed. New route is POST /projects/{project}/content/{content}/fmu-imports

Notes on updates for Modelon Impact Desktop🔗

General availability: Modelon Impact Desktop 2023-August-28

Modelon Impact Desktop is not longer being actively developed. The 2022.2 release was the last release that included new functionality of the user-interface. This version will only include updates of the OPTIMICA Compiler Toolkit and libraries.

We hope you like the new functionality and improvements and looking forward to your input!