Minimum
入力または入力シーケンスの最小値

ライブラリ:
DSP System Toolbox /
Statistics
DSP System Toolbox HDL Support /
Statistics
説明
Minimum ブロックは、入力の各行または各列の最小の要素の値と位置や、入力の指定した次元のベクトルにおける最小の要素の値と位置を特定します。また、入力全体の最小値を計算することもできます。Minimum ブロックは一定期間における入力シーケンスの最小値を追跡することもできます。[モード] パラメーターは、ブロックの演算モードを指定します。これは、次のいずれかに設定できます。
値
— ブロックは、指定した次元の最小値を出力します。インデックス
— ブロックは、指定した次元の最小値のインデックス配列を出力します。値とインデックス
— ブロックは、指定した次元の最小値および対応するインデックス配列を出力します。ランニング
— ブロックは一定期間における入力シーケンスの最小値を追跡します。
次元は [最小値を求める対象] パラメーターを使用して指定できます。
メモ
Minimum ブロックの "ランニング" モードは将来のリリースで削除される予定です。Simulink® でランニング最小値を計算するには、代わりに Moving Minimum ブロックを使用してください。
例
端子
入力
このブロックは、実数値または複素数値のマルチチャネルの多次元入力を受け入れます。入力は浮動小数点、固定小数点または Boolean を受け入れます。実数の固定小数点入力は符号付きまたは符号なしです。複素数の固定小数点入力は符号付きでなければなりません。
この端子は、[モード] パラメーターを [ランニング]
に設定して [リセット端子] パラメーターを [なし]
以外のオプションに設定するまでは名前なしになります。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
複素数のサポート: あり
ブロックにランニング最小値をリセットさせるリセット イベントを指定します。Rst 入力のサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。
依存関係
この端子を有効にするには、[モード] パラメーターを [ランニング]
に設定して [リセット端子] パラメーターを [なし]
以外のオプションに設定します。
データ型: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
出力
最小値のデータ型は入力のデータ型と一致します。
[モード] パラメーターが [値とインデックス]
または [値]
のいずれかに設定されると、以下が適用されます。
ブロックが最小値を計算する次元のサイズは 1 です。その他の次元すべてのサイズは、入力配列の次元のサイズと一致します。たとえば、入力が M x N x P 配列で、次元が
1
に設定されている場合、ブロックは 1 x N x P 配列を出力します。次元が3
に設定されていると、ブロックは 2 次元の M 行 N 列の行列を出力します。たとえば、入力が M 行 N 列の行列で、次元が
1
に設定されている場合、ブロックは 1 行 N 列の行列を出力します。
入力全体での最小値を計算するようにブロックに指定すると、ブロックはスカラーを出力します。
[モード] パラメーターを [ランニング]
に設定すると、ブロックは M 行 N 列の入力の時間系列における各チャネルの最小値を追跡します。このモードでは、[入力処理] パラメーターの値も次のいずれかの値のように指定しなければなりません。
チャネルとしての要素 (サンプル ベース)
— ブロックは入力の各要素を別々のチャネルとして扱います。サイズ M x N x P の 3 次元の入力信号の場合、ブロックは M x N x P の配列を出力します。出力の各 yijk 要素には、最後のリセット以降のすべての入力に対する要素 uijk で観測される最小値が含まれます。リセット イベントが発生すると、現在のフレームのランニング最小値 yijk が要素 uijk にリセットされます。
チャネルとしての列 (フレーム ベース)
— ブロックは入力の各列を別々のチャネルとして扱います。このオプションは、N > 2 の N 次元の入力信号をサポートしません。サイズ M 行 N 列の 2 次元の入力信号の場合、ブロックは M 行 N 列の行列を出力します。出力の各要素 yij には、最後のリセット以降、現在の入力の要素 uij が含まれる時点までのすべての入力のうちの j 番目の列で観測される最小値が含まれます。リセット イベントが発生すると、各チャネルのランニング最小値は、現在の入力フレームにおける現在の入力サンプルまでを含むすべてのサンプルの最小値になります。
オプションの [Rst] 端子でリセット イベントが検出されるたびに、ブロックはランニング最小値をリセットします。リセットのサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。
依存関係
この端子を有効にするには、[モード] パラメーターを [値とインデックス]
または [値]
のいずれかに設定します。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
複素数のサポート: あり
入力が double
の場合、インデックス値も double
です。そうでない場合、インデックス値は uint32
です。
依存関係
この端子を有効にするには、[モード] パラメーターを [値とインデックス]
または [インデックス]
のいずれかに設定します。
データ型: double
| uint32
パラメーター
[メイン] タブ
以下は [モード] パラメーターの各設定です。
値
— ブロックは、入力の各行または各列の最小値や入力の指定した次元のベクトルにおける最小値、または各サンプル時間の入力全体の最小値を計算して、配列 y を出力します。y の各要素は、対応する列、行、ベクトルまたは入力全体の最小値になります。出力 y は、[最小値を求める対象] パラメーターの設定により異なります。サイズ M x N x P の 3 次元の入力信号について考えてみましょう。以下は [最小値を求める対象] の各設定です。各行
— 各サンプル時間での出力 y は M×1×P 配列で構成され、各要素には入力の 2 番目の次元に対する各ベクトルの最小値が含まれます。M 行 N 列の行列である入力の場合、各サンプル時間での出力は M 行 1 列の列ベクトルになります。各列
— 各サンプル時間での出力 y は 1×N×P の配列で構成され、各要素には入力の 1 番目の次元に対する各ベクトルの最小値が含まれます。M 行 N 列の行列である入力の場合、各サンプル時間での出力は 1 行 N 列の行ベクトルになります。このモードでは、ブロックは長さ M の方向性をもたないベクトル入力を M 行 1 列の列ベクトルとして扱います。
入力全体
— 各サンプル時間での出力 y は M×N×P の入力行列の最小値を含むスカラーです。指定した次元
— 各サンプル時間での出力 y は [次元] パラメーターの値によって異なります。[次元] が1
に設定されると、出力は[各列]
を選択した場合と同じになります。[次元] が2
に設定されると、出力は[各行]
を選択した場合と同じになります。[次元] が3
に設定されると、各サンプル時間での出力は入力の 3 番目の次元に対する各ベクトルの最小値を含む M 行 N 列の行列となります。
複素数入力
複素数入力の場合、ブロックは、入力の各行または各列の値や入力の指定した次元のベクトルにおける値、または次の図の最小振幅の 2 乗をもつ入力全体の値を選択します。複素数値 の場合、振幅の 2 乗は です。
インデックス
— ブロックは、入力の各行または各列の最小値や入力の指定した次元のベクトルにおける最小値、または入力全体の最小値を計算して、インデックス配列 I を出力します。I の各要素は、対応する列、行、ベクトルまたは入力全体の最小値にインデックス付けする整数です。出力 I は、[最小値を求める対象] パラメーターの設定により異なります。サイズ M×N×P の 3 次元の入力信号について考えてみましょう。各行
— 各サンプル時間での出力 I は M×1×P 配列で構成され、各要素には入力の 2 番目の次元に対する各ベクトルの最小値のインデックスが含まれます。M 行 N 列の行列である入力の場合、各サンプル時間での出力は M 行 1 列の列ベクトルになります。各列
— 各サンプル時間での出力 I は 1×N×P の配列で構成され、各要素には入力の 1 番目の次元に対する各ベクトルの最小値のインデックスが含まれます。M 行 N 列の行列である入力の場合、各サンプル時間での出力は 1 行 N 列の行ベクトルになります。このモードでは、ブロックは長さ M の方向性をもたないベクトル入力を M 行 1 列の列ベクトルとして扱います。
入力全体
— 各サンプル時間での出力 I は M×N×P の入力行列の最小値の位置を含む 1 行 3 列のベクトルです。M 行 N 列の行列である入力の場合、出力は 1 行 2 列のベクトルになります。指定した次元
— 各サンプル時間での出力 I は [次元] パラメーターの値によって異なります。[次元] が 1 に設定されると、出力は[各列]
を選択した場合と同じになります。[次元] が 2 に設定されると、出力は[各行]
を選択した場合と同じになります。[次元] が 3 に設定されると、各サンプル時間での出力は入力の 3 番目の次元に対する各ベクトルの最小値のインデックスを含む M 行 N 列の行列となります。
最小値が複数回出現する場合、計算されたインデックスは最初の出現に対応します。たとえば、入力が列ベクトル
[3 2 1 2 3]'
である場合、[各列]
がオンになっていると、最小値の計算された 1 ベースのインデックスは5
ではなく1
です。値とインデックス
— ブロックは、入力の各行または各列の最小値や入力の指定した次元のベクトルにおける最小値、または入力全体の最小値と対応するインデックス配列 I を出力します。ランニング
— ブロックは、M 行 N 列の入力の時間系列における各チャネルの最小値を追跡します。オプションの[Rst]
端子でリセット イベントが検出されるたびに、ブロックはランニング最小値をリセットします。リセットのサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。このモードでは、[入力処理] パラメーターの値も次のいずれかの値のように指定しなければなりません。チャネルとしての要素 (サンプル ベース)
— ブロックは入力の各要素を別々のチャネルとして扱います。サイズ M x N x P の 3 次元の入力信号の場合、ブロックは M x N x P の配列を出力します。出力の各 yijk 要素には、最後のリセット以降のすべての入力に対する要素 uijk で観測される最小値が含まれます。リセット イベントが発生すると、現在のフレームのランニング最小値 yijk が要素 uijk にリセットされます。
チャネルとしての列 (フレーム ベース)
— ブロックは入力の各列を別々のチャネルとして扱います。このオプションは、N > 2 の N 次元の入力信号をサポートしません。サイズ M 行 N 列の 2 次元の入力信号の場合、ブロックは M 行 N 列の行列を出力します。出力の各要素 yij には、最後のリセット以降、現在の入力の要素 uij が含まれる時点までのすべての入力のうちの j 番目の列で観測される最小値が含まれます。リセット イベントが発生すると、各チャネルのランニング最小値は、現在の入力フレームにおける現在の入力サンプルまでを含むすべてのサンプルの最小値になります。
オプションの [Rst] 端子でリセット イベントが検出されるたびに、ブロックはランニング最小値をリセットします。リセットのサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。
可変サイズ入力のランニング モード
入力が可変サイズ信号のときに [モード] を
[ランニング]
に設定すると、次のようになります。[入力処理] パラメーターを
[チャネルとしての要素 (サンプル ベース)]
に設定すると、状態がリセットされます。[入力処理] パラメーターを
[チャネルとしての列 (フレーム ベース)]
に設定すると、次のようになります。入力サイズの相違がチャネル (列) の数に関する場合、状態がリセットされます。
入力サイズの相違がチャネルの長さ (行数) に関する場合、リセットは行われず実行処理が通常どおりに実行されます。
最小値のインデックスが 1 ベースまたは 0 ベースの番号付けを使用して報告されるかを指定します。
依存関係
このパラメーターを有効にするには、[モード] パラメーターを [インデックス]
または [値とインデックス]
のいずれかに設定します。
各列
— ブロックは各列の最小値を出力します。各行
— ブロックは各行の最小値を出力します。入力全体
— ブロックは入力全体の最小値を出力します。指定した次元
— ブロックは [次元] パラメーターで指定された次元の最小値を出力します。
依存関係
このパラメーターを有効にするには、[モード] パラメーターを [値とインデックス]
、[値]
または [インデックス]
に設定します。
ブロックが最小値を計算する対象となる入力信号の次元 (1 ベースの値) を指定します。このパラメーターの値は 0 より大きく、入力信号の次元数未満でなければなりません。
依存関係
このパラメーターを有効にするには、[最小値を求める対象] を [指定した次元]
に設定します。
チャネルとしての列 (フレーム ベース)
— ブロックは入力の各列を別々のチャネルとして扱います。このオプションは、N > 2 の N 次元の入力信号をサポートしません。サイズ M 行 N 列の 2 次元の入力信号の場合、ブロックは M 行 N 列の行列を出力します。出力の各要素 yij には、最後のリセット以降、現在の入力の要素 uij が含まれる時点までのすべての入力のうちの j 番目の列で観測される最小値が含まれます。リセット イベントが発生すると、各チャネルのランニング最小値は、現在の入力フレームにおける現在の入力サンプルまでを含むすべてのサンプルの最小値になります。
チャネルとしての要素 (サンプル ベース)
— ブロックは入力の各要素を別々のチャネルとして扱います。サイズ M x N x P の 3 次元の入力信号の場合、ブロックは M x N x P の配列を出力します。出力の各 yijk 要素には、最後のリセット以降のすべての入力に対する要素 uijk で観測される最小値が含まれます。リセット イベントが発生すると、現在のフレームのランニング最小値 yijk が要素 uijk にリセットされます。
依存関係
このパラメーターを有効にするには、[モード] を [ランニング]
に設定します。
オプションの [Rst] 端子でリセット イベントが検出されるたびに、ブロックはランニング最小値をリセットします。リセットのサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。
None
— [Rst] 端子を無効にします。立ち上がりエッジ
— Rst の入力が次のいずれかを行うときにリセット操作をトリガーします。負の値から正の値またはゼロに立ち上がる。
ゼロから正の値へ立ち上がる。この場合、立ち上がりは負の値からゼロへの立ち上がりと連続していません。
立ち下がりエッジ
— Rst の入力が次のいずれかを行うときにリセット操作をトリガーします。正の値から負の値またはゼロに立ち下がる。
ゼロから負の値に立ち下がる。この場合、立ち下がりは正の値からゼロへの立ち下りと連続していません。
両エッジ
— [Rst] の入力が[立ち上がりエッジ]
または[立ち下がりエッジ]
の場合にリセット操作をトリガーします。非ゼロのサンプル
— Rst 入力が非ゼロの各サンプル時間でリセット操作をトリガーします。メモ
Simulink
[マルチタスク]
モードでシミュレーションを実行すると、リセット信号は 1 サンプルのレイテンシをもちます。したがって、ブロックでリセット イベントが検知された場合、ブロックがリセットを適用する前にリセット端子で 1 サンプルの遅延が発生します。レイテンシと Simulink タスク モードの詳細については、Excess Algorithmic Delay (Tasking Latency)と時間ベースのスケジューリングとコード生成 (Simulink Coder)を参照してください。
依存関係
このパラメーターを有効にするには、[モード] を [ランニング]
に設定します。
[データ型] タブ
メモ
これらのパラメーターを使用するには、データ入力が複素数の固定小数点でなければなりません。[メイン] タブの [モード] パラメーターで説明されているように、比較が行われる前に、そのような入力の実数部と虚数部の二乗和が形成されます。複素数入力の実数部と虚数部の二乗の結果は乗算出力のデータ型に配置されます。二乗和の結果はアキュムレータのデータ型に配置されます。その他の種類の入力の場合、これらのパラメーターは無視されます。
このパラメーターをオンにすると、ブロックは固定小数点演算の結果を飽和させます。このパラメーターをオフにすると、ブロックは固定小数点演算の結果をラップします。saturate
および wrap
の詳細については、固定小数点演算のオーバーフロー モードを参照してください。
[乗算出力] は、Minimum ブロックでの乗算操作の出力のデータ型を指定します。乗算出力データ型の詳細については、乗算のデータ型を参照してください。
継承: 入力と同じ
— ブロックは乗算出力のデータ型を入力のデータ型と同じになるように指定します。fixdt([],16,0)
— ブロックは語長が 16 ビットで小数部の長さが 0 である自動符号付きの 2 進小数点のスケーリングされた固定小数点データ型を指定します。
[乗算出力] のデータ型は、[データ型アシスタント] を使用して設定することもできます。アシスタントを使用するには、[データ型アシスタントを表示] ボタン をクリックします。
データ型アシスタントの詳細については、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
[アキュムレータ] は、Minimum ブロックでの累積演算の出力のデータ型を指定します。
継承: 乗算出力と同じ
— ブロックはアキュムレータのデータ型を乗算出力のデータ型と同じになるように指定します。継承: 入力と同じ
— ブロックはアキュムレータのデータ型を入力のデータ型と同じになるように指定します。fixdt([],16,0)
— ブロックは語長が 16 ビットで小数部の長さが 0 である自動符号付きの 2 進小数点のスケーリングされた固定小数点データ型を指定します。
[アキュムレータ] のデータ型は、[データ型アシスタント] を使用して設定することもできます。アシスタントを使用するには、[データ型アシスタントを表示] ボタン をクリックします。
データ型アシスタントの詳細については、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
ブロック ダイアログ ボックスで指定するデータ型が固定小数点ツールによってオーバーライドされないようにするには、このパラメーターを選択します。
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
アルゴリズム
[モード] を [値]
、[インデックス]
または [値とインデックス]
のいずれかに設定して次元を指定すると、このブロックの結果は MATLAB® の関数 min
を [y,I] = min(u,[],D)
の形式で呼び出したときと同じになります。
u
はデータ入力です。D
は次元です。y
は最小値です。I
は最小値のインデックスです。
入力全体の最小値は、関数 min
を [y,I] = min(u(:))
の形式で呼び出した場合と同じになります。
[モード] を [ランニング]
に、[入力処理] を [チャネルとしての列 (フレーム ベース)]
に設定した場合、ブロックは入力の各列を別々のチャネルとして扱います。この例では、ブロックは次のいずれかの設定で、フレーム サイズが 3 の 2 チャネル信号を処理します。
ブロックは前回のリセット後の各チャネルの最小値を出力します。t = 2 で、リセット イベントが発生します。6 や 2 は前回のリセット イベント以降の最小値だった 1 より大きいですが、2 番目の列の最小値は 6 に変わってから 2 に変わります。
[モード] を [ランニング]
に、[入力処理] を [チャネルとしての要素 (サンプル ベース)]
に設定した場合、ブロックは入力の各要素を別々のチャネルとして扱います。この例では、ブロックは次のいずれかの設定で、フレーム サイズが 3 の 2 チャネル信号を処理します。
出力の各要素 yij には、最後のリセット以降のすべての入力に対する要素 uij で観測される最小値が含まれます。t = 2 で、リセット イベントが発生します。リセット イベントが発生すると、現在のフレームのランニング最小値 yij が要素 uij にリセットされます。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
HDL Coder™ は、HDL の実装および合成ロジックに影響を与える、追加の構成オプションを提供します。
HDL コード生成の場合、[In] 端子はベクトルでなければなりません。その場合、出力の [Val] 端子と [Idx] 端子はスカラーになります。
このブロックには、生成されるコードのレイテンシが長くなる複数サイクルの実装があります。レイテンシの増加を調べるには、生成されたモデルまたは検証モデルを確認します。生成されたモデルと検証モデル (HDL Coder)を参照してください。
アーキテクチャ | レイテンシの追加サイクル | 説明 |
---|---|---|
既定の ツリー | 0 | 比較器のツリー構造を生成します。 |
ConstrainedOutputPipeline | 設計内で既存の遅延を移動することによって出力に配置するレジスタの数。分散型パイプラインは、これらのレジスタを再分散しません。既定の設定は |
InputPipeline | 生成コードに挿入する入力パイプライン ステージの数。分散型パイプラインと制約付き出力パイプラインは、これらのレジスタを移動できます。既定の設定は |
OutputPipeline | 生成コードに挿入する出力パイプライン ステージの数。分散型パイプラインと制約付き出力パイプラインは、これらのレジスタを移動できます。既定の設定は |
InstantiateStages | VHDL® の |
SerialPartition | 各パーティションの長さが含まれているベクトルによって Cascade serial 実装のパーティションを指定します。既定の設定では、最少段数が使用されます。SerialPartition (HDL Coder)も参照してください。 |
バージョン履歴
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)