Modelicaとは - わかりやすく解説 Weblio辞書 (original) (raw)

この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)出典検索?: "Modelica"ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2018年3月)

Modelica(モデリカ)とは、オブジェクト指向のマルチドメイン・モデリング言語である。多分野に跨る複雑なシステム(例えば、機械、電気、電子、油圧、熱、制御、電力、プロセス指向のサブコンポーネントを含むシステム)のモデリングに適しており、特に物理現象を表現するモデルの構築で使われている。

オープンソースである為、特定のツールに依存することなく資産の共有や開発が出来る。言語仕様やメンテナンスは非営利国際組織のModelica協会によって行われており、標準ライブラリとしてフリーで公開されている。

特徴

Modelicaはオブジェクト指向プログラミング言語(例えば、C++またはJava)と似ている点があるが、次の2点において顕著に異なる。

まず、Modelicaはプログラミング言語というよりはモデリング言語である。Modelicaで作成されたモデルは、普通にコンパイルされるのではなく、シミュレーションエンジンで解釈できるよう翻訳される。つまりシミュレーションエンジンは実行の順序を決定する為に、式を操作する事がある(シンボリック処理)。

次に、モデルの作成では、プログラミング言語に類似した予約語を含むアルゴリズムのコンポーネントが含まれているかもしれないが、主にモデルの表現においては方程式とのセットで構成される。

典型的な代入文は、以下のように表現する。下記式では、左辺(x)に右辺の式(2+y)から算出された値が代入される。

方程式を表現するには、以下のように表現する。下記式では、左辺と右辺の式が等しいことを表現する。

歴史

Modelicaの構想・設計は1996年9月にHilding Elmqvist氏より考案され、1997年9月にModelica仕様ver1.0がリリースされた。これをベースにプロトタイプ版の商用ソフトウェア Dymola(英語版) に実装され、2000年にはModelica言語とフリーのModelica標準ライブラリの発展を管理する為に、非営利国際組織のModelica協会が設立された。

ライブラリ

Modelica協会では、Molelica標準ライブラリ(MSL:Modelica Standard Library)をはじめ、フリーのライブラリを公開している。標準ライブラリやフリーのライブラリのほとんどは、Modelicaのライセンスに基づいて商用製品に使用できる。

MSLバージョン一覧

バージョン リリース日 モデル数 関数の数
3.2 2010年10月 1280 910
3.1 2009年8月 922 615
3.0.1 2009年1月 781 553
3.0 2008年2月 777 549
2.2.2 2007年8月 740 540
2.2.1 2006年3月 690 510
2.2 2005年4月 640 470
2.1 2004年11月 580 200
1.6 2004年6月 290 40

実装

Modelicaをシミュレーションする環境ツール(商用・フリー)としては、CATIA Systems、Dymola、LMS AMESim、JModelica、MapleSim(英語版)、MathModelica、OpenModelica(英語版)、SCICOS(英語版)、SimulationX(英語版)がある。

サンプル

下記に単純な x ˙ = − c ⋅ x {\displaystyle {\dot {x}}=-c\cdot x}