getAsDatastore

Класс: Simulink. SimulationData. DatasetRef
Пакет: Simulink. SimulationData

Получите matlab.io.datastore. Представление SimulationDatastore элемента от объекта Dataset, на который ссылаются,

Синтаксис

element = Simulink.SimulationData.DatasetRef.getAsDatastore(datasetref_elements)

Описание

element = Simulink.SimulationData.DatasetRef.getAsDatastore(datasetref_elements) возвращает представление matlab.io.datastore.SimulationDatastore элемента или набор элементов от набора данных, на который ссылаются, на основе индекса, имени или блока path элемента.

Можно представлять элемент Dataset как объект matlab.io.datastore.SimulationDatastore, если элемент был помещен в MAT-файл с помощью любого из этих подходов:

  • Регистрируйте данные о формате Dataset к персистентному устройству хранения данных (MAT-файл).

  • Поместите элемент в объект Simulink.SimulationData.Dataset и сохраненный объект Dataset к v7.3 MAT-файлу.

Представление SimulationDatastore для элемента Dataset создает объект SimulationDatastore для поля Values того элемента. Потоковая передача поддержек представления SimulationDatastore данных для свойства Values элемента в другие симуляции или в MATLAB®.

Примечание

Вы не можете использовать, создают SimulationDatastore для элементов Dataset, которые содержат эти типы данных:

  • Массив

Можно использовать объекты SimulationDatastore для:

  • Обратитесь к регистрируемым данным моделирования, которые хранятся на диске в MAT-файле.

  • Задайте сигналы передать потоком инкрементно от диска до симуляции.

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

Входные параметры

развернуть все

Элемент набора данных, на который ссылаются, в MAT-файле, заданном как индекс, имя (как вектор символов), или блок path (как вектор символов.

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

развернуть все

Элемент получил доступ к объекту SimulationDatastore использования, возвращенному или как объект matlab.io.datastore.SimulationDatastore или как Simulink.Signal, Simulink.State или подобный объект, данные Values которого используют объект matlab.io.datastore.SimulationDatastore.

Примеры

развернуть все

Регистрируйте данные сигнала к персистентному устройству хранения данных (выберите параметр конфигурации Log Dataset data to file), и моделируйте модель.

Создайте DatasetRef для сигнала, регистрирующего данные Dataset (logsout) в MAT-файле out.mat.

sigLogRef = Simulink.SimulationData.DatasetRef('out.mat','logsout');
firstSig = sigLogRef.getAsDatastore(1)
firstSig = 

  Simulink.SimulationData.Signal
  Package: Simulink.SimulationData

  Properties:
              Name: 'x1'
    PropagatedName: ''
         BlockPath: [1x1 Simulink.SimulationData.BlockPath]
          PortType: 'outport'
         PortIndex: 1
            Values: [1×1 matlab.io.datastore.SimulationDatastore]

Загрузите данные в другую модель. Этот подход передает значения потоком x1 сигнала для другой симуляции.

ds = Simulink.SimulationData.Dataset;
ds{1} = sigLogRef{1};
sim('other_model','ExternalInput','ds');

Альтернатива

Чтобы оптимизировать использование индексации, можно использовать фигурные скобки ({}) синтаксис, чтобы получить объект SimulationDatastore для значений сигналов объекта DatasetRef. Требования и результаты совпадают с использованием getAsDatastore. Например, если вы регистрируете данные сигнала к персистентному устройству хранения данных (выберите параметр конфигурации Log Dataset data to file), и моделируйте модель.

sigLogRef = Simulink.SimulationData.DatasetRef('out.mat','logsout');
firstSig = sigLogRef{1}
ans = 

  Simulink.SimulationData.Signal
  Package: Simulink.SimulationData

  Properties:
              Name: 'x1'
    PropagatedName: ''
         BlockPath: [1x1 Simulink.SimulationData.BlockPath]
          PortType: 'outport'
         PortIndex: 1
            Values: [1×1 matlab.io.datastore.SimulationDatastore]

Введенный в R2017a