Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Variable Selector

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

  • Variable Selector block

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

説明

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

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

インデックス ベクトルの要素が boolean データ型である場合、ブロックは論理的なインデックス付けを実行します。[出力の空白部分を埋める (論理インデックス付けの場合)] を選択して、[塗りつぶしの値] パラメーターにアクセスします。入力要素と同じ長さにするために、これらの値が出力に付加されます。

メモ

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

端子

入力

すべて展開する

N 番目の入力信号。ここで、N入力信号の数パラメーターで指定した入力の数です。

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

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

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

依存関係

この端子はセレクター モードパラメーターを [可変] に設定する場合にのみ表示されます。

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

出力

すべて展開する

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

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

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

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

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

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

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

パラメーター

すべて展開する

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

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

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

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

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

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

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

以下は [セレクター モード] の各設定です。

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

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

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

調整可能: Yes

依存関係

このパラメーターは、セレクター モード[固定] に設定した場合にのみ表示されます。

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

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

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

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

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

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

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

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

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

調整可能: Yes

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

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

依存関係

このパラメーターは、出力の空白部分を埋める (論理インデックス付けの場合) パラメーターを選択した場合にのみ表示されます。

ブロックの特性

データ型

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

直達

いいえ

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

バージョン履歴

R2006a より前に導入

参考

ブロック