Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

sigwin.nuttallwin クラス

名前空間: sigwin

ナットールの定義による 4 項ブラックマン・ハリス ウィンドウ オブジェクトの構築

説明

メモ

sigwin.nuttallwin の使用は推奨されていません。代わりに nuttallwin を使用してください。

sigwin.nuttallwin では、ウィンドウ法でのスペクトル解析や FIR フィルター処理に使用する、ナットールの定義による 4 項ブラックマン・ハリス ウィンドウ オブジェクトのハンドルが作成されます。オブジェクト メソッドにより、ウィンドウの値をワークスペースにインポートし、ASCII ファイルにエクスポートできます。

構築

H = sigwin.nuttallwin では、長さ 64 のナットールの定義による 4 項ブラックマン・ハリス ウィンドウ オブジェクト H が返されます。

H = sigwin.nuttallwin(Length) では、長さ Length のナットールの定義による 4 項ブラックマン・ハリス ウィンドウ オブジェクト H が返されます。Length に整数以外の正の値を入力すると、長さは最も近い整数に丸められます。Length に 1 を入力すると、1 という単一の値をもつウィンドウとなります。SamplingFlag プロパティの既定値は 'symmetric' です。

プロパティ

Length

ナットールの定義による 4 項ブラックマン・ハリス ウィンドウの長さ。ウィンドウの長さは正の整数でなければなりません。Length に整数以外の正の値を入力すると、長さは最も近い整数に丸められます。Length に 1 を入力すると、1 という単一の値をもつウィンドウとなります。

SamplingFlag

'symmetric' または 'periodic' の 1 つとして返されるウィンドウのタイプ。既定の設定は 'symmetric' です。対称ウィンドウは、ウィンドウの半分に完全な対称を示します。SamplingFlag プロパティを 'periodic' に設定すると、N 周期ウィンドウができます。ナットールの定義による 4 項ブラックマン・ハリス ウィンドウの式は、SamplingFlag プロパティの値に応じて若干異なります。詳細については、アルゴリズムを参照してください。

メソッド

generateナットールの定義による 4 項ブラックマン・ハリス ウィンドウの生成
infoナットールの定義による 4 項ブラックマン・ハリス ウィンドウ オブジェクトについての情報を表示
winwriteナットールの定義による 4 項ブラックマン・ハリス ウィンドウ オブジェクトの値を ASCII ファイルに保存

セマンティクスのコピー

ハンドル。セマンティクスのコピーがクラスの使用に及ぼす影響は、MATLAB® の『プログラミングの基礎』にあるオブジェクトのコピーを参照してください。

すべて折りたたむ

2 つのナットールの定義による 4 項ブラックマン・ハリス ウィンドウを生成します。

  • 最初のウィンドウは N = 64 で、対称です。

  • 2 番目のウィンドウは N = 63 で、周期的です。

2 つのウィンドウを表示します。

Hs = sigwin.nuttallwin(64);
Hp = sigwin.nuttallwin(63);
Hp.SamplingFlag = 'periodic';

wvt = wvtool(Hs,Hp);
legend(wvt.CurrentAxes,'Symmetric','Periodic')

Figure Window Visualization Tool contains 2 axes objects and other objects of type uimenu, uitoolbar, uipanel. Axes object 1 with title Time domain, xlabel Samples, ylabel Amplitude contains 2 objects of type line. Axes object 2 with title Frequency domain, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Magnitude (dB) contains 2 objects of type line. These objects represent Symmetric, Periodic.

N = 16 の、ナットールの定義による対称 4 項ブラックマン・ハリス ウィンドウを生成します。ウィンドウの値を列ベクトルとして返します。ウィンドウ オブジェクトに関する情報が表示されます。ウィンドウを表示します。

H = sigwin.nuttallwin(16);

win = generate(H)
win = 16×1

    0.0004
    0.0048
    0.0306
    0.1105
    0.2778
    0.5292
    0.7983
    0.9755
    0.9755
    0.7983
      ⋮

wininfo = info(H)
wininfo = 4x26 char array
    'Nuttall Window            '
    '--------------            '
    'Length         : 16       '
    'Sampling Flag  : symmetric'

wvtool(H)

Figure Window Visualization Tool contains 2 axes objects and other objects of type uimenu, uitoolbar, uipanel. Axes object 1 with title Time domain, xlabel Samples, ylabel Amplitude contains an object of type line. Axes object 2 with title Frequency domain, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Magnitude (dB) contains an object of type line.

アルゴリズム

次の方程式は、長さ N の、ナットールの定義による対称的な 4 項ブラックマン・ハリス ウィンドウを定義するものです。

w(n)=a0a1cos(2πnN1)+a2cos(4πnN1)a3cos(6πnN1),0nN1

次の方程式は、長さ N の、ナットールの定義による周期的な 4 項ブラックマン・ハリス ウィンドウを定義するものです。

w(n)=a0a1cos2πnN+a2cos4πnNa3cos6πnN,0nN1

以下の表に係数をリストします。

係数
a00.3635819
a10.4891775
a20.1365995
a30.0106411

参考文献

Nuttall, A. H. “Some Windows with Very Good Sidelobe Behavior.” IEEE® Transactions on Acoustics, Speech, and Signal Processing. Vol. 29, 1981, pp. 84–91.