Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

step

時変振幅応答の表示

説明

step(dfv,filt) は、オブジェクト フィルター filtfreqz() の有効な実装がある場合に、filt の時変振幅応答を動的フィルター可視化ツールの Figure に表示します。

step(dfv,B,A) は、分子と分母の多項式係数が B1A1B2A2、...、BNAN にそれぞれ格納されたデジタル フィルターの振幅応答を表示します。

すべて折りたたむ

時変振幅応答をもつ FIR フィルターを設計します。この応答の変化を動的フィルター可視化ツールでプロットします。

dsp.DynamicFilterVisualizer オブジェクトを作成します。

dfv = dsp.DynamicFilterVisualizer('YLimits',[-120 10])
dfv = 
  DynamicFilterVisualizer with properties:

           FFTLength: 2048
          SampleRate: 44100
      FrequencyRange: [0 22050]
              XScale: 'Linear'
    MagnitudeDisplay: 'Magnitude (dB)'

   Visualization
                Name: 'Dynamic Filter Visualizer'
               Title: 'Magnitude Response'
             YLimits: [-120 10]
          ShowLegend: 0
         FilterNames: {''}
           UpperMask: Inf
           LowerMask: -Inf
            Position: [240 262 800 500]

FIR フィルターのカットオフ周波数 k0.1 から 0.5 まで 0.001 ずつ変化させます。動的フィルター可視化ツールを使用して振幅応答の変化を表示します。

for k = 0.1:0.001:0.5
    b = fir1(90,k);
    dfv(b,1);
end

動的フィルター可視化ツールを使用して、可変帯域幅 FIR フィルターの振幅応答の変化を可視化します。

dsp.DynamicFilterVisualizer オブジェクトを作成します。

dfv = dsp.DynamicFilterVisualizer('YLimits',[-160 10])
dfv = 
  DynamicFilterVisualizer with properties:

           FFTLength: 2048
          SampleRate: 44100
      FrequencyRange: [0 22050]
              XScale: 'Linear'
    MagnitudeDisplay: 'Magnitude (dB)'

   Visualization
                Name: 'Dynamic Filter Visualizer'
               Title: 'Magnitude Response'
             YLimits: [-160 10]
          ShowLegend: 0
         FilterNames: {''}
           UpperMask: Inf
           LowerMask: -Inf
            Position: [240 262 800 500]

中心周波数が 5 kHz、帯域幅が 4 kHz のバンドパス可変帯域幅 FIR フィルターを設計します。

Fs = 44100;
vbw = dsp.VariableBandwidthFIRFilter('FilterType','Bandpass',...
    'FilterOrder',100,...
    'SampleRate',Fs,...
    'CenterFrequency',5e3,...
    'Bandwidth',4e3);

フィルターの中心周波数を変化させます。dsp.DynamicFilterVisualizer オブジェクトを使用して、フィルターの振幅応答の変化を可視化します。

for idx  = 1:100
    dfv(vbw);
    vbw.CenterFrequency = vbw.CenterFrequency + 20;
end

入力引数

すべて折りたたむ

動的フィルター可視化ツール。dsp.DynamicFilterVisualizer オブジェクトとして指定します。

freqz() の有効な実装をもつフィルター System object。

分子多項式係数。行ベクトルとして指定します。

データ型: single | double

分母多項式係数。次のいずれかとして指定します。

  • スカラー –– フィルターが FIR フィルター。

  • 行ベクトル –– フィルターが IIR フィルター。

データ型: single | double

バージョン履歴

R2018b で導入

参考

関数

オブジェクト