伝達関数の配列とplot ①
課題やらなにやらで,変数を徐々に変化させながらBode線図なりステップ応答なりをプロットしたい場合がある。
もちろんやりようはいくらでもあるのだが,
折角なので伝達関数の配列を用意してプロットを繰り返すということを行ってみたいと思う。
実は意外とめんどくさいらしい。
% 配列の初期化 10個のtfを保存する配列を用意。 H = tf(zeros(1,1,10));
何故か3次元だしtfの中に入っているのが見慣れない形だがとりあえず
このまま納得してもらって次はここに伝達関数を代入をする方法を示す。
s = tf('s') for k=1:10, H(:,:,k) = (k*s-1)/(s^2+s+6); end
この書き方はScilabだったかで伝達関数を記述する時に似ている。
以上のようにすればHに伝達関数を配列として格納することが出来る。
過去に「 MATLABでevalを用いる 」の所で解説したように
変数名もforループ内で自動的に作ることが出来るため,
自動でプロットから凡例付まで行うことも可能。
いつ使うかは分からないが意外と盲点なのではないだろうか。
「 モデル配列 」というキーワードで調べるともっと詳しいことがわかるかもしれない。
ただいま勉強中である。