MATLAB,Python,Scilab,Julia比較 その53【状態空間モデル⑪】

MATLAB,Python,Scilab,Julia比較 その53【状態空間モデル⑪】 数値計算
MATLAB,Python,Scilab,Julia比較 その53【状態空間モデル⑪】

バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia-backnumber/

はじめに

前回はまでで、各ツール、各言語による状態空間モデルのシミュレーションを実施した。
シミュレーションできたので、これはこれでOKなのだが、
元々、本シリーズはベクトル、行列を駆使してなんとかする動機で始まっている。
つまり、状態空間モデルのまま演算する方法があるとかないとか。

登場人物

博識フクロウのフクさん

指差しフクロウ

イラスト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

状態空間モデルをさらに掘り下げる?

太郎くん
太郎くん

これで状態空間モデルはOKだねー。
これで僕も行列マスター!

フクさん
フクさん

うむ。
というわけで次は状態空間モデルをガチのベクトル行列演算でシミュレーションしようと思う。

太郎くん
太郎くん

は?

フクさん
フクさん

だからシミュレーション。

太郎くん
太郎くん

シミュレーションは前回までで一通りやったじゃん・・・。

フクさん
フクさん

元々はベクトル行列に慣れるためにスタートしたシリーズだ。
状態空間モデルは、ベクトル、行列の形状のまま微分解決可能な構成
よってそれを最大限に活用しようと思う。

太郎くん
太郎くん

ベクトル、行列な上に微分とか分けわからーん!!

フクさん
フクさん

まぁ気持ちはわかる。
ベクトル、行列なだけでめんどそうなイメージある上に、
そこに対して微分解決って話が入るもんな。
でも、それほど難しい話ではない。

太郎くん
太郎くん

(フクさんが「難しい話ではない」と言ってて難しくなかった試しがないのだが・・・。)

状態空間モデルを使用せずに普通に微分解決すると?

フクさん
フクさん

まず、状態空間モデルを使用しないで、運動方程式の微分解決を考えてみよう。

太郎くん
太郎くん

うーん、確か漸化式ってやつを導き出す感じだったかな?

フクさん
フクさん

そうそう。
速度\(\boldsymbol v\)と距離\(\boldsymbol s\)に対して行ってみよう。

運動方程式
\(\boldsymbol{F}=m\boldsymbol{a} \)

加速度、速度、距離の関係
\(\boldsymbol{a}(t)=\boldsymbol{\dot{v}}(t)=\boldsymbol{\ddot{s}}(t) \)

速度の漸化式
\(\boldsymbol{\dot{v}}(t)=\displaystyle \frac{1}{m}\boldsymbol{F}(t)\)
\(\boldsymbol{v}(t)=\boldsymbol{\dot{v}}(t)\Delta T + \boldsymbol{v}(t-\Delta T) \)

距離の漸化式
\(\boldsymbol{\dot{s}}(t)=\boldsymbol{v}(t)\)
\(\boldsymbol{s}(t)=\boldsymbol{\dot{s}}(t)\Delta T + \boldsymbol{s}(t-\Delta T) \)

太郎くん
太郎くん

あー、この作業は良く見るなー。
まぁこれの前にブロック図書いたり、
その後C言語に落として―。

フクさん
フクさん

そこら辺のメンドクサさを再確認するためにも
一度ブロック図作成とC言語化をやってみるか。

太郎くん
太郎くん

(まぁフクさんがやってくれるなら別にいいけど。)

フクさん
フクさん

(たぶん他人事のように考えてやがってるな・・・。)

まとめ

フクさん
フクさん

まとめだよ。

  • 状態空間モデルを掘り下げる。
    • ベクトル、行列であることの利点があるはず。
  • その前に状態空間モデルを使用しない場合はどうなるかをやってみる。
    • 漸化式、ブロック図、C言語化をやってみる。(漸化式は今回やった)

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました