OpenModelica

OpenModelica
開発者オープンソースModelicaコンソーシアム(OSMC)
安定版リリース
1.22.2 / 2024年2月21日 ( 2024-02-21 )
言語CC++MetaModelica
オペレーティングシステムLinuxWindowsOS X
タイプ動的シミュレーションと最適化
ライセンスOSMCパブリックライセンス、EPLGPLフリーソフトウェア
ウェブ www.openmodelica.org
リポジトリgithub .com /OpenModelica /OpenModelica

OpenModelica [ 1 ] [ 2 ]は、複雑な動的システムのモデリング、シミュレーション、最適化、解析のためのModelicaモデリング言語をベースにした、無料オープンソース環境です。このソフトウェアは、非営利・非政府組織であるOpen Source Modelica Consortium [ 3 ]によって積極的に開発されています。Open Source Modelica Consortiumは、RISE SICS East ABのプロジェクトとして、リンショーピング大学 と共同で運営されています。

OpenModelicaは学術および産業環境で利用されています。産業分野では、発電所の最適化[ 4 ] 、自動車[ 5 ] 、水処理[ 6 ]などの分野で、OpenModelicaと独自ソフトウェアが併用されています。

ツールとアプリケーション

OpenModelicaコンパイラ(OMC)

OpenModelicaコンパイラ(OMC)は、クラス、関数、変数の定義を含むシンボルテーブルを備えたModelicaをCコードに変換するModelicaコンパイラです。これらの定義は、事前定義、ユーザー定義、またはライブラリから取得できます。コンパイラには、対話型の使用と定数式の評価のためのModelicaインタープリタも含まれています。サブシステムには、選択された数値常微分方程式または微分方程式ソルバーとリンクされたシミュレーション実行ファイルを構築するための機能も含まれています。OMCは、統一された方程式ベースの意味的および数学的モデリング言語であるMetaModelica [ 7 ]で記述されており、 ブートストラップされています

OpenModelica 接続エディター (OMEdit)

OpenModelica接続エディタ[ 8 ] [ 9 ]は、Modelicaモデルをテキストモードとグラフィカルモードで作成、編集、シミュレーションするためのオープンソースのグラフィカルユーザーインターフェースです。OMEditは対話型APIを介してOMCと通信し、モデル情報を要求し、Modelicaアノテーションに基づいてモデル/接続図を作成します。実装はC++とQtライブラリに基づいています。

OpenModelica シェル (OMShell)

OpenModelica Shell (OMShell) は、評価、シミュレーション、プロットなどのためのコマンドと Modelica 式を解析および解釈する対話型のコマンドライン インターフェイスです。セッション ハンドラーには、簡単な履歴機能、およびコマンド内のファイル名と特定の識別子の補完も含まれています。

OpenModelicaノートブック(OMNotebook)

OpenModelicaノートブック(OMNotebook)は、 Modelica用の軽量なMathematicaスタイルのエディタで、プログラムとドキュメントを同じドキュメントに統合するプログラミング形式である文芸的プログラミングを インタラクティブなWYSIWYGで実現します

OMNotebookは主に教育目的で使用され、階層構造のテキストとModelicaモデルや式を含むセルを混在させることができます。これらのテキストは評価、シミュレーション、プロットすることができ、結果はOMNotebookに直接表示されます。

OpenModelica Python インターフェース (OMPython)

OMPythonは、OpenModelicaのモデリングおよびシミュレーション機能にPythonからアクセスできるようにするPythonインターフェースです。OpenModelicaのスクリプトAPIとの通信には、 CORBA(omniORB)またはZEROMQを使用します。

OpenModelica Matlab インターフェース (OMMatlab)

OMMatlabは、OpenModelicaのモデリングおよびシミュレーション機能にMatlabからアクセスできるようにするMatlabインターフェースです。OpenModelicaコンパイラAPIとの通信には ZEROMQを使用します。

Modelica 開発ツール (MDT)

MDTは、OpenModelicaコンパイラをEclipseに統合するEclipseプラグインです。コード支援機能を備えた高度なテキストベースのモデル編集用エディタを提供します。MDTは既存のCORBAベースのAPIを介してOpenModelicaコンパイラと連携し、主にOpenModelicaコンパイラの開発に使用されます。

参照

参考文献

  1. ^管理者. 「OpenModelicaへようこそ - OpenModelica」 . openmodelica.org . 2017年5月24日閲覧
  2. ^ "OpenModelica/OpenModelica" . GitHub . 2017年5月24日閲覧
  3. ^「OSMCホームページ」
  4. ^「ABB発電所の最適化」
  5. ^「Wolframモデラー」
  6. ^「マイクオペレーション」
  7. ^ Pop, Adrian; Fritzson, Peter (2006-09-13). 「MetaModelica: 統一された方程式ベースの意味論的・数学的モデリング言語」.モジュラープログラミング言語. コンピュータサイエンス講義ノート. 第4228巻. pp.  211– 229. doi : 10.1007/11860990_14 . ISBN 978-3-540-40927-4
  8. ^ Adeel, Asghar, Syed; Sonia, Tariq (2010),ユーザーフレンドリーなOpenModelicaグラフィカル接続エディタの設計と実装{{citation}}: CS1 maint: 複数の名前: 著者リスト (リンク)
  9. ^管理者. 「OpenModelica 接続エディタ (OMEdit) - OpenModelica」 . openmodelica.org . 2017年5月24日閲覧