yulewalk
最小二乗フィルタを設計
呼び出し手順
Hz = yulewalk(N,frq,mag)
呼び出し手順
- N
整数 (指定するフィルタの次数)
- frq
実数行ベクトル (非降順), 周波数.
- mag
非負の実数行ベクトル (frqと同じ大きさ), 指定する振幅.
- Hz
フィルタ
B(z)/A(z)
説明
Hz = yulewalk(N,frq,mag) は N次IIRフィルタを見つけます.
n-1 n-2 B(z) b(1)z + b(2)z + .... + b(n) H(z)= ---- = --------------------------------- n-1 n-2 A(z) z + a(2)z + .... + a(n)
は,ベクトルfrqおよびmagで指定された周波数応答に振幅が一致します. 周波数frqは,1.0がサンプルレートの半分に対応するとして, 0.0および1.0の間とする必要があります. これらは昇順で, 0.0 から始まり, 1.0で終わる必要があります.
例
f=[0,0.4,0.4,0.6,0.6,1]; H=[0,0,1,1,0,0]; Hz=yulewalk(8,f,H); fs=1000; fhz = f*fs/2; scf(0); clf plot2d(fhz',H'); xtitle('Desired Frequency Response (Magnitude)') [frq,repf]=repfreq(Hz,0:0.001:0.5); scf(1); clf plot2d(fs*frq',abs(repf')); xtitle('Obtained Frequency Response (Magnitude)')


Report an issue | ||
<< window | Filters | zpbutt >> |