ドキュメンテーション

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

Find Nonzero Elements

配列内の非ゼロ要素を検索

  • ライブラリ:
  • Simulink / Math Operations

説明

Find Nonzero Elements ブロックは、入力信号の非ゼロ要素をすべて検索し、それらの要素の線形インデックスを返します。入力が多次元信号の場合、Find Nonzero Elements ブロックは非ゼロの入力要素の添字を返す場合もあります。どちらの場合でも、非ゼロの入力値を含む出力端子を表示できます。

Find Nonzero Elements ブロックは可変サイズの信号を出力します。可変サイズの信号に対するサンプル時間は離散でなければなりません。モデルでまだ固定ステップ ソルバーが使用されていない場合は、[コンフィギュレーション パラメーター] ダイアログで固定ステップ ソルバーを選択する必要があります。詳細については、ソルバーおよびソルバーの選択を参照してください。

端子

入力

すべて展開する

ブロックがすべての非ゼロ要素を検索する入力信号。

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

出力

すべて展開する

Find Nonzero Elements ブロックは非ゼロ要素のインデックスを可変サイズの信号として出力します。[出力データ型] ブロック パラメーターを使用して、出力のデータ型を制御します。

依存関係

既定では、ブロックは最初の出力端子からの線形インデックスを出力します。[インデックスの出力形式][添字付け] に変更すると、代わりにブロックは 2 次元以上の信号の要素インデックスを添字形式で提供します。このモードでは、[入力の次元数] を指定しなければなりません。ブロックは次元ごとに別々の出力端子を作成します。

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

オプションとして、Find ブロックはすべての非ゼロ要素の値を可変サイズの信号として出力できます。

依存関係

この端子を有効にするには、[ゼロではない入力値に対する出力端子の表示] を選択します。

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

パラメーター

すべて展開する

メイン

非ゼロの入力値のインデックスの出力形式を選択します。

  • [線形インデックス] を選択すると、任意の次元の信号の要素インデックスがベクトル形式で提供されます。1 次元 (ベクトル) 信号の場合、インデックスはベクトル内の非ゼロの値の位置に対応します。1 つを超える次元の信号の場合、添字からインデックスへの変換は最初の次元に沿って行われます。入力信号の信号次元を知っておく必要はありません。

  • [添字付け] を選択すると、2 次元以上の信号の要素インデックスが添字形式で提供されます。ブロックは各次元の出力端子を表示するので、このオプションを使用するには [入力の次元数] を指定する必要があります。

プログラムでの使用

ブロック パラメーター: IndexOutputFormat
型: 文字ベクトル
値: 'Linear indices' | 'Subscripts'
既定の設定: 'Linear indices'

入力信号の次元数を 1 ~ 32 の正の整数値として指定します。

依存関係

このパラメーターを有効にするには、[インデックスの出力形式][添字付け] に設定します。

プログラムでの使用

ブロック パラメーター: NumberOfInputDimensions
型: 文字ベクトル
値: スカラー
既定の設定: '1'

インデックス モードとして [0 ベース] または [1 ベース] を指定します。

  • [0 ベース] インデックスの場合、0 のインデックスは、入力ベクトルの最初の要素を指定します。1 のインデックスは 2 番目の要素を指定し、以降同様に繰り返されます。

  • [1 ベース] インデックスの場合、1 のインデックスは、入力ベクトルの最初の要素を指定します。2 のインデックスは 2 番目の要素を指定し、以降同様に繰り返されます。

プログラムでの使用

ブロック パラメーター: IndexMode
型: 文字ベクトル
値: 'Zero-based' | 'One-based'
既定の設定: 'Zero-based'

非ゼロの入力値の出力端子の表示と非表示を切り替えます。

  • このチェック ボックスをオフにすると (off)、ブロックは非ゼロの入力値に対する出力端子を非表示にします。

  • このチェック ボックスをオンにすると (on)、ブロックは非ゼロの入力値に対する出力端子を表示します。追加の出力端子は非ゼロの入力要素の値を表示します。

プログラムでの使用

ブロック パラメーター: ShowOutputPortForNonzeroInputValues
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'

サンプル時間を -1 以外の値で指定します。詳細については、サンプル時間の指定を参照してください。

依存関係

このパラメーターは、明示的に -1 以外の値に設定されていない限り表示されません。詳細は、サンプル時間が推奨されないブロックを参照してください。

プログラムでの使用

ブロック パラメーター: SampleTime
型: 文字ベクトル
値: スカラー
既定の設定: '-1'

データ型

出力データ型を指定します。

[データ型アシスタントを表示] ボタン をクリックして、データ型の属性の設定に役立つ [データ型アシスタント] を表示します。詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

プログラムでの使用

ブロック パラメーター: OutDataTypeStr
型: 文字ベクトル
値: 'Inherit: Inherit via internal rule' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32'| 'int64' | 'uint64'| 'fixdt(1,16)'| '<data type expression>'
既定の設定: 'Inherit: Inherit via internal rule'

ブロックの特性

データ型

Boolean | double | fixed point | integer | single

直接フィードスルー

はい

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

いいえ

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

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

R2010a で導入