Making a Dymola Release Update

New versions of Dymola are released by Dassault Systèmes twice a year, usually around the middle of April and the end of November. As a Modelica library developer and a Dassault Systèmes partner, here at Claytex we update to the latest version of Dymola every release. This means we’ve had a lot of experience of updating our 17 Modelica library products to work with the latest Dymola release. So, I’m going to run through some of the things we do to make this happen and ensure our libraries continue to work in the new software.

The November release is typically the more significant update, whereas the following April release is a. refresh with normally fewer updates. This is reflected in the naming of the releases, for example the release in November 2023 was called Dymola2024x and the following release in April 2024 was Dymola 2024x Refresh 1.

Dymola 2024x Refresh 1 with the VehicleDemos.Experiments.VehicleManoeuvres.DoubleLaneChangeTest model displayed.

Figure 1 – Dymola 2024x Refresh 1 with the VehicleDemos.Experiments.VehicleManoeuvres.DoubleLaneChangeTest model displayed

Time to Update

We send our customers a new release email shortly after Dassault Systèmes has made the new Dymola release available; providing the download links for Dymola and our library updates. Once you have the installer for the new release of Dymola, I suggest the following steps are taken.

1) Take a look at the release notes.

While not the most riveting read, the release notes will give you an idea of what to expect from the update. They are in the installer zip archive so you can read them before installing. Make sure to look at the software requirements to see if the compiler compatibly has changed.

2) Install the new Dymola.

For help with this see Installing Dymola on a Windows PC or Installing Dymola on Ubuntu for Linux novices.

3) Compare the advanced flags between the new and previous version of Dymola to see what has changed.

You can use the list() command to list the flags and their current settings, as shown in Figure 2. By using the clearFlags() command first, you will see the default setting for the flags. The list flags from both Dymola versions can be saved to text file for comparison; I use the comparison tool in our Subversion (SVN) client to do this. Changes in the flags may require changes in your models.

Using list() command to list flags and their settings in Dymola commands.

Figure 2 – Using list() command to list flags and their settings in Dymola commands

Additional information on flags can be found in this previous blog post, An Easier Way to Set Boolean Advanced Flags in Dymola.

4) Compare the inbuilt functions between the new and previous version of Dymola to see what has changed.

The listfunctions() command will list the inbuilt function in the commands log so that changes can be spotted and any model updates needed can be made.

5) Identify whether any of the libraries used in your models have changed version with this Dymola release.

Last year I wrote a blog post about understanding what library dependencies you have, What are Your Library’s Dependencies?, to help you identify what libraries you use.

The Dymola installer includes the option to install a number of Modelica libraries in the Dymola installation directory. Also library suppliers, like Claytex, will provide library updates to accompany a new Dymola release. So it is important to also install any related library updates you require. If you are installing libraries from Claytex we have some help with that here.

6) See if the new versions of your library dependencies have conversion scripts to be applied.

If you right-click on a library in the package browser and select Attributes, the dialog box below will be displayed. In the Version tab under Conversions, find the previous version number you were using in the From column and see if there is a conversion script for it.

Claytex library version attributes, highlighting the latest conversion script.

Figure 3 – Claytex library version attributes, highlighting the latest conversion script

7) Migrate your models or libraries to the new version of their dependencies in the new Dymola.

We have some detailed help to do this in our Migration to Newer Library Versions blog post.

If there is an update to the Modelica Standard Library (MSL), it may be worth considering updating the MSL version you use separately to the Dymola version to make it easier to know where any changes in your model behaviour are coming from. You may need to update the ModelicaVersion field in your libraries Scripts\libraryinfo.mos.

8) Test your models to see the effect of the Dymola update and any library changes.

Not only do you want to simulate all your experiments, but also compare the new results to those prior to these updates. We use our in-house regression test tool to do this as part of our library development process which I’ve written about here, Effective Modelica Library Development.

Comparison of old and new experiment results in the Claytex in-house regression test tool.

Figure 4 – Comparison of old and new experiment results in the Claytex in-house regression test tool.

We also have our MultiRun tool, developed from our in-house regression test tool, to perform parallel simulation of multiple Dymola experiment on a PC and allowing simplified form of localised regression testing.

Both Regression Test Tool and MultiRun tools are available to purchase from Claytex. Please get in touch for more information and pricing: sales@claytex.com

Ready for the Next Release

I hope this post will help you update your libraries when the next release of Dymola rolls around. When writing this blog post, the next release, Dymola 2025x, is due towards the end of 2024.

Written by: Hannah Hammond-Scott – Modelica Project Leader

Please get in touch if you have any questions or have got a topic in mind that you would like us to write about. You can submit your questions / topics via: Tech Blog Questions / Topic Suggestion.

CONTACT US

Got a question? Just fill in this form and send it to us and we'll get back to you shortly.

Sending

© Copyright 2010-2024 Claytex Services Ltd All Rights Reserved

Log in with your credentials

Forgot your details?