exponenta event banner

findIndex

Поиск индексов участников ансамбля рабочей области для участников, соответствующих указанным имени и значению переменной

Описание

findIndex - функция, используемая в коде, созданном конструктором диагностических функций.

index = findIndex(wensemble,varname,value) находит индексы членов, которые содержат значение переменной varname.

Например, при указании findIndex(outputEnsemble,'File',filename), где filename определяет последний файл, считанный из хранилища данных ансамбля, findIndex находит индекс участника ансамбля рабочей области, связанного с этим именем файла.

Код, генерируемый конструктором диагностических функций writeMember, readMember, и findIndex при следующих условиях:

  • Входные данные представляют собой файл или хранилище данных ансамбля моделирования.

  • Опция вычисления во время генерации кода определяет сохранение результатов в локальной памяти, а не запись результатов обратно в хранилище данных ансамбля.

Явное указание индекса элемента при чтении и записи в локальной версии данных, управляемой кодом с помощью workspaceEnsemble , обеспечивает синхронизацию элементов с исходным хранилищем данных ансамбля. Эта синхронизация необходима при наличии последовательных циклов обработки элементов, например, при вычислении статистики ансамбля в качестве предшественника для вычисления остатков сигнала.

  • Во время первого цикла обработки элементов, который начинается с пустого ансамбля, индексация не требуется. Код добавляет каждый новый результат участника в конец ансамбля.

  • Во время второго цикла индекс позволяет коду записывать обновленные результаты элемента в правильное местоположение в пределах заполненного сейчас ансамбля.

Дополнительные сведения о цикле двойной обработки для статистики ансамбля см. в разделе Анатомия кода MATLAB, созданного приложением.

Входные аргументы

свернуть все

Объект ансамбля, указанный как workspaceEnsemble объект. wensemble содержит данные ансамбля и указывает имена и типы переменных.

Имя переменной для сопоставления, указанное как строка.

Пример: 'File'

Значение переменной для сопоставления, указанное как строка.

Пример: filename

Выходные аргументы

свернуть все

Индекс члена для членов ансамбля, которые содержат указанные имя и значение переменной, возвращаемый как вектор положительных целых чисел с длиной, равной числу совпадающих членов. Если ни один элемент не содержит указанную комбинацию имя-значение, findIndex прибыль []. В коде, сгенерированном конструктором диагностических функций, index является либо одним целым, либо []и идентифицирует элемент с именем файла, которое соответствует имени файла во входном аргументе.

Представлен в R2020a