Main Content

findIndex

指定された変数の名前と値に一致するメンバーのワークスペース アンサンブル メンバー インデックスを特定

R2020a 以降

説明

findIndex は、診断特徴デザイナーで生成されたコードで使用される関数です。

index = findIndex(wensemble,varname,value) は、変数 varname の値を含むメンバーのインデックスを特定します。

たとえば、findIndex(outputEnsemble,'File',filename) と指定し、filename がアンサンブル データストアから最後に読み取られたファイルを識別する場合、findIndex はそのファイル名に関連付けられているワークスペース アンサンブル メンバーのインデックスを特定します。

診断特徴デザイナーで生成されるコードでは、次の条件で writeMemberreadMember、および findIndex が使用されます。

  • 入力データがファイルまたはシミュレーション アンサンブル データストアである。

  • コード生成時の計算オプションで、結果をアンサンブル データストアに書き戻すのではなく、結果をローカル メモリに格納するように指定している。

コードで workspaceEnsemble オブジェクトを使用して管理しているローカル バージョンのデータ内での読み取りと書き込みの際にメンバー インデックスを明示的に指定すると、元のアンサンブル データストアとのメンバーの同期が確実に維持されます。この同期は、信号の残差を計算する前処理としてアンサンブルの統計を計算する場合など、逐次的なメンバーの処理ループがある場合に必要です。

  • 空のアンサンブルから始まる最初のメンバーの処理ループでは、インデックス付けは必要ありません。それぞれの新しいメンバーの結果がアンサンブルの最後にコードによって追加されます。

  • 2 番目のループでは、インデックスにより、更新されたメンバーの結果を現在取り込まれているアンサンブル内の正しい位置にコードで書き込むことができます。

アンサンブルの統計の二重処理ループの詳細については、アプリで生成された MATLAB コードの構造を参照してください。

入力引数

すべて折りたたむ

アンサンブル オブジェクト。workspaceEnsemble オブジェクトとして指定します。wensemble はアンサンブル データを格納し、変数の名前と型を指定します。

照合する変数の名前。string として指定します。

例: 'File'

照合する変数の値。string として指定します。

例: filename

出力引数

すべて折りたたむ

指定された変数の名前と値を含むアンサンブル メンバーのメンバー インデックス。一致するメンバーの数と等しい長さの正の整数のベクトルとして返されます。指定された名前と値の組み合わせを含むメンバーがない場合、findIndex[] を返します。診断特徴デザイナーで生成されるコードでは、index は単一の整数または [] のいずれかであり、ファイル名が入力引数のファイル名と一致するメンバーを識別します。

バージョン履歴

R2020a で導入