exponenta event banner

getAsDatastore

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

Получение matlab.io.datastore.SimulationDatastore представления элемента из ссылочного объекта набора данных

Синтаксис

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

Описание

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

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

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

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

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

Примечание

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

  • Множество

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

  • См. записанные данные моделирования, хранящиеся на диске в MAT-файле.

  • Укажите сигналы для инкрементной потоковой передачи с диска на моделирование.

  • Создание основы для анализа больших данных с использованием функций MATLAB.

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

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

Элемент ссылочного набора данных в MAT-файле, указанный как индекс, имя (в виде символьного вектора) или путь к блоку (в виде символьного вектора.

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

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

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

Примеры

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

Запишите данные сигнала в постоянное хранилище (выберите параметр Log Dataset data to file configuration) и смоделируйте модель.

Создать DatasetRef для регистрации сигналов Dataset данные (logsout) в out.mat 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 configuration) и моделировании модели.

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