メインコンテンツ

barthannwin

修正バートレット・ハン ウィンドウ

説明

w = barthannwin(L) は、L 点の修正バートレット・ハン ウィンドウを返します。

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

すべて折りたたむ

64 点のバートレット・ハン ウィンドウを作成します。wvtool を使用して結果を表示します。

L = 64;
wvtool(barthannwin(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

R2024b 以降

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

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

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

データ型: char | string

出力引数

すべて折りたたむ

修正バートレット・ハン ウィンドウ。長さ L の列ベクトルとして返されます。

アルゴリズム

修正バートレット・ハン ウィンドウの係数を計算する式は次のとおりです。

w(n)=0.620.48|(nN0.5)|+0.38cos(2π(nN0.5))

ここで、0nN であり、ウィンドウの長さは L=N+1 です。

バートレット、ハン、およびハミングの各ウィンドウと同様、このウィンドウでもメインローブは原点にあり、サイドローブは両側で漸近的に減衰していきます。このウィンドウはバートレット ウィンドウとハン ウィンドウを重み付けをして線形に結合したもので、サイドローブの近い部分はバートレットとハンの両ウィンドウよりも小さく、サイドローブの遠い部分でもバートレットとハミングの両ウィンドウより小さくなります。修正バートレット・ハン ウィンドウのメインローブの幅は、バートレット ウィンドウやハン ウィンドウのメインローブに関連して大きくなることはありません。

参照

[1] Ha, Y. H., and J. A. Pearce. “A New Window and Comparison to Standard Windows.” IEEE® Transactions on Acoustics, Speech, and Signal Processing. Vol. 37, Number 2, 1999, pp. 298–301.

[2] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999, p. 468.

拡張機能

すべて展開する

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

バージョン履歴

R2006a より前に導入

すべて展開する