Main Content

findIndex

Find the workspace ensemble member indices for members that match a specified variable name and value

Description

findIndex is a function used in code generated by Diagnostic Feature Designer.

index = findIndex(wensemble,varname,value) finds the indices of members that contain the value of the variable varname.

For example, when you specify findIndex(outputEnsemble,'File',filename), where filename identifies the last file read from an ensemble datastore, findIndex finds the index of the workspace ensemble member that is associated with that file name.

Code that is generated by Diagnostic Feature Designer uses writeMember, readMember, and findIndex under the following conditions:

  • The input data is a file or simulation ensemble datastore.

  • The computation option during code generation specified storing results in local memory rather than writing results back to the ensemble datastore.

Explicitly specifying a member index when reading and writing within the local version of the data, which the code manages using a workspaceEnsemble object, ensures member synchronization with the original ensemble datastore. This synchronization is necessary when you have sequential member-processing loops, such as when you compute ensemble statistics as a precursor to computing signal residues.

  • During the first member-processing loop, which starts with an empty ensemble, no indexing is needed. The code appends each new member result to the end of the ensemble.

  • During the second loop, the index enables the code to write updated member results to the correct location within the now-populated ensemble.

For more information about the dual processing loop for ensemble statistics, see Anatomy of App-Generated MATLAB Code.

Input Arguments

collapse all

Ensemble object, specified as a workspaceEnsemble object. wensemble contains ensemble data and specifies variable names and types.

Variable name to match, specified as a string.

Example: 'File'

Variable value to match, specified as a string.

Example: filename

Output Arguments

collapse all

Member index for ensemble members that contain a specified variable name and value, returned as a vector of positive integers with length equal to the number of matching members. If no members contain the specified name-value combination, findIndex returns []. In code generated by Diagnostic Feature Designer, index is either a single integer or [], and identifies the member with the file name that matches the file name in the input argument.

Introduced in R2020a