Scilab 6.0.0
- Scilabヘルプ
- Signal Processing
- Filters
- analpf
- buttmag
- casc
- cheb1mag
- cheb2mag
- convol
- ell1mag
- eqfir
- eqiir
- faurre
- ffilt
- filt_sinc
- filter
- find_freq
- frmag
- fsfirlin
- group
- hilbert
- iir
- iirgroup
- iirlp
- kalm
- lev
- levin
- lindquist
- remez
- remezb
- srfaur
- srkf
- sskf
- syredi
- system
- trans
- wfir
- wfir_gui
- wiener
- wigner
- window
- yulewalk
- zpbutt
- zpch1
- zpch2
- zpell
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
srkf
平方根カルマンフィルタ
呼出し手順
[x1,p1]=srkf(y,x0,p0,f,h,q,r)
引数
- f, h
カレントのシステム行列
- q, r
ダイナミクスおよび観測ノイズの共分散行列
- x0, p0
t=-1までのデータに基づくt=0における状態量推定値および誤差共分散
- y
カレントの観測出力
- x1, p1
t=0までのデータに基づくt=1における状態量推定値および誤差共分散
説明
この関数はカルマンフィルタの平方根型です.
このフィルタは,特に動的ノイズ共分散 q
が小さい場合に,
数値的安定性の点で通常のカルマンフィルタよりも効率的です.
実際, 正定であるべき状態量の誤差共分散p
の
不定の数値表現が不定となることを防止します.
つまり, srkf
の目的は,
コレスキー分解アルゴリズムによりp
を伝播させることです.
これらの係数は,p
をその基本形式に保ったままで ,
アルゴリズムの各ステップで更新できます.
例
f=[0 0 1; 0 1 0; 2 3 4]; //状態行列 g=[1;-1;1]; //Input matrix h=[1 1 0; 0 1 0; 0 0 0]; //出力行列 Q=[3 2 1; 2 2 1; 1 1 1]; //動的ノイズの共分散行列 R=[2 1 1; 1 1 1; 1 1 2]; //観測ノイズの共分散行列 // 初期化 p0=[6 3 2; 3 5 2; 2 2 4]; x0=[1;1;1]; y=[2 8 7]'; // カレントの観測出力行列 [x1,p1]=srkf(y,x0,p0,f,h,Q,R)
Report an issue | ||
<< srfaur | Filters | sskf >> |