X = rngkut4(t,x,diff_eqs,h)
Matrix X;
Real t;
Matrix x;
Matrix diff_eqs(t,x,u); (Real t; Matrix x,u;)
Real h;
X = rngkut4(t,x,diff_eqs,u,h)
Matrix X;
Real t;
Matrix x;
Matrix diff_eqs(t,x,u); (Real t; Matrix x,u;)
Matrix u;
Real h;
X = rngkut4(t,x,diff_eqs,link_eqs,h)
Matrix X;
Real t;
Matrix x;
Matrix diff_eqs(t,x,u); (Real t; Matrix x,u;)
Matrix link_eqs(t,x); (Real t; Matrix x;)
Real h;
【詳細】
rngkut4(t,x,diff_eqs,h)は,関数diff_eqs()で定義される常微分方程式
を 4 次のルンゲクッタの算法を使い,微少時間 h 後の解を
求める。打ち切り誤差のオーダーは h5 である。
rngkut4(t,x,diff_eqs,u,h)は,外部信号 u を,diff_eqs() に渡しながら,
常微分方程式を解き,微少時間 h 後の解を返す。
rngkut4(t,x,diff_eqs,link_eqs,h)は,関数 link_eqs() の計算結果を
外部信号 u として,関数 diff_eqs() に渡しながら,常微分方程式を
解き,微少時間 h 後の解を返す。
引数の意味を次に示す。
t | : | 現在時刻 |
x | : | 現在状態 |
diff_eqs(t,x,u) | : | 時刻 t,状態 x,外部信号 u から状態の |
| | 微分を計算 |
h | : | 刻み幅 |
u | : | diff_eqs() に渡される外部信号 |
link_eqs(t,x) | : | 時刻 t,状態 x から外部信号を計算する |
【例題】
リファレンスマニュアル参照。
【参照】