Release Notes for OpenModelica 1.17.0

Release Notes for OpenModelica 1.17.0

新しいフロントエンドはさらに改良され、すべての OpenModelica ツールのデフォルトとして選択されるようになりました。スクリプトで -d=newInst フラグを設定する必要がなくなりました。古いフロントエンドはもはやメンテナンスされておらず、OMEditで使用されているAPIインターフェイスについても順次置き換えられていきます。前の 1.16.5 リリースから 21 のチケットが修正されました。

バックエンドにおいて、特に初期化時の homotopy() に関するいくつかの問題が修正されました。コード生成に関するいくつかの改善、特にHelmholtzMediaライブラリのサポートを強化しました。

Windowsで使用されているMSYS環境が最新のバージョンに更新され、いくつかの利点があります。

Windowsでは,生成されたCコードのコンパイルにgccではなくclangがデフォルトで使用されるようになり,WindowsでのCのコンパイル時間が大幅に短縮されました。 静的リンクの代わりに動的リンクが使用され、Windowsでの全体的なコンパイル時間がさらに短縮されました。 QTライブラリの最新バージョンが使用され,OMEditの機能のレンダリングに関するいくつかの問題が解決されました. Sundialsソルバーと基本的な線形代数ライブラリKLUが最新のものにアップグレードされ、実行時のパフォーマンスとルーバスト性が向上しました。

Modelica Standard Library(MSL)の対応バージョン

OpenModelicaは現在メンテナンスされているバージョンのModelica Standard Library、MSL 3.2.3とMSL 4.0.0の両方をサポートするようになりました。 これにより、どちらのバージョンのMSLを使用しているModelicaライブラリを使用したり、新しいライブラリを作成したりすることが可能になります。既存のライブラリをMSL 3.2.3からMSL 4.0.0に自動変換する機能は、現在はまだ提供されていませんが、バージョン1.18.0で提供される予定です。

MSL 4.0.0の同期機能はまだ完全にはサポートされていませんので、このバージョンのツールに依存しないことをお勧めします。バージョン1.18.0ではより良いサポートが予定されています。

Graphic Editor OMEdit

バージョン1.17.0では、OMEditの操作性が大幅に改善されました。特にWindows版では、gccの代わりにclangを使用し、シミュレーション実行ファイルのスタティックリンクの代わりにダイナミックリンクを使用することで、コンパイル時間が大幅に短縮されました。

採用されているQTグラフィックス・ライブラリーのアップグレードにより、グラフィカル・ユーザー・インターフェースを悩ませていたいくつかの問題が解決されました。

再宣言されたクラスのパラメータはまだGUIから変更できないため、テキストモードに切り替える必要がありますが、置換可能なクラスは引き続きOMEditでグラフィカルにサポートされています。また、モデル図をレンダリングするためにOMEditから呼び出されるAPI関数の一部に新しいフロントエンドを使用することができ、GUIの応答がより速くなりました。なお、これらの機能は現在オプションとなっており、「ツール」→「オプション」→「一般」→「置き換え可能なサポートを有効にする」および「OMC APIで新しいフロントエンドを使用する(GUIの応答を速くする)」を設定して有効にする必要があります。これらの設定は、バージョンアップしても以前のインストールから引き継がれます。

OMEditで複数のウィンドウを切り替えたときに、保存されていないコードが失われることがありましたが、本リリースではこの問題はなくなりました。また、GUIが時々クラッシュする問題も修正されました。

OMEditは、Modelica Standard Libraryの現在のメンテナンスされているバージョン、MSL 3.2.3とMSL 4.0.0の両方を使用できるようになりました。MSL 4.0.0のModelica.Clockedパッケージはまだ完全に信頼できる方法で処理されていませんが、他のほとんどのモデルは2つのバージョンで同様に動作します。

MSL 3.2.3を自動的にロードするが、MSL 4.0.0を必要とするライブラリは使用しない、MSL 4.0.0を自動的にロードするが、MSL 3.2.3を必要とするライブラリは使用しない、OMEditの起動時にどのバージョンのライブラリもロードせず、uses()アノテーションにより、モデルやライブラリを開いたときに正しいものをロードするようにツールに任せる。後者のオプションでは、どちらのバージョンのMSLも使用している異なるプロジェクトを、もちろん1つずつ問題なく扱うことができます。この選択は、後で「ツール|オプション|ライブラリ」メニューを開き、自動的にロードされるシステム・ライブラリにModelicaライブラリを追加または削除したり、ロードされる特定のバージョンを変更することで変更できます。

MSL 3.2.3からMSL 4.0.0に既存のライブラリをアップグレードするための変換スクリプトを含む、GUIからのパッケージマネージャの適切なサポートは、バージョン1.18.0で予定されています。

バージョン1.17.0のOMEditでは、GUIの使い勝手を向上させるために16のバグフィックスを行いました。

Direct support of macOS discontinued from 1.17.0

バージョン1.16.xまで、OpenModelicaはWindows、Linux、およびmacOS上で構築されていました。ツールのコア機能はLinuxで実装されており、WindowsにはMinGW環境を用いて、macOSにはmacports環境を用いて移植されています。

残念ながら、OpenModelicaが依存している多くのライブラリがmacportsでは定期的に更新されていないため、Macのビルドが1日おきに壊れるという事態が発生していました。私たちの限られたリソースでは、必要なmacportsのメンテナンスを負担することができないため、残念ながらOpenModelica for macOSのビルドの提供を中止することを決定しました。なお、LinuxにインストールしたOpenModelicaを仮想マシンで動作させることにより、Mac上でOpenModelicaを動作させることは可能ですので、Mac用ダウンロードページの説明をご参照ください。私たちはmacOS上でOpenModelicaをソースからビルドできるようにするための努力を続けています。最新の更新情報や、この努力に貢献したい方はチケット#6306をご確認ください。最新の情報はチケット#6306をご覧ください。

FMI Support

FMI 2.0のエクスポートとOMSimulatorによるFMIシミュレーションがさらに改善されました。

Other things

OMSimulatorがpypiに統合され、pip経由でインストールできるようになりました。

EmphysisプロジェクトとeFMIの継続的な標準化活動の成果として、Flat Modelicaコードエクスポート機能のプロトタイプが利用可能になりました。この機能は、-fコンパイルフラグで有効にすることができます。

Modelicaパッケージ・マネージャーは、本リリースではまだコマンドラインからしか利用できません。1.18.0のリリースでは、変換スクリプトとともに、OMEditのGUIに統合する予定です。