exponenta event banner

Класс Simulink.C.Input

Пакет: Simulink
Суперклассы:

Создает SimulationInput объекты для внесения изменений в модель для нескольких или отдельных моделирований

Описание

Simulink.SimulationInput позволяет вносить изменения в модель и выполнять моделирование с этими изменениями. Эти изменения временно применяются к модели. Через Simulink.SimulationInput объект можно изменить:

  • Начальное состояние

  • Параметры модели

  • Параметры блока

  • Внешние вводы

  • Переменные

Через Simulink.SimulationInput можно также указать функции MATLAB ® для выполнения в начале и в конце каждого моделирования с помощью in.setPreSimFcn и in.setPostSimFcnсоответственно.

Строительство

in = Simulink.SimulationInput('modelName') создает SimulationInput объект для модели.

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

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

Создать Simulink.SimulationInput путем передачи имени модели в качестве аргумента.

Пример: in = Simulink.SimulationInput('cstr')

Свойства

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

Имя модели, для которой SimulationInput создается объект.

Начальное состояние модели для моделирования, указанное как Simulink.op.ModelOperatingPoint объект.

Внешние входные данные, добавленные в модель для моделирования.

Параметры блока измененной модели.

Изменяемые переменные модели.

Измененные параметры модели.

Функция MATLAB выполняется до начала моделирования.

Функция MATLAB выполняется после каждого моделирования.

Краткое описание моделирования, указанного как символьный массив.

Методы

Метод

Цель

setModelParameter

Установка параметров модели, используемых для конкретного моделирования с помощью SimulationInput объект.

setBlockParameter

Установка параметров блока, используемых для конкретного моделирования с помощью SimulationInput объект.

setInitialState

Установка начального состояния, используемого для конкретного моделирования через SimulationInput объект.

setExternalInput

Установка внешних входных данных для моделирования через SimulationInput объект.

setVariable

Установка переменных для моделирования через SimulationInput объект.

setPreSimFcn

Укажите функцию MATLAB для выполнения перед началом каждого моделирования SimulationInput объект.

setPostSimFcn

Укажите функцию MATLAB для выполнения после завершения каждого моделирования SimulationInput объект.

applyToModel

Применить изменения к модели, указанной через SimulationInput объект.

validate

Проверка содержимого SimulationInput объект.

loadVariablesFromMATFile

Загрузка переменных из MAT-файла в Simulink.SimulationInput объект.

Примеры

свернуть все

В этом примере показано, как создать SimulationInput объект.

Откройте модель.

openExample('simulink/OpenTheModelExample');
open_system('ex_sldemo_househeat');
load_system('ex_sldemo_househeat')

Создание единого SimulationInput объект для модели.

model = 'ex_sldemo_househeat';
in = Simulink.SimulationInput(model);

В этом примере показано, как создать массив SimulationInput объекты.

Создание массива SimulationInput с помощью for цикл.

model = 'vdp';
for i = 10:-1:1
   in(i) = Simulink.SimulationInput(model);
end

Этот пример изменяет параметры блока модели с помощью SimulationInput объект.

Откройте модель.

openExample('simulink/OpenTheModelExample');
open_system('ex_sldemo_househeat');
load_system('ex_sldemo_househeat')

Создать SimulationInput для этой модели.

mdl = 'sldemo_househeat';
in = Simulink.SimulationInput(mdl);

Изменение параметра блока.

in = in.setBlockParameter('sldemo_househeat/Set Point','Value','300');

Моделирование модели.

out = sim(in)

В этом примере показано использование Dataset объекты для установки внешних входов с Simulink.SimulationInput объекты.

Открытие модели

mdl = 'sldemo_mdlref_counter';
open_system(mdl);

Создать Dataset для этой модели.

t = (0:0.01:10)';
ds = Simulink.SimulationData.Dataset;
ds = ds.setElement(1, timeseries(5*ones(size(t)),t)); % First element
ds = ds.setElement(2, timeseries(10*sin(t),t)); % Second element
ds = ds.setElement(3, timeseries(-5*ones(size(t)),t)); % Third element

Создать Simulink.SimulationInput объект и установка внешних входов

in = Simulink.SimulationInput('sldemo_mdlref_counter');
in = in.setExternalInput('ds.getElement(1),ds.getElement(2),ds.getElement(3)');

Добавьте остальные переменные в выражения. Убедитесь, что набор данных также находится в SimulationInput объект.

Моделирование модели.

in = in.setVariable('ds',ds);

Моделирование модели

out = parsim(in)
Представлен в R2017a