MATLABでfirls関数はどのように使えばよいですか?

MATLABでは、firls関数は最適線形位相フィルタの設計に使用されます。与えられた周波数応答の要求と窓関数の種類に基づいて、最適なフィルタ係数を計算します。

firls関数の構文は次のようになります。

h = firls(n、f、a)

n はフィルタ次数(偶数限定)、f は周波数点のベクトルで、周波数応答の指定、a は振幅応答のベクトルで、対応する周波数点でのゲインを表す。

さらに、fとaは同じ長さでなくてはならず、fの要素は昇順になっている必要があります。

firls 関数はオプションの重み付けパラメータ w を取り、周波数ポイントの重みを指定できます。既定では、すべての周波数ポイントの重みは 1 です。

この関数はフィルターの係数 h (長さ n+1 のベクトル) を返します。freqz 関数を使用してフィルターの周波数応答をプロットできます。

例えば、以下のコードは、次数30の最適低域通過フィルタを設計します。

n = 30; % フィルタ次数

f = [0, 0.2, 0.4, 1]; % 周波数ポイント

a = [1, 1, 0, 0]; % 振幅応答

h = fir(n, f, a) ; % フィルタ係数の計算

freqz(h) % 周波数応答プロットの描画

bannerAds