このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
Window Function
ウィンドウの計算と入力信号への適用

ライブラリ:
DSP System Toolbox /
Signal Operations
説明
Window Function ブロックには 3 つの操作モードがあり、ウィンドウの適用、ウィンドウの計算、またはウィンドウの計算と入力信号への適用が可能です。モードは [Operation] パラメーターで選択できます。各モードで、ブロックは最初に [Window type] パラメーターで指定されたウィンドウをサンプリングして、ウィンドウ ベクトル w を作成します。
例
端子
入力
In — 入力信号
ベクトル | 行列 | N 次元配列
入力信号。ベクトル、行列、または N 次元配列として指定します。入力が固定小数点の場合、符号付きの入力のみが認められます。
この端子は、[Operation] を [Apply window to input]
または [Generate and apply window]
に設定した場合にのみ有効になります。
この端子は、[Operation] を [Apply window to input]
に設定した場合は名前なしになります。
データ型: single
| double
| int8
| int16
| int32
| fixed point
出力
Out — 出力
ベクトル | 行列 | N 次元配列
出力信号。ベクトル、行列、または N 次元配列として返されます。
[Out] 端子は、[Operation] を次に設定した場合にのみ有効になります。
Apply window to input
–– ブロックは M 行 1 列のウィンドウ ベクトル w を計算し、それを M 行 N 列の入力に適用します。ここで、M は入力信号の行数です。Generate and apply window
–– ブロックは M 行 1 列のウィンドウ ベクトル w を生成して入力に適用します。
出力信号の次元は入力信号と同じです。詳細は、Operation, OperationOperationOperationを参照してください。
データ型: single
| double
| int8
| int16
| int32
| fixed point
Win — ウィンドウの出力
ベクトル
ウィンドウの出力。ベクトルとして返されます。[Operation] を [Apply window to input]
または [Generate and apply window]
に設定した場合、ウィンドウ ベクトルは入力信号の行数と同じ長さ長さになります。[Operation] を [Generate window]
に設定した場合、ウィンドウ ベクトルの長さは [Window length] パラメーターによって決まります。
データ型: single
| double
| int8
| int16
| int32
| fixed point
パラメーター
メイン
Operation — 操作モード
Apply window to input
(既定値) | Generate window
| Generate and apply window
Window Function ブロックには、[Operation] パラメーターを使って選択できる 3 つの操作モードがあります。各モードで、ブロックは最初に M 離散点で [Window type] パラメーターで指定されたウィンドウをサンプリングして、ウィンドウ ベクトル w を作成します。操作モードは次のようになります。
Apply window to input
このモードでは、ブロックは M 行 1 列のウィンドウ ベクトル w を計算して入力に適用します。出力 y の次元は、常に入力と同じです。
入力が M 行 N 列の行列 u の場合、ウィンドウは入力行列 u の各 N チャネルで要素単位で乗算されます。これは、次の MATLAB® コードと等価です。
y = repmat(w,1,N) .* u % Equivalent MATLAB code
ウィンドウは常に最初の次元に適用されます。
長さ M の方向性をもたないベクトル入力は M 行 1 列のベクトルとして扱われます。
Generate window
このモードでは、ブロックは [Window length] パラメーターで指定された長さ M の方向性をもたないウィンドウ ベクトル w を生成します。このモードでは、[In] 端子は無効になっています。
Generate and apply window
このモードでは、ブロックは M 行 1 列のウィンドウ ベクトル w を生成して入力に適用します。ブロックは次の 2 つの出力を生成します。
[Out] 端子では、ブロックは入力と同じ次元をもつ乗算の結果 y を生成します。
[Win] 端子では、ブロックは M 行 1 列のウィンドウ ベクトル w を生成します。
入力が M 行 N 列の行列 u の場合、ウィンドウは入力行列 u の各 N チャネルで要素単位で乗算されます。これは、次の MATLAB コードと等価です。
y = repmat(w,1,N) .* u % Equivalent MATLAB code
ウィンドウは常に最初の次元に適用されます。
長さ M の 1 次元ベクトル入力は M 行 1 列のベクトルとして扱われます。
Window type — ウィンドウのタイプ
Hamming
(既定値) | Bartlett
| Blackman
| ...
次の表は、使用可能なウィンドウ タイプの一覧です。
ウィンドウ タイプ | 説明 |
---|---|
Bartlett | バートレット ウィンドウを計算します。 w = |
Blackman | ブラックマン ウィンドウを計算します。 w = |
Boxcar | 箱型ウィンドウを計算します。 w = |
Chebyshev | チェビシェフ ウィンドウを阻止帯域リップル w = |
Hamming | ハミング ウィンドウを計算します。 w = |
Hann | ハン ウィンドウ (ハニング ウィンドウとも呼ばれる) を計算します。 w = |
Hanning | 旧式です。このウィンドウ タイプは古いモデルとの互換性目的でのみ含まれています。可能な限り、 |
Kaiser | カイザー ウィンドウをカイザー パラメーター w = |
Taylor | テイラー ウィンドウを計算します。 w = |
Triang | 三角ウィンドウを計算します。 w = |
User Defined | [Window function name] パラメーター w = usrwin(M) % Window takes no extra parameters w = usrwin(M,x1,...,xn) % Window takes extra parameters {x1 ... xn} |
Sampling — サンプリング タイプ
Symmetric
(既定値) | Periodic
一般的なコサイン ウィンドウのウィンドウ サンプリングを指定します。
一般的なコサイン ウィンドウ ([Blackman]
、[Hamming]
、[Hann]
および [Hanning]
) では、ウィンドウ サンプルが周期的に計算されるか、対称的に計算されるかが [Sampling] パラメーターによって決定されます。たとえば、[Sampling] が [Symmetric]
に設定されている場合、長さ M のハミング ウィンドウは次のように計算されます。
w = hamming(M) % Symmetric (aperiodic) window
[Sampling] が Periodic
に設定されている場合、同じウィンドウは次のように計算されます。
w = hamming(M+1) % Periodic (asymmetric) window w = w(1:M)
シミュレーションでのみ調整可能 (Simulink)です。
依存関係
このパラメーターは、[Window type] パラメーターで [Blackman]
、[Hamming]
、[Hann]
または [Hanning]
を選択した場合にのみ表示されます。
Sample mode — サンプル モード
Continuous
(既定値) | Discrete
[Generate window]
モードの場合に、ブロックのサンプル モードに [Continuous]
または [Discrete]
を指定します。[Apply window to input]
および [Generate and apply window]
モードでは、ブロックはその駆動ブロックからサンプル モードを継承します。
依存関係
このパラメーターは、[Operation] パラメーターで [Generate window]
を選択した場合にのみ表示されます。
Sample time — サンプル時間
1
(既定値) | 実数スカラー
[Operation] を [Generate window]
に設定し、[Sample mode] を [Discrete]
に設定した場合に、ブロックのサンプル時間を指定します。[Operation] を [Apply window to input]
および [Generate and apply window]
に設定した場合、ブロックはその駆動ブロックからサンプル時間を継承します。
依存関係
このパラメーターは、[Sample mode] を [Discrete]
に設定した場合にのみ表示されます。
Window length — ウィンドウの長さ
64
(既定値) | 正の整数
適用するウィンドウの長さを指定します。
依存関係
このパラメーターは、[Operation] パラメーターで [Generate window]
を選択した場合にのみ表示されます。そうでない場合は、ウィンドウ ベクトルの長さは入力の最初の次元の長さに一致するように計算されます。
Stopband attenuation in dB — 阻止帯域の減衰量 (dB 単位)
50
(既定値) | 非負のスカラー
阻止帯域の減衰量のレベル Rs をデシベル単位で指定します。
シミュレーションでのみ調整可能 (Simulink)です。
依存関係
このパラメーターは、[Window type] パラメーターで [Chebyshev]
を選択した場合にのみ表示されます。
Beta — カイザー ウィンドウの β パラメーター
10
(既定値) | 実数スカラー
[Kaiser]
ウィンドウ β パラメーターを指定します。β が上昇するとメインローブが広がり、ウィンドウの周波数振幅応答でのウィンドウのサイドローブの振幅が減少します。
シミュレーションでのみ調整可能 (Simulink)です。
依存関係
このパラメーターは、[Window type] パラメーターで [Kaiser]
を選択した場合にのみ表示されます。
Number of sidelobes — サイドローブ数
4 (既定値) | 正の整数
サイドローブの数をゼロより大きいスカラー整数値で指定します。
依存関係
このパラメーターは、[Window type] パラメーターで [Taylor]
を選択した場合にのみ表示されます。
Maximum sidelobe level relative to mainlobe (dB) — メインローブに対する最大サイドローブ レベル
-30
(既定値) | ゼロ以下のスカラー
メインローブに対するサイドローブの最大レベルをデシベル単位で指定します。このパラメーターはゼロ以下のスカラーでなければなりません。この既定値 –30 は、メインローブのピークから 30 dB 低い位置にピークがあるサイドローブを生成します。
依存関係
このパラメーターは、[Window type] パラメーターで [Taylor]
を選択した場合にのみ表示されます。
Window function name — ウィンドウ関数名
hamming
(既定値) | 文字ベクトル
ブロックで計算されるユーザー定義のウィンドウ関数の名前を指定します。カスタム ウィンドウ関数から返される出力ウィンドウ ベクトルのデータ型は double
でなければなりません。
依存関係
このパラメーターは、[Window type] パラメーターで [User defined]
を選択した場合にのみ表示されます。
Specify additional arguments to the hamming function — ウィンドウ関数に追加の引数を指定
off (既定値) | on
ユーザー定義ウィンドウでウィンドウの長さ以外のパラメーターが必要な場合、[Cell array of additional arguments] パラメーターを有効にするためにオンにします。
依存関係
このパラメーターは、[Window type] パラメーターで [User defined]
を選択した場合にのみ表示されます。
Cell array of additional arguments — 追加の引数
{'symmetric'}
(既定値) | cell 配列
ユーザー定義ウィンドウ関数でウィンドウの長さ以外に必要とされる追加パラメーターを指定します。
依存関係
このパラメーターは、[Specify additional arguments to the hamming function] パラメーターを選択した場合にのみ使用できます。エントリは cell 配列でなければなりません。
データ型
[Main] タブの [Operation] パラメーターを [Generate window]
に設定した場合、次のパラメーターが表示されます。
Window data type — ウィンドウのデータ型
double
(既定値) | single
| Fixed-point
| User-defined
| Inherit via back propagation
ウィンドウのデータ型を次のいずれかの方法で指定します。
double
single
Fixed-point
–– ウィンドウのデータ型とスケーリングを [Signed]、[Word length]、[Set fraction length in output to] および [Fraction length] の各パラメーターで指定します。User-defined
–– ウィンドウのデータ型とスケーリングを [User-defined data type]、[Set fraction length in output to] および [Fraction length] の各パラメーターで指定します。Inherit via back propagation
–– ウィンドウのデータ型とスケーリングを次のブロックに一致するように設定します。
符号付き — 符号付きウィンドウ出力
on (既定値) | off
選択すると、符号付き固定小数点信号を出力します。それ以外の場合は、信号は符号なしになります。
依存関係
このパラメーターは、[Window data type] を [Fixed-point]
に設定した場合にのみ表示されます。
語長 — 語長
16
(既定値) | [2 128] の範囲の正の整数
固定小数点のウィンドウ データ型の語長をビット数で指定します。
依存関係
このパラメーターは、[Window data type] を [Fixed-point]
に設定した場合にのみ表示されます。
User-defined data type (e.g. sfix(16), float('single)) — ユーザー定義のデータ型
sfix(16)
(既定値) | 組み込みデータ型 | 固定小数点データ型
組み込みまたは固定小数点のデータ型を指定します。固定小数点のデータ型の指定には、関数 fixdt
(Simulink) を使用できます。
依存関係
このパラメーターは、[Window data type] を [User-defined]
に設定した場合にのみ表示されます。
Set fraction length in output to — 固定小数点のウィンドウ データ型のスケーリング
Best precision
(既定値) | User-defined
次のいずれかの方法を使用して、固定小数点のウィンドウ データ型のスケーリングを指定します。
[Best precision]
を選択すると、出力信号が可能な限り最高の精度となるよう、自動的にウィンドウのデータ型のスケーリングが行われます。[User-defined]
を選択し、[Fraction length] パラメーターでウィンドウのデータ型のスケーリングを指定します。
依存関係
このパラメーターは、[Window data type] を [Fixed-point]
または [User-defined]
に設定し、指定したウィンドウ データ型が固定小数点のデータ型である場合にのみ表示されます。
小数部の長さ — ユーザー定義の小数部の長さ
15
(既定値) | 整数
固定小数点のウィンドウ データ型の小数部の長さをビット数で指定します。
依存関係
このパラメーターは、[Window data type] を [Fixed-point]
または [User-defined]
に設定し、[Set fraction length in output to] を [User-defined]
に設定した場合にのみ表示されます。
[Main] タブの [Operation] パラメーターを [Apply window to input]
または [Generate and apply window]
に設定した場合、次のパラメーターが表示されます。
丸めモード — 丸めモード
Floor
(既定値) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
固定小数点演算の丸めモードを選択します。
ウィンドウ ベクトル w はこのパラメーターに従いません。常に [Nearest]
に丸めます。
メモ
[丸めモード] と [オーバーフロー モード] の設定は、次の両方の条件が存在する場合、数値結果には影響しません。
[乗算出力] が
[内部ルールによる継承]
である。[出力] が
[乗算出力と同じ]
である
これらのデータ型設定を使用すると、ブロックは完全精度モードで効率的に動作します。
オーバーフロー モード — オーバーフロー モード
ラップ
(既定値) | 飽和
固定小数点演算のオーバーフロー モードを選択します。
ウィンドウ ベクトル w はこのパラメーターに従いません。常に飽和しています。
Window — ウィンドウのデータ型
Same word length as input
(既定値) | Specify word length
| Binary point scaling
| Slope and bias scaling
ウィンドウ ベクトル w の語長と小数部の長さの指定方法を選択します。
次を選択する場合:
Same word length as input
–– ウィンドウ ベクトルの要素の語長は入力の語長と同じになります。小数部の長さは、可能な限り最高の精度に自動的に設定されます。Specify word length
–– ウィンドウ ベクトルの要素の語長をビット数で入力できます。小数部の長さは、可能な限り最高の精度に自動的に設定されます。Binary point scaling
–– ウィンドウ ベクトルの要素の語長と小数部の長さをビット数で入力できます。Slope and bias scaling
–– ウィンドウ ベクトルの要素の語長 (ビット数) と勾配を入力できます。このブロックでは、勾配が 2 のべき乗でバイアスが 0 でなければなりません。
ウィンドウ ベクトルは [丸めモード] パラメーターと [オーバーフロー モード] パラメーターには従いません。常に飽和して、[Nearest]
に丸められます。
乗算出力 — 乗算出力のデータ型
Inherit via internal rule
(既定値) | Same as input
| Binary point scaling
| Slope and bias scaling
このパラメーターを使用して、乗算出力の語長と小数部の長さの指定方法を指定します。
次を選択する場合:
Inherit via internal rule
–– 乗算出力の語長と小数部の長さが自動的に計算されます。内部ルールの使用時に乗算出力の語長と小数部の長さを計算する方法の詳細については、内部ルールによる継承を参照してください。Same as input
–– これらの特性はブロックへの入力の特性と一致します。Binary point scaling
–– 乗算出力の語長と小数部の長さをビット数で入力できます。Slope and bias scaling
–– 乗算出力の語長 (ビット数) と勾配を入力できます。このブロックでは、勾配が 2 のべき乗でバイアスが 0 でなければなりません。
出力 — 出力データ型
Same as product output
(既定値) | Same as input
| Binary point scaling
| Slope and bias scaling
ブロック出力の語長と小数部の長さの指定方法を選択します。
次を選択する場合:
Same as product output
–– これらの特性は乗算出力の特性と一致します。Same as input
–– これらの特性はブロックへの入力の特性と一致します。Binary point scaling
–– 出力の語長と小数部の長さをビット数で入力できます。Slope and bias scaling
–– 出力の語長 (ビット数) と勾配を入力できます。このブロックでは、勾配が 2 のべき乗でバイアスが 0 でなければなりません。
固定小数点ツールによる変更に対してデータ型の設定をロックする — 固定小数点ツールによるデータ型のオーバーライドの回避
off
(既定値) | on
ブロック ダイアログ ボックスで指定するデータ型が固定小数点ツールによってオーバーライドされないようにするには、このパラメーターを選択します。
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
生成されたコードは特定の条件下で関数 memcpy
または関数 memset
(string.h
) に依存します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
入力が固定小数点の場合、勾配が 2 のべき乗でバイアスが 0 の符号付き整数または符号付き固定小数点でなければなりません。
次の図は、3 つの各操作モードについて、Window Function ブロック内で固定小数点信号に使用されるデータ型を示しています。
ブロックのダイアログ ボックスでウィンドウ、乗算出力および出力データ型を設定できます。
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)