状態空間モデルで行列内の値を固定するには?
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Haruto Yamazaki
le 27 Déc 2019
Réponse apportée : Hiroumi Mita
le 27 Déc 2019
状態空間モデルのパラメータ推定を行っています.
X'=AX+Bu
Y=CX+Du
において,
A=[0 1 0 0;NaN 0 NaN 0;0 0 0 1;NaN 0 NaN 0];
B=[0;NaN;0;0];
C=[1 0 0 0;0 0 1 0];
D=[0;0];
設定したモデルは上記の通りです.
NaN以外の行列の値を固定して,ssestなどを用いて値を推定したいのですが,その固定方法等がよくわかりません.
おそらくidssのstructureを使う様なのですが,例えば
m.Structure.A.Free(2,1) = false;
m.Structure.A.Value(2,2)
m.Structure.A.Free(2,3) = false;
m.Structure.A.Value(2,4)
のようにしても固定が出来ません.
どなたかご教授をお願いします.
0 commentaires
Réponse acceptée
Hiroumi Mita
le 27 Déc 2019
状態空間内部の任意の箇所だけ推定するには
idgreyで設定し、pem等のシステム同定の関数を使います。
idgreyとそのサンプルをhelpで調べてみてください。
1 commentaire
Plus de réponses (1)
Hiroumi Mita
le 27 Déc 2019
例題を見ると、
サンプル時間Tsが関数LinearPendulum
の引数に必要なようです。
function [A,B,C,D] = LinearPendulum(a,b,c,d,e,Ts) %<-ココ
A=[0 1 0 0;a 0 b 0;0 0 0 1;c 0 d 0 ];
B=[0;e;0;0 ];
C=[1 0 0 0;0 0 1 0 ];
D=[0;0 ];
end
0 commentaires
Voir également
Catégories
En savoir plus sur 状態空間モデル dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!