Main Content

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

Variable Selector

入力から行または列のサブセットを選択

  • ライブラリ:
  • DSP System Toolbox / Signal Management / Indexing

説明

Variable Selector ブロックは、各入力端子で M 行 N 列の入力行列 u から行または列のサブセットを抽出します。[Number of input signals] パラメーターで入力端子および出力端子の数を指定します。

インデックス ベクトルの要素が入力の存在しない行や列を参照した場合、ブロックは [Invalid index] パラメーターを使用して指定されたアクションを実装します。

インデックス ベクトルの要素が boolean データ型である場合、ブロックは論理的なインデックス付けを実行します。[Fill empty spaces in outputs (for logical indexing)] を選択して、[Fill values] パラメーターにアクセスします。入力要素と同じ長さにするために、これらの値が出力に付加されます。

メモ:

Variable Selector ブロックは常に、(Simulink® Selector ブロックとは異なり) 選択された入力の行または列をメモリの隣接するブロックにコピーします。

端子

入力

すべて展開する

N 番目の入力信号。ここで、N はNumber of input signals, Number of input signalsNumber of input signalsNumber of input signalsパラメーターで指定した入力の数です。

入力が方向性をもたないベクトルの場合、Select, SelectSelectSelect パラメーターは無視されます。出力は、長さ L のインデックス ベクトルで指定された要素を含む、長さ L の方向性をもたないベクトルです。

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

出力行列に表示される入力行または入力列のインデックスを含むスカラー値またはベクトルを指定します。

依存関係

この端子はSelector mode, Selector modeSelector modeSelector modeパラメーターを [Variable] に設定する場合にのみ表示されます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated

出力

すべて展開する

N 番目の出力信号。N 番目の入力信号に対応します。ここで、N はNumber of input signals, Number of input signalsNumber of input signalsNumber of input signalsパラメーターで指定した入力の数です。出力は、対応する入力と型、サイズ、実数/複素数が同じであるスカラー、ベクトルまたは行列として返されます。

インデックス モードが Variable および Fixed のどちらの場合でも、行選択の操作は次と等価です。

y = u(idx,:)						% Equivalent MATLAB code 

また、列選択の操作は次と等価です。

y = u(:,idx)						% Equivalent MATLAB code 

ここで、idx は長さ L のインデックス ベクトルです。行選択の出力サイズは L 行 N 列であり、列選択の出力サイズは M 行 L 列です。入力行または入力列は出力に任意の回数表示することも、まったく表示しないこともできます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated

パラメーター

すべて展開する

入力信号の数を正の整数として指定します。各入力信号に対して 1 つの入力端子がブロックに作成されます。

選択する入力の次元 [Rows] または [Columns] を指定します。

以下は [Select] の各設定です。

  • Rows –– ブロックは各入力行列から行を抽出します。

  • Columns –– ブロックは各入力行列から列を抽出します。

入力が方向性をもたないベクトルの場合、[Select] パラメーターは無視されます。出力は、長さ L のインデックス ベクトルで指定された要素を含む、長さ L の方向性をもたないベクトルです。

実行するインデックス操作のタイプ [Variable] または [Fixed] を指定します。

以下は [Selector mode] の各設定です。

  • Variable –– Idx, IdxIdxIdx 端子に対する長さ L のベクトル入力は、各入力の L 個の行または列を選択して出力に渡します。インデックス ベクトルの要素は各サンプル時間で更新できますが、ベクトルの長さはシミュレーションを通じて同じままでなければなりません。

  • Fixed –– [Idx] 端子は無効になります。要素, Elements要素Elements パラメーターで指定した長さ L のベクトルは、各入力の L 個の行または列を選択して出力に渡します。[Elements] パラメーターは調整可能であるため、シミュレーション中にいつでもインデックス ベクトルの要素の値を変更できます。ただし、ベクトルの長さは同じままでなければなりません。

出力行列に表示される入力行または入力列のインデックスを含むベクトルを指定します。

調整可能: Yes

依存関係

このパラメーターは、Selector mode, Selector modeSelector modeSelector mode[Fixed] に設定した場合にのみ表示されます。

[One-based] に設定されている場合、1 のインデックス値は入力の最初の行または列を参照します。[0 ベース] に設定されている場合、0 のインデックス値は入力の最初の行または列を参照します。

ブロックによる無効なインデックス値の処理方法を指定します。以下のオプションのいずれかを選択できます。

  • [Clip index] — インデックスを最も近い有効な値にクリッピングし、警告を出しません。

    たとえば以下は、ブロックが 644 列の入力を受信する場合の、Select, SelectSelectSelect パラメーターの各設定です。

    • Rows –– ブロックは 72 のインデックスを 64 にクリッピングします。

    • Columns –– ブロックは 72 のインデックスを 4 にクリッピングします。

    どちらの場合も、ブロックは -2 のインデックスを 1 にクリッピングします。

  • [Clip and warn] — インデックスを最も近い有効な値にクリッピングして、MATLAB® コマンド ラインに警告メッセージを表示します。

  • [Generate error] — エラー ダイアログ ボックスを表示して、シミュレーションを終了します。

調整可能: Yes

インデックス ベクトルの要素が boolean データ型である場合、ブロックは論理的なインデックス付けを実行します。論理的なインデックス付けにより、出力に空のスペースが生じる可能性があります。値を Fill values, Fill valuesFill valuesFill values パラメーターの出力に付加するように指定する場合は、このパラメーターを選択します。

ブロックが論理的なインデックス付けを実行する場合は、塗りつぶしの値を指定します。

依存関係

このパラメーターは、Fill empty spaces in outputs (for logical indexing), Fill empty spaces in outputs (for logical indexing)Fill empty spaces in outputs (for logical indexing)Fill empty spaces in outputs (for logical indexing) パラメーターを選択した場合にのみ表示されます。

ブロックの特性

データ型

double | single | Boolean | base integer | fixed point | enumerated

多次元信号

いいえ

可変サイズの信号

いいえ

拡張機能

固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。

参考

ブロック

R2006a より前に導入