メインコンテンツ

blackmanharris

最小 4 項ブラックマン・ハリス ウィンドウ

説明

w = blackmanharris(L) は、L 点の対称的な 4 項ブラックマン・ハリス ウィンドウを返します。

w = blackmanharris(L,sflag) は、sflag によって指定されたウィンドウのサンプリング方法を使用して、ブラックマン・ハリス ウィンドウを返します。

w = blackmanharris(___,typeName) は、ウィンドウ w を単精度または倍精度で返すオプションを指定します。

すべて折りたたむ

32 点の対称ブラックマン・ハリス ウィンドウを作成します。wvtool を使用して結果を表示します。

L = 32;
wvtool(blackmanharris(L))

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.

入力引数

すべて折りたたむ

ウィンドウの長さ。正の整数で指定します。

メモ

L を非整数として指定した場合、関数はそれを最も近い整数値に丸めます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

ウィンドウ サンプリング方法。以下として指定します。

  • "symmetric" — フィルター設計でウィンドウを使用する場合は、このオプションを使用します。

  • "periodic" — スペクトル解析でウィンドウを使用する場合は、このオプションを使用します。"periodic" を指定した場合、blackmanharris は長さ L + 1 のウィンドウを計算し、最初の L 個の点を返します。この欠損端点は、シーケンスの周期的拡張の次の周期の開始点になっています。したがって、このシーケンスは離散フーリエ変換の周期性の仮定を満たすことになります。

データ型: char | string

R2024b 以降

出力データ型 (クラス)。次のいずれかとして指定します。

  • "double" — 出力 w を倍精度で返すには、このオプションを使用します。

  • "single" — 出力 w を単精度で返すには、このオプションを使用します。

データ型: char | string

出力引数

すべて折りたたむ

ブラックマン・ハリス ウィンドウ。列ベクトルとして返されます。

アルゴリズム

長さが N の対称的な 4 項ブラックマン・ハリス ウィンドウの式は次のとおりです。

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

長さが N の周期的な 4 項ブラックマン・ハリス ウィンドウの式は次のとおりです。

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

周期的ウィンドウは N 周期です。

係数
a00.35875
a10.48829
a20.14128
a30.01168

参照

[1] harris, fredric j. “On the Use of Windows for Harmonic Analysis with the Discrete Fourier Transform.” Proceedings of the IEEE®. Vol. 66, January 1978, pp. 51–83.

拡張機能

すべて展開する

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入

すべて展開する