最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Sort

入力要素を値で並べ替え

  • ライブラリ:
  • DSP System Toolbox / Statistics

説明

Sort ブロックは、各チャネル (列) における入力要素の値をランク付けし、[Sort order] の指定に基づいて [Ascending] または [Descending] のいずれかの順序で並べ替えます。複素数入力は、入力の実数部と虚数部の二乗和で表される大きさを基準に並べ替えられます。[Sort algorithm] として [Quick sort] または [Insertion sort] のどちらかを選択できます。簡易並べ替えは再帰型の並べ替え方法を使用するアルゴリズムで、要素の数が 32 個を超える場合はこのアルゴリズムの方が高速です。挿入並べ替えは非再帰型の方法を使用するアルゴリズムで、要素の数が 32 個未満の場合はこのアルゴリズムの方が高速です。コードの生成時に、挿入並べ替えアルゴリズムを使用して再帰関数呼び出しを回避します。

[Mode] パラメーターは、ブロックの動作モードを指定します。[Value][Index][Value and Index] のいずれかに設定できます。

端子

入力

すべて展開する

このブロックは、実数値または複素数値のマルチチャネル入力を受け入れます。入力データ型は、勾配が 2 のべき乗でバイアスが 0 の倍精度、単精度、整数、固定小数点のいずれかでなければなりません。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fixed point
複素数のサポート: あり

出力

すべて展開する

ブロックは各チャネルでデータを並べ替え、並べ替えられたデータをこの端子から出力します。並べ替えられたデータのサイズ、データ型、実数/複素数は入力データと一致します。複素数入力の場合、ブロックは大きさを基準に並べ替えます。

依存関係

この端子を有効にするには、[Mode] パラメーターを [Value and index] または [Value] に設定します。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fixed point
複素数のサポート: あり

この端子の出力には、並べ替えられたデータのインデックスが含まれます。

依存関係

この端子を有効にするには、[Mode] パラメーターを [Value and index] または [Index] に設定します。

データ型: uint32

パラメーター

すべて展開する

[メイン] タブ

以下は [Mode] パラメーターの各設定です。

  • Value — ブロックは M 行 N 列の入力行列の各チャネルの要素を [Sort order] パラメーターの指定に基づいて昇順または降順に並べ替えます。各サンプル時間での出力 Val は、並べ替えられた入力の列を含む M 行 N 列の行列になります。

    複素数入力の場合、ブロックは大きさを基準に並べ替えます。

  • Index — ブロックは M 行 N 列の入力行列の各チャネルの要素を並べ替え、インデックス配列 I を出力します。I の各要素は、入力の対応する列における並べ替えられた値のインデックスを示す uint32 型の整数になります。

  • Value and index — ブロックは入力データの並べ替えられた値 Val とインデックス配列 I の対応するインデックスを出力します。

入力データを昇順または降順のどちらで並べ替えるかを指定します。

簡易並べ替えは再帰型の並べ替え方法を使用するアルゴリズムで、要素の数が 32 個を超える場合はこのアルゴリズムの方が高速です。挿入並べ替えは非再帰型の方法を使用するアルゴリズムで、要素の数が 32 個未満の場合はこのアルゴリズムの方が高速です。コードの生成時に再帰的関数呼び出しを避けるには、挿入並べ替えアルゴリズムを使用します。

[データ型] タブ

メモ

これらのパラメーターを使用するには、データ入力が複素数の固定小数点でなければなりません。それ以外の入力の場合、[データ型] タブのパラメーターは無視されます。

固定小数点演算の丸めモードを指定します。詳細については、丸めモードを参照してください。

このパラメーターをオンにすると、ブロックは固定小数点演算の結果を飽和させます。このパラメーターをオフにすると、ブロックは固定小数点演算の結果をラップします。saturate および wrap の詳細については、固定小数点演算のオーバーフロー モードを参照してください。

複素数入力の実数部と虚数部の二乗は [乗算出力] のデータ型で保存されます。

このパラメーターは以下のように設定できます。

  • Inherit: Same as input — 乗算出力のデータ型は入力のデータ型と同じです。

  • fixdt([],16,0) — 乗算出力のデータ型は、語長が 16 ビットで小数部の長さが 0 である自動符号付き 2 進小数点のスケーリングされた固定小数点データ型です。

[乗算出力] のデータ型は、[データ型アシスタント] を使用して設定することもできます。アシスタントを使用するには、[データ型アシスタントを表示] ボタン をクリックします。

データ型アシスタントの詳細については、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。

複素数入力の実数部と虚数部の二乗和の結果は [アキュムレータ] のデータ型で保存されます。

このパラメーターは以下のように設定できます。

  • Inherit: Same as product output — アキュムレータのデータ型は乗算出力のデータ型と同じです。

  • Inherit: Same as input — アキュムレータのデータ型は入力のデータ型と同じです。

  • fixdt([],16,0) — アキュムレータのデータ型は、語長が 16 ビットで小数部の長さが 0 である自動符号付き 2 進小数点のスケーリングされた固定小数点データ型です。

[アキュムレータ] のデータ型は、[データ型アシスタント] を使用して設定することもできます。アシスタントを使用するには、[データ型アシスタントを表示] ボタン をクリックします。

データ型アシスタントの詳細については、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。

ブロックで指定するデータ型が固定小数点ツールによってオーバーライドされないようにするには、このパラメーターを選択します。

ブロックの特性

データ型

double | fixed point | 整数 | single

直接フィードスルー

no

多次元信号

no

可変サイズの信号

no

ゼロクロッシング検出

no

アルゴリズム

すべて展開する

拡張機能

参考

関数

ブロック

R2006a より前に導入