Поиск индексов участников ансамбля рабочей области для участников, соответствующих указанным имени и значению переменной
findIndex - функция, используемая в коде, созданном конструктором диагностических функций.
находит индексы членов, которые содержат значение переменной index = findIndex(wensemble,varname,value)varname.
Например, при указании findIndex(outputEnsemble,'File',filename), где filename определяет последний файл, считанный из хранилища данных ансамбля, findIndex находит индекс участника ансамбля рабочей области, связанного с этим именем файла.
Код, генерируемый конструктором диагностических функций writeMember, readMember, и findIndex при следующих условиях:
Входные данные представляют собой файл или хранилище данных ансамбля моделирования.
Опция вычисления во время генерации кода определяет сохранение результатов в локальной памяти, а не запись результатов обратно в хранилище данных ансамбля.
Явное указание индекса элемента при чтении и записи в локальной версии данных, управляемой кодом с помощью workspaceEnsemble , обеспечивает синхронизацию элементов с исходным хранилищем данных ансамбля. Эта синхронизация необходима при наличии последовательных циклов обработки элементов, например, при вычислении статистики ансамбля в качестве предшественника для вычисления остатков сигнала.
Во время первого цикла обработки элементов, который начинается с пустого ансамбля, индексация не требуется. Код добавляет каждый новый результат участника в конец ансамбля.
Во время второго цикла индекс позволяет коду записывать обновленные результаты элемента в правильное местоположение в пределах заполненного сейчас ансамбля.
Дополнительные сведения о цикле двойной обработки для статистики ансамбля см. в разделе Анатомия кода MATLAB, созданного приложением.
Конструктор диагностических функций | fileEnsembleDatastore | readMember | simulationEnsembleDatastore | workspaceEnsemble | writeMember