関数 > 信号処理 > デジタルフィルタ > 例: フィルタゲイン
  
例: フィルタゲイン
gain関数は、1 つの周波数におけるゲインを返します。周波数をベクトルで指定した場合、ゲインのベクトル (変換関数) が返ります。これはプロットに便利です。
ローパスフィルタのゲイン
1. iirlow関数を使用して、カットオフ周波数 f の 2 次アナログ Butterworth ローパス IIR フィルタの係数を取得します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
行列 A にはフィルタの係数が格納されているので、変換関数は次のようになります。
クリックしてこの式をコピー
2. gain 関数を使用して、周波数 x におけるフィルタゲインを計算します。
クリックしてこの式をコピー
3. サンプリング周波数の比 (0 から 0.5) で表した周波数に対してゲインのマグニチュードをプロットします。
クリックしてこの式をコピー
クリックしてこの式をコピー
カットオフ周波数でゲインは 0.707 に低下しています。
4. サンプリング周波数が 2π で表されるように周波数を尺度化し、ゲイン関数への周波数の引数を 2π で割ります。
クリックしてこの式をコピー
クリックしてこの式をコピー
フル x スケールで 0.2 のカットオフ周波数がフルωスケールでは 0.2 つまり 0.4 π になっています。
高次ローパスフィルタ
1. iirlow 関数を使用して、カットオフ周波数 f の 6 次アナログ Butterworth ローパス IIR フィルタの係数を取得します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
2. gain 関数を使用して、周波数 x におけるフィルタゲインを計算します。
クリックしてこの式をコピー
3. サンプリング周波数の比 (0 から 0.5) で表した周波数に対してゲインのマグニチュードをプロットします。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
4. 2 つのフィルタの応答を同じグラフにプロットして比較します。
クリックしてこの式をコピー
6 次フィルタの応答は 2 次フィルタの応答よりもはるかに急激に低下しています。
どちらのフィルタもカットオフ周波数 0.2 では同じゲインです。
FIR フィルタのゲインを計算します。
bandpass関数を使用して設計された FIR フィルタのゲインを計算します。
1. Blackman ウィンドウを使用して、通過帯域が f_low から f_high、長さ 51 の帯域通過フィルタの係数を計算します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
F は 51 個の要素から成る配列です。
2. このフィルタのゲインを計算します。
クリックしてこの式をコピー
3. ゲインをデシベルでプロットします。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
下限カットオフ周波数と上限カットオフ周波数の間でゲインが最大になっています。
関数定義
総和演算子を使用して、変換関数の定義から直接ゲインを計算できます。
周波数 x におけるフィルタ F のゲインを計算します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
これは z = 2πx で計算された変換関数です。
クリックしてこの式をコピー
クリックしてこの式をコピー
gain は総和演算子よりも高速なので、多数の周波数でのゲインを計算する場合に便利です。たとえば、周波数応答のプロットに gain を使用します。非常に長いフィルタの場合、gain でも計算に時間がかかるので、プロットにはかなり粗いグリッド (0.01 など) を選択してください。
FIR フィルタの位相
複素ゲインの位相はフィルタの位相シフトを表します。
1. FIR フィルタのカットオフ周波数を設定します。
クリックしてこの式をコピー
2. lowpass関数で Hanning ウィンドウを使用して (最後の引数が 4)、ローパスフィルタの係数を計算します。
クリックしてこの式をコピー
3. arg関数を使用して位相変化をプロットします。この関数は複素数 z の主偏角 (-π から π、ただし π を含む) を返します。
クリックしてこの式をコピー
クリックしてこの式をコピー
位相は通過帯域 (カットオフ周波数の下) では線形ですが、フィルタ遅延が生じています。
4. 遅延 D の変換関数を除算することで、遅延信号に対する複素ゲインを計算します。
クリックしてこの式をコピー
ここで
クリックしてこの式をコピー
クリックしてこの式をコピー
この長さ 37 のフィルタの遅延 D は 18 なので、相対位相シフトは次のように計算されます。
クリックしてこの式をコピー
ゲインが負の実数の場合、ゲイン計算時の丸め誤差によって小さな正または負の虚部が残り、これによって位相が π と -π の間で任意にジャンプすることがあります。
このような値を一律に処理するため、arg を次のように再定義します。
クリックしてこの式をコピー
5. ゲインのマグニチュードをデシベルでプロットします。
クリックしてこの式をコピー
クリックしてこの式をコピー
6. 遅延信号に対する位相シフトをプロットします。
クリックしてこの式をコピー
クリックしてこの式をコピー