Для доступа к данным, записанным в MAT-файл для анализа в MATLAB®, используйте ссылки на данные в MAT-файле.
Когда вы входите в MAT-файл, Simulink® хранит Simulink.SimulationData.Dataset объект в указанном MAT-файле. Элементы Dataset объект в файле Dataset объекты. Существует одно Dataset объект для каждого набора записанных данных моделирования. Например, файл может содержать Dataset объект, который содержит Dataset объект для данных записанного сигнала и другой Dataset объект для данных о записанных состояниях.
Для доступа к Dataset симуляции Форматы данные для набора записанных данных моделирования, создайте Simulink.SimulationData.DatasetRef объекты. Вы можете получить доступ к отдельным элементам набора данных с помощью DatasetRef объект. Для получения дополнительной информации смотрите Загрузка отдельных сигналов из объекта DatasetRef.
Для доступа к листовым сигналам в зарегистрированном Dataset, создать matlab.io.datastore.SimulationDatastore объект для сигнала, основанный на DatasetRef объект для Dataset который содержит сигнал. Для получения дополнительной информации см.
Потоковая передача отдельных сигналов с помощью объектов SimulationDatastore.
Можно работать с данными, на которые ссылается SimulationDatastore объект. Например, можно получить данные в фрагменте, которая будет считываться в память из MAT-файла. Для получения примера см. .matlab.io.datastore.SimulationDatastore
Когда вы читаете SimulationDatastore объект, используя read или readall метод, выход находится в MATLAB timetable формат. Для получения дополнительной информации о формате расписания смотрите Формат сигнала набора данных.
Можно использовать SimulationDatastore объект для создания timetable для значений сигналов и считайте timetable объект с данными в памяти. Для примера, для SimulationDatastore dst1 объекта:
tt = dst1.Values.read; ttt = tall(dst1.Values);
Можно создать высокий timetable:
mapreducer(0); ttt = tall(dst1.Values);
Если вы используете постоянное хранилище для нескольких симуляций, то можете иметь несколько MAT-файлов. Когда вы запускаете несколько симуляций с помощью пакетной обработки, вы получаете несколько MAT-файлов, если вы задаете другой постоянный MAT-файл хранилища для каждой симуляции. Для параллельных симуляций Simulink создает отдельный MAT-файл для каждого запуска симуляции. Чтобы помочь вам идентифицировать и понять контекст данных моделирования, включенных в MAT-файл, Simulink хранит метаданные о логгировании в постоянном хранилище.
A Simulink.SimulationMetadata объект включает в себя ModelInfo структура a LoggingInfo структура с двумя полями:
LoggingToFile - Указывает, включена ли регистрация в постоянном хранилище ('on' или 'off')
LoggingFileName - Задает имя разрешенного файла для MAT-файла постоянного хранилища (если LoggingToFile является 'on').
MAT-файл, используемый для постоянного хранилища, содержит SimulationMetadata переменная, которая хранит те же метаданные симуляции, что и Simulink.SimulationMetadata объект. The SimulationMetadata является системным именем, а не заданным именем переменной.
Для доступа к метаданным постоянного хранения логгирований используйте одну из следующих альтернативных возможностей:
Просмотрите метаданные симуляции при помощи SimulationOutput SimulationMetadata объекта свойство.
Используйте заполнение клавишей Tab для доступа к SimulationMetadata такие свойства объекта, как ModelInfo и для доступа к именам полей.
Отобразите метаданные симуляции в редакторе переменных. Нажмите на SimulationOutput объект и использовать один из следующих подходов:
Установите флажок Explore Simulation Metadata (который отображает данные в древовидной структуре).
Дважды кликните строку SimulationMetadata.
Вы можете просмотреть сообщение об ошибке и информацию о стеке и причинах данных симуляции при помощи SimulationOutput ErrorMessage объекта свойство. Для параллельных симуляций, если вы логируете в файл, Simulink включает CaptureErrors аргумент для симуляции.
createInputDataset | Формат сигнала набора данных | matlab.io.datastore.SimulationDatastore | Simulink.SimulationData.Dataset | Simulink.SimulationData.DatasetRef | timeseries | timetable