SSブログ

インパルス応答の周波数特性表示 [Octave workshop]

タップ数やフィルタ係数を決め打ちで、f特を求めたい時に使います。

> IP=[1,1,1]/3;
> [h,w]=freqz(IP);
> grid on;
> plot(w, 20*log10(abs(h)));


3平均化フィルタの周波数特性(ナイキスト=π)

フィルタによっては、次のような、変な特性が求まることがあります。
> IP=[1,0,2,0,1]/4;
> [h,w]=freqz(IP);
> grid on;
> plot(w, 20*log10(abs(h)));


[1,0,2,0,1]/4のフィルタ係数を持つフィルタのf特 変な例

これは、算出したf特が絶対値0(0+0i)を持つ場合に現れる現象のようです。
暫定かもしれませんが、解決法としては、
①周波数軸を0~πに限定表示する方法
②該当する部分のf特を、固定値に挿げ替える方法
の2種類が考えられます。

①周波数軸を0~πに限定表示する方法
> axis([0 3.15 -100 0]);

以下の警告は、その通りです、と認識する程度。
warning: axis: some elements in list of return values are undefined


[1,0,2,0,1]/4のフィルタ係数を持つフィルタのf特 表示域0~π

②該当する部分のf特を、固定値に挿げ替える方法
plot文の行、abs(h)の部分をabs(h+0.00001)→-100dB(h=0) に挿げ替え
> plot(w, 20*log10(abs(h+0.00001)));

これで、abs(h)=0で変になっていた点が、-100dBに固定されます。
何dBに固定するかは、TPOに合わせて、お好みで。


[1,0,2,0,1]/4のフィルタ係数を持つフィルタのf特 -100dB固定



nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

PCG-Z505(vaio)にFedor..Verilogやります ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。