Для доступа к данным, записанным в 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