バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
前回は、調査結果についての気になったところとして、各社ツールがFMU/FMI対応に対して追加費用を取っていない点について。
恐らくだが、非競争領域として、広めることを重要視した結果と考えられる。
あと、2016年あたりから各社ツールに機能が追加されている傾向がある。
これはFMI関連のSDKが2014年リリースが理由である可能性が高い。
FMU/FMIのversionについてと各version間で互換性が無いことも話をした。
最後にsolverという単語が出てきたが・・・。
登場人物
博識フクロウのフクさん
イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん
イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
FMU/FMIのシミュレーション方式について
前回は、最後に「solver」って単語だけ出して終わりにされちゃったから、
気になって仕方なかったじゃないかー。
ごめんごめん。
結構長くなりそうだったんであそこで話を一旦切るしかなかったんだよねー。
で、solverって何?
その前にFMU/FMIのシミュレーション方式の種類について説明しよう。
方式の種類?
ってことは複数あるってことかな?
うん。
以下、2種類だけどね。
- Model Exchange(通称ME)
- Co-Simulation(通称CS)
ほーう?
どういう違いがあるの?
MEはFMUの外部にsolverがあって、
CSはFMUの内部にsolverがある。
solver
で、そのsolverが分からないんだけど!!
solverはODE solverのことを指していて、
ODEはOrdinary Differential Equationの略で常微分方程式って意味になる。
つまり、ODE solverは「常微分方程式を解決する機能」ってことになるね。
???
たぶん「常微分方程式を解決する」ってのが分からない感じだな。
そう!それ!!
実は以前ちょっとやってるんだよねー。
オイラー法とかホルン法。
その時はそういう名前じゃなくて
差分法と中心差分法って言い方だったけど、
差分法 → オイラー法
中心差分法 → ホルン法
そういえばここらへんでやったかも!
確かテイラー展開がどうのってヤツ!
そうそう。
Simulink、OpenModelicaも内部で「常微分方程式を解決」することでシミュレーション結果を出してる。
たしか、テイラー展開の次数で精度が決まるんだけど、
あくまで近似だったと思うんだけど?
そうだよ。
前提条件の無い微分方程式は基本解けない。近似するのが限界だね。
その近似して解決してくれる機能がODE solver。
オイラー法は「テイラー1次相当の近似」でホルン法が「テイラー2次相当の近似」。
って言い方になるね。
なんとなくイメージは湧いてきたかなー。
まとめ
まとめだよ。
- FMU/FMIのシミュレーション方式は2種類ある。
- Model Exchange(通称ME)。
- 外部にSolver。
- Co-Simulation(通称CS)。
- 内部にSolver。
- Model Exchange(通称ME)。
- SolverはODE Solverのこと。
- 常微分方程式を解決する機能。
- オイラー法、ホルン法などが有名。
- 常微分方程式を解決する機能。
バックナンバーはこちら。
コメント