- Scilab help
- CACSD
- Formal representations and conversions
- Plot and display
- abinv
- arhnk
- arl2
- arma
- arma2p
- arma2ss
- armac
- armax
- armax1
- arsimul
- augment
- balreal
- bilin
- bstap
- cainv
- calfrq
- canon
- ccontrg
- cls2dls
- colinout
- colregul
- cont_mat
- contr
- contrss
- copfac
- csim
- ctr_gram
- damp
- dcf
- ddp
- dhinf
- dhnorm
- dscr
- dsimul
- dt_ility
- dtsi
- equil
- equil1
- feedback
- findABCD
- findAC
- findBD
- findBDK
- findR
- findx0BD
- flts
- fourplan
- freq
- freson
- fspecg
- fstabst
- g_margin
- gamitg
- gcare
- gfare
- gfrancis
- gtild
- h2norm
- h_cl
- h_inf
- h_inf_st
- h_norm
- hankelsv
- hinf
- imrep2ss
- inistate
- invsyslin
- kpure
- krac2
- lcf
- leqr
- lft
- lin
- linf
- linfn
- linmeq
- lqe
- lqg
- lqg2stan
- lqg_ltr
- lqr
- ltitr
- macglov
- minreal
- minss
- mucomp
- narsimul
- nehari
- noisegen
- nyquistfrequencybounds
- obs_gram
- obscont
- observer
- obsv_mat
- obsvss
- p_margin
- parrot
- pfss
- phasemag
- plzr
- pol2des
- ppol
- prbs_a
- projsl
- reglin
- repfreq
- ric_desc
- ricc
- riccati
- routh_t
- rowinout
- rowregul
- rtitr
- sensi
- sident
- sorder
- specfact
- ssprint
- st_ility
- stabil
- sysfact
- syslin
- syssize
- time_id
- trzeros
- ui_observer
- unobs
- zeropen
- fspec
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
findAC
離散時間システム部分空間の同定
呼び出し手順
[A,C] = findAC(S,N,L,R,METH,TOL,PRINTW) [A,C,RCND] = findAC(S,N,L,R,METH,TOL,PRINTW)
パラメータ
- S
整数, ブロックハンケル行列のブロック行の数
- N
整数
- L
整数
- R
行列, findrをコールすることにより計算される結合されたブロックハンケル行列 のR因子に関連.
- METH
整数, 使用する手法に関するオプション
- = 1
過去の入力/出力に基づく MOESP 法;
- = 2
N4SID 法;
デフォルト: METH = 3.
- TOL
行列ランクの推定に使用される許容誤差. TOL > 0の場合, TOL に指定した値が 条件数の逆数の下界として使用されます. デフォルト: prod(size(matrix))*epsilon_machine ただし, epsilon_machine は相対機械精度です.
- PRINTW
整数, 警告メッセージの出力に関するスイッチ.
- PRINTW
= 1: 警告メッセージを出力;
- = 0
警告メッセージを出力しない.
デフォルト: PRINTW = 0.
- A
行列, 状態システム行列
- C
行列, 出力システム行列
- RCND
長さ4のベクトル, ランク決定に使用される行列の条件数
説明
部分空間同定法(MOESP または N4SID)を使用して, 離散時間システムのシステム行列 A および C を見つけます. この際, システム次元および結合されたブロックハンケル行列のR因子の関連する部分を 指定します.
[A,C] = findAC(S,N,L,R,METH,TOL,PRINTW) は, システム行列 A および C を計算します. モデル構造は次のようになります: x(k+1) = Ax(k) + Bu(k) + Ke(k), k >= 1, y(k) = Cx(k) + Du(k) + e(k) ただし, x(k) および y(k) はそれぞれ長さ N および L のベクトルです.
[A,C,RCND] = findAC(S,N,L,R,METH,TOL,PRINTW) は長さ4のベクトルRCNDも返します. この中には,ランク決定に使用される行列の条件数が含まれます.
行列 R は, findR により計算され, 適当な引数 METH および JOBD で定義 する必要があります.
例
//指定した線形システムからデータを生成 A = [ 0.5, 0.1,-0.1, 0.2; 0.1, 0, -0.1,-0.1; -0.4,-0.6,-0.7,-0.1; 0.8, 0, -0.6,-0.6]; B = [0.8;0.1;1;-1]; C = [1 2 -1 0]; SYS=syslin(0.1,A,B,C); nsmp=100; U=prbs_a(nsmp,nsmp/5); Y=(flts(U,SYS)+0.3*rand(1,nsmp,'normal')); // Rを計算 S=15;L=1; [R,N,SVAL] = findR(S,Y',U'); N=3; METH=3;TOL=-1; [A,C] = findAC(S,N,L,R,METH,TOL);
参照
Report an issue | ||
<< findABCD | CACSD | findBD >> |