Skip to content

2023.2

Release 2023.2 (version 2.9.8)🔗

This version was released on 2023-June-21 at impact.modelon.cloud . It will later be available for customers at on-premises and private cloud.

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:

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.

Model🔗

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

Create🔗

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 debugger and Interactive run🔗

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

Experiment🔗

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.

Solve🔗

Compilation🔗

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.

Connect🔗

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 Library🔗

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 & Deploy🔗

App-mode for Deployment users🔗

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.

Share workspace configuration🔗

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.

Platform🔗

Distributed computing🔗

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.

Workspace management🔗

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

impact.modelon.cloud updates🔗

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

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

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

Notes on updates for Modelon Impact Desktop🔗

A new version will be available containing ONLY updates of the OPTIMICA Compiler Toolkit and libraries. Of the above, the following improvements are included:

  • Improved error messages
  • The optimization framework now supports the optimization of a model including a table. This has been enabled by support for external objects with strings in optimization. See release notes in the OPTIMICA Compiler Toolkit User Guide for further information.