Difference
指定した入力の次元に沿った要素単位での差分の計算

ライブラリ:
DSP System Toolbox /
Math Functions /
Math Operations
説明
Difference ブロックは、入力配列 u の行、列または指定した次元において隣接する要素の間の差分を計算します。現在の入力内のみでの差分、または連続する入力全体での差分 (累積差分) を計算するようにブロックを構成することができます。
端子
入力
Port_1 — 入力信号
ベクトル | 行列 | N 次元配列
入力信号。ベクトル、行列、または N 次元配列として指定します。
データ型: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| fixed point
複素数のサポート: あり
出力
Port_1 — 出力信号
ベクトル | 行列 | N 次元配列
隣接する行、列または入力の指定した次元の差分。ベクトル、行列または N 次元配列として返されます。
出力のデータ型と実数/複素数は入力と同じになりますが、差分が計算された次元は 1 つ小さくなります。その他の次元の長さは変わりません。
出力が計算される方法の詳細については、Difference along, Difference alongDifference alongDifference alongパラメーターを参照してください。
データ型: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| fixed point
複素数のサポート: あり
パラメーター
[メイン] タブ
Running difference — 累積差分
No
(既定値) | Yes
ブロックが累積差分を計算するかどうかを指定します。
No
–– ブロックは現在の入力の指定した次元に隣接する要素間の差分を計算します。このモードでは、ブロックは Difference along, Difference alongDifference alongDifference along パラメーターに基づき、入力の列、行または指定した次元に沿って差分を計算できます。Yes
–– ブロックは入力の列に沿った累積差分を計算します。詳細は、連続処理を参照してください。
Difference along — 差分の次元
Columns
(既定値) | Rows
| Specified dimension
入力の列、行または指定した次元に沿ってブロックが差分を計算するかどうかを指定します。
Columns
–– ブロックは入力の各列で隣接する要素間の差分を計算します。相当する MATLAB® コードは次のとおりです。y = diff(u)
M 行 N 列の入力の場合、出力は (M – 1) 行 N 列の行列となり、その j 番目の列は次の要素をもちます。
Rows
–– ブロックは入力の各行で隣接する要素間の差分を計算します。相当する MATLAB コードは次のとおりです。y = diff(u,[],2)
出力は M 行 (N-1) 列の行列となり、その i 番目の行は次の要素をもちます。
Specified dimension
–– ブロックの動作は前述した行単位の差分を拡張した形になります。ブロックは [Dimension] パラメーターで指定する次元に沿って、隣接する要素間の差分を計算します。相当する MATLAB コードは次のとおりです。y = diff(u,[],d)
ここで、d は次元です。
出力は指定した次元での長さが入力の長さよりも 1 つ少ない配列となり、他の次元での長さは変更されません。たとえば、要素 u(i,j,k,l) をもつ M x N x P x R の入力配列で、[Dimension] パラメーターの値が
3
の場合を考えます。ブロックの出力は次の要素をもつ M x N x (P–1) x R の配列となります。
Dimension — 1 ベースの次元
1
(既定値) | 2
| 3
要素単位での差分を計算する対象の 1 ベースの次元を指定します。
依存関係
このパラメーターを有効にするには、[Difference along] パラメーターに [Specified dimension]
を選択します。
[データ型] タブ
丸めモード — 丸め演算の方法
Floor
(既定値) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
整数オーバーフローで飽和 — オーバーフロー アクションの方法
off (既定値) | on
このパラメーターをオンにすると、ブロックは固定小数点演算の結果を飽和させます。このパラメーターをオフにすると、ブロックは固定小数点演算の結果をラップします。saturate
および wrap
の詳細については、固定小数点演算のオーバーフロー モードを参照してください。
アキュムレータ — アキュムレータのデータ型
Inherit: Inherit via internal rule
(既定値) | Inherit: Same as input
| fixdt([],16,0)
[アキュムレータ] は、Difference ブロックでの累積操作の出力のデータ型を指定します。
Inherit: Inherit via internal rule
— ブロックは内部ルールに基づきアキュムレータのデータ型を継承します。このルールの詳細は、内部ルールによる継承を参照してください。Inherit: Same as input
— ブロックはアキュムレータのデータ型を入力のデータ型と同じになるように指定します。fixdt([],16,0)
— ブロックは語長が 16 ビットで小数部の長さが 0 である自動符号付きの 2 進小数点のスケーリングされた固定小数点データ型を指定します。
[アキュムレータ] のデータ型は、[データ型アシスタント] を使用して設定することもできます。アシスタントを使用するには、[データ型アシスタントを表示] ボタン をクリックします。
データ型アシスタントの詳細については、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
このブロックのアキュムレータ データ型の使い方を示す図は、拡張機能の「固定小数点の変換」を参照してください。
出力 — 出力データ型
Inherit: Same as accumulator
(既定値) | Inherit: Same as input
| fixdt([],16,0)
[出力] は、Difference ブロックの出力のデータ型を指定します。
Inherit: Same as input
— ブロックは出力のデータ型を入力のデータ型と同じになるように指定します。Inherit: Same as accumulator
— ブロックは出力のデータ型をアキュムレータのデータ型と同じになるように指定します。fixdt([],16,0)
— ブロックは語長が 16 ビットで小数部の長さが 0 である自動符号付きの 2 進小数点のスケーリングされた固定小数点データ型を指定します。
[出力] のデータ型は、[データ型アシスタント] を使用して設定することもできます。アシスタントを使用するには、[データ型アシスタントを表示] ボタン をクリックします。
詳細は、信号のデータ型の制御 (Simulink)を参照してください。
出力データ型の詳細については、拡張機能の「固定小数点の変換」を参照してください。
出力の [最小値] — ブロックが出力可能な最小値
[]
(既定値) | スカラー
ブロックが出力可能な最小値を指定します。Simulink では、この最小値を使用して次を行います。
シミュレーション範囲のチェック。信号範囲の指定 (Simulink)を参照してください。
固定小数点データ型の自動スケーリング。
出力の [最大値] — ブロックが出力可能な最大値
[]
(既定値) | スカラー
ブロックが出力可能な最大値を指定します。Simulink では、この最大値を使用して次を行います。
シミュレーション範囲のチェック。信号範囲の指定 (Simulink)を参照してください。
固定小数点データ型の自動スケーリング。
固定小数点ツールによる変更に対してデータ型の設定をロックする — 固定小数点ツールによるデータ型のオーバーライドの回避
off
(既定値) | on
ブロック ダイアログ ボックスで指定するデータ型が固定小数点ツールによってオーバーライドされないようにするには、このパラメーターを選択します。
メモ
浮動小数点の継承は、このペインで定義されるデータ型の設定よりも優先されます。入力が浮動小数点の場合、ブロックはこれらの設定を無視し、すべての内部データ型は浮動小数点になります。
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
詳細
連続処理
[Running difference] パラメーターを [Yes]
に設定すると、ブロックは入力の列に沿った累積差分を計算します。
M 行 N 列の入力行列の場合、出力は M 行 N 列の行列となり、その j 番目の列は次の要素をもちます。
[Running difference] モードでは、各列の出力の最初の要素は、最初の入力要素から前のフレームにおいて最後の入力要素を引いたものになります。最初のフレームでは、ブロックは最初の入力要素からゼロを減算します。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
次の図では、Difference ブロック内で固定小数点信号に使用されるデータ型を説明します。
パラメーターで説明されているように、アキュムレータおよび出力データ型をブロック ダイアログで設定することができます。
バージョン履歴
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)