Window Function
ウィンドウの計算と入力信号への適用

ライブラリ:
DSP System Toolbox /
Signal Operations
説明
Window Function ブロックには 3 つの操作モードがあり、ウィンドウの適用、ウィンドウの計算、またはウィンドウの計算と入力信号への適用が可能です。モードは [Operation] パラメーターで選択できます。各モードで、ブロックは最初に [ウィンドウのタイプ] パラメーターで指定されたウィンドウをサンプリングして、ウィンドウ ベクトル w を作成します。
例
端子
入力
入力信号。ベクトル、行列、または N 次元配列として指定します。
入力が固定小数点の場合、傾きが 2 のべき乗でバイアスが 0 の符号付き整数または符号付き固定小数点値でなければなりません。
この端子は、[Operation] を [Apply window to input]
または [Generate and apply window]
に設定した場合にのみ有効になります。
この端子は、[Operation] を [Apply window to input]
に設定した場合は名前なしになります。
データ型: single
| double
| int8
| int16
| int32
| fixed point
出力
出力信号。ベクトル、行列、または N 次元配列として返されます。
[Out] 端子は、[Operation] を次に設定した場合にのみ有効になります。
Apply window to input
–– ブロックは M 行 1 列のウィンドウ ベクトル w を計算し、それを M 行 N 列の入力に適用します。ここで、M は入力信号の行数です。Generate and apply window
–– ブロックは M 行 1 列のウィンドウ ベクトル w を生成して入力に適用します。
出力信号の次元は入力信号と同じです。詳細については、操作を参照してください。
データ型: single
| double
| int8
| int16
| int32
| fixed point
ウィンドウの出力。ベクトルとして返されます。[Operation] を [Apply window to input]
または [Generate and apply window]
に設定した場合、ウィンドウ ベクトルは入力信号の行数と同じ長さ長さになります。[Operation] を [Generate window]
に設定した場合、ウィンドウ ベクトルの長さは [ウィンドウの長さ] パラメーターによって決まります。
データ型: single
| double
| int8
| int16
| int32
| fixed point
パラメーター
メイン
Window Function ブロックには、[Operation] パラメーターを使って選択できる 3 つの操作モードがあります。各モードで、ブロックは最初に M 離散点で [ウィンドウのタイプ] パラメーターで指定されたウィンドウをサンプリングして、ウィンドウ ベクトル 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
このモードでは、ブロックは [ウィンドウの長さ] パラメーターで指定された長さ 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 列のベクトルとして扱われます。
次の表は、使用可能なウィンドウ タイプの一覧です。
ウィンドウ タイプ | 説明 |
---|---|
バートレット | バートレット ウィンドウを計算します。 w = |
ブラックマン | ブラックマン ウィンドウを計算します。 w = |
Boxcar | 箱型ウィンドウを計算します。 w = |
チェビシェフ | チェビシェフ ウィンドウを阻止帯域リップル w = |
ハミング | ハミング ウィンドウを計算します。 w = |
ハン | ハン ウィンドウ (ハニング ウィンドウとも呼ばれる) を計算します。 w = |
Hanning | 旧式です。このウィンドウ タイプは古いモデルとの互換性目的でのみ含まれています。可能な限り、 |
カイザー | カイザー ウィンドウをカイザー パラメーター w = |
テイラー | テイラー ウィンドウを計算します。 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} |
一般的なコサイン ウィンドウのウィンドウ サンプリングを指定します。
一般的なコサイン ウィンドウ ([ブラックマン]
、[ハミング]
、[ハン]
および [Hanning]
) では、ウィンドウ サンプルが周期的に計算されるか、対称的に計算されるかが [サンプリング] パラメーターによって決定されます。たとえば、[サンプリング] が [対称]
に設定されている場合、長さ M のハミング ウィンドウは次のように計算されます。
w = hamming(M) % Symmetric (aperiodic) window
[サンプリング] が Periodic
に設定されている場合、同じウィンドウは次のように計算されます。
w = hamming(M+1) % Periodic (asymmetric) window w = w(1:M)
シミュレーションでのみ調整可能 (Simulink)です。
依存関係
このパラメーターは、[ウィンドウのタイプ] パラメーターで [ブラックマン]
、[ハミング]
、[ハン]
または [Hanning]
を選択した場合にのみ表示されます。
[Generate window]
モードの場合に、ブロックのサンプル モードに [連続]
または [離散]
を指定します。[Apply window to input]
および [Generate and apply window]
モードでは、ブロックはその駆動ブロックからサンプル モードを継承します。
依存関係
このパラメーターは、[Operation] パラメーターで [Generate window]
を選択した場合にのみ表示されます。
[Operation] を [Generate window]
に設定し、[サンプル モード] を [離散]
に設定した場合に、ブロックのサンプル時間を指定します。[操作] を [Apply window to input]
および [Generate and apply window]
に設定した場合、ブロックはその駆動ブロックからサンプル時間を継承します。
依存関係
このパラメーターは、[サンプル モード] を [離散]
に設定した場合にのみ表示されます。
適用するウィンドウの長さを指定します。
依存関係
このパラメーターは、[Operation] パラメーターで [Generate window]
を選択した場合にのみ表示されます。そうでない場合は、ウィンドウ ベクトルの長さは入力の最初の次元の長さに一致するように計算されます。
阻止帯域の減衰量のレベル Rs をデシベル単位で指定します。
シミュレーションでのみ調整可能 (Simulink)です。
依存関係
このパラメーターは、[ウィンドウのタイプ] パラメーターで [チェビシェフ]
を選択した場合にのみ表示されます。
[カイザー]
ウィンドウ β パラメーターを指定します。β が上昇するとメインローブが広がり、ウィンドウの周波数振幅応答でのウィンドウのサイドローブの振幅が減少します。
シミュレーションでのみ調整可能 (Simulink)です。
依存関係
このパラメーターは、[ウィンドウのタイプ] パラメーターで [カイザー]
を選択した場合にのみ表示されます。
サイドローブの数をゼロより大きいスカラー整数値で指定します。
依存関係
このパラメーターは、[ウィンドウのタイプ] パラメーターで [テイラー]
を選択した場合にのみ表示されます。
メインローブに対するサイドローブの最大レベルをデシベル単位で指定します。このパラメーターはゼロ以下のスカラーでなければなりません。この既定値 –30 は、メインローブのピークから 30 dB 低い位置にピークがあるサイドローブを生成します。
依存関係
このパラメーターは、[ウィンドウのタイプ] パラメーターで [テイラー]
を選択した場合にのみ表示されます。
ブロックで計算されるユーザー定義のウィンドウ関数の名前を指定します。カスタム ウィンドウ関数から返される出力ウィンドウ ベクトルのデータ型は double
でなければなりません。
依存関係
このパラメーターは、[ウィンドウのタイプ] パラメーターで [ユーザー定義]
を選択した場合にのみ表示されます。
ユーザー定義ウィンドウでウィンドウの長さ以外のパラメーターが必要な場合、[Cell array of additional arguments] パラメーターを有効にするためにオンにします。
依存関係
このパラメーターは、[ウィンドウのタイプ] パラメーターで [ユーザー定義]
を選択した場合にのみ表示されます。
ユーザー定義ウィンドウ関数でウィンドウの長さ以外に必要とされる追加パラメーターを指定します。
依存関係
このパラメーターは、[Specify additional arguments to the hamming function] パラメーターを選択した場合にのみ使用できます。エントリは cell 配列でなければなりません。
データ型
[メイン] タブの [Operation] パラメーターを [Generate window]
に設定した場合、次のパラメーターが表示されます。
ウィンドウのデータ型を次のいずれかの方法で指定します。
double
single
固定小数点
–– ウィンドウのデータ型とスケーリングを [符号付き]、[語長]、[出力での小数部の長さを次に設定] および [小数部の長さ] の各パラメーターで指定します。ユーザー定義
–– ウィンドウのデータ型とスケーリングを [User-defined data type]、[出力での小数部の長さを次に設定] および [小数部の長さ] の各パラメーターで指定します。逆伝播による継承
–– ウィンドウのデータ型とスケーリングを次のブロックに一致するように設定します。
選択すると、符号付き固定小数点信号を出力します。それ以外の場合は、信号は符号なしになります。
依存関係
このパラメーターは、[ウィンドウのデータ型] を [Fixed-point]
に設定した場合にのみ表示されます。
固定小数点のウィンドウ データ型の語長をビット数で指定します。
依存関係
このパラメーターは、[ウィンドウのデータ型] を [Fixed-point]
に設定した場合にのみ表示されます。
組み込みまたは固定小数点のデータ型を指定します。固定小数点のデータ型の指定には、関数 fixdt
(Simulink) を使用できます。
依存関係
このパラメーターは、[ウィンドウのデータ型] を [User-defined]
に設定した場合にのみ表示されます。
次のいずれかの方法を使用して、固定小数点のウィンドウ データ型のスケーリングを指定します。
[最高精度]
を選択すると、出力信号が可能な限り最高の精度となるよう、自動的にウィンドウのデータ型のスケーリングが行われます。[ユーザー定義]
を選択し、[小数部の長さ] パラメーターでウィンドウのデータ型のスケーリングを指定します。
依存関係
このパラメーターは、[ウィンドウのデータ型] を [Fixed-point]
または [User-defined]
に設定し、指定したウィンドウ データ型が固定小数点のデータ型である場合にのみ表示されます。
固定小数点のウィンドウ データ型の小数部の長さをビット数で指定します。
依存関係
このパラメーターは、[ウィンドウのデータ型] を [Fixed-point]
または [User-defined]
に設定し、[出力での小数部の長さを次に設定] を [User-defined]
に設定した場合にのみ表示されます。
[メイン] タブの [Operation] パラメーターを [Apply window to input]
または [Generate and apply window]
に設定した場合、次のパラメーターが表示されます。
固定小数点演算の丸めモードを選択します。
ウィンドウ ベクトル w はこのパラメーターに従いません。常に [最も近い正の整数方向]
に丸めます。
メモ
[丸めモード] と [オーバーフロー モード] の設定は、次の両方の条件が存在する場合、数値結果には影響しません。
[乗算出力] が
[内部ルールによる継承]
である。[出力] が
[乗算出力と同じ]
である
これらのデータ型設定を使用すると、ブロックは完全精度モードで効率的に動作します。
固定小数点演算のオーバーフロー モードを選択します。
ウィンドウ ベクトル w はこのパラメーターに従いません。常に飽和しています。
ウィンドウ ベクトル w の語長と小数部の長さの指定方法を選択します。
次を選択する場合:
入力と同じ語長
–– ウィンドウ ベクトルの要素の語長は入力の語長と同じになります。小数部の長さは、可能な限り最高の精度に自動的に設定されます。語長の指定
–– ウィンドウ ベクトルの要素の語長をビット数で入力できます。小数部の長さは、可能な限り最高の精度に自動的に設定されます。2 進小数点スケーリング
–– ウィンドウ ベクトルの要素の語長と小数部の長さをビット数で入力できます。傾きとバイアスのスケーリング
–– ウィンドウ ベクトルの要素の語長 (ビット数) と傾きを入力できます。このブロックでは、傾きが 2 のべき乗でバイアスが 0 でなければなりません。
ウィンドウ ベクトルは [丸めモード] パラメーターと [オーバーフロー モード] パラメーターには従いません。常に飽和して、[最も近い正の整数方向]
に丸められます。
このパラメーターを使用して、乗算出力の語長と小数部の長さの指定方法を指定します。
次を選択する場合:
内部ルールによる継承
–– 乗算出力の語長と小数部の長さが自動的に計算されます。内部ルールの使用時に乗算出力の語長と小数部の長さを計算する方法の詳細については、内部ルールによる継承を参照してください。入力と同じ
–– これらの特性はブロックへの入力の特性と一致します。2 進小数点スケーリング
–– 乗算出力の語長と小数部の長さをビット数で入力できます。傾きとバイアスのスケーリング
–– 乗算出力の語長 (ビット数) と傾きを入力できます。このブロックでは、傾きが 2 のべき乗でバイアスが 0 でなければなりません。
ブロック出力の語長と小数部の長さの指定方法を選択します。
次を選択する場合:
乗算出力と同じ
–– これらの特性は乗算出力の特性と一致します。入力と同じ
–– これらの特性はブロックへの入力の特性と一致します。2 進小数点スケーリング
–– 出力の語長と小数部の長さをビット数で入力できます。傾きとバイアスのスケーリング
–– 出力の語長 (ビット数) と傾きを入力できます。このブロックでは、傾きが 2 のべき乗でバイアスが 0 でなければなりません。
ブロック ダイアログ ボックスで指定するデータ型が固定小数点ツールによってオーバーライドされないようにするには、このパラメーターを選択します。
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
詳細
次の図は、3 つの各操作モードについて、Window Function ブロック内で固定小数点信号に使用されるデータ型を示しています。
ブロックのダイアログ ボックスでウィンドウ、乗算出力および出力データ型を設定できます。
拡張機能
生成されたコードは特定の条件下で関数 memcpy
または関数 memset
(string.h
) に依存します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2006a より前に導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)