Simulink. Моделирование. Будущий класс

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

Создайте объект Future для моделирования

Описание

Создайте Simulink.Simulation.Future, когда вы выполните parsim с набором аргумента 'RunInBackground' к 'on'. Команда parsim запускает несколько моделирований в параллели с помощью входных параметров, заданных с массивом объектов Simulink.SimulationInput. Можно использовать этот объект контролировать состояние продолжающихся моделирований, выбрать выходные параметры завершенных моделирований или отменить продолжающиеся моделирования.

Команда parsim использует Параллельные вычисления лицензия Toolbox™, чтобы запустить моделирования параллельно. parsim запускает моделирования в сериале, если параллельный пул не может быть создан или если Parallel Computing Toolbox не используется.

Конструкция

future = parsim(in,'RunInBackground','on') создает объект Simulink.Simulation.Future, future, при выполнении нескольких моделирований параллельно использование входных параметров, заданных в объекте Simulink.SimulationInput, in.

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

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

Объект Simulink.SimulationInput или массив объектов Simulink.SimulationInput используются, чтобы запустить несколько моделирований. Задайте параметры и значения модели, чтобы запустить несколько моделирований, не делая его грязным.

Пример: в = Simulink. SimulationInput ('vdp'), в (1:10) = Simulink. SimulationInput ('vdp')

Установите на 'on', чтобы запустить моделирования асинхронно, сохранив командную строку MATLAB® доступной.

Свойства

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

Текстовый журнал выходных параметров от моделирования.

Это свойство доступно только для чтения.

ID объекта future, заданного как скалярное целое число.

Это свойство доступно только для чтения.

Считал ли вызов fetchNext или fetchOutputs выходные параметры в объектном массиве Simulink.Simulation.Future, заданном как 1 если верный и 0 если ложь.

Это свойство доступно только для чтения.

Текущее состояние объектного массива future, заданного как 'pending', 'queued', 'running', 'finished', 'failed' или 'unavailable'.

Это свойство доступно только для чтения.

Методы

Метод

Цель

отмена

Отмените ожидание, поставленное в очередь, или выполнение объекта Simulink.Simulation.Future

fetchNext

Выберите затем доступный непрочитанный вывод от объектного массива Simulink.Simulation.Future

fetchOutputs

Получите Simulink.SimulationOutput из Simulink.Simulation.Future

ожидать

Ожидайте объектов Simulink.Simulation.Future завершить моделирование

Примеры

свернуть все

Этот пример показывает, как создать объектный массив Simulink.Simulation.Future и использовать его, чтобы получить выходные параметры и видеть состояние моделирований.

Этот пример запускает несколько моделирований модели vdp, отличаясь значение усиления Му.

Откройте модель и задайте вектор значений Му.

open_system('vdp');
Mu_Values = [0.5:0.25:5];
MuVal_length = length(Mu_Values);

Используя Mu_Values, инициализируйте массив объектов Simulink.SimulationInput. Чтобы предварительно выделить массив, индекс цикла сделан начать с самого большого значения.

for i = MuVal_length:-1:1
    in(i) = Simulink.SimulationInput('vdp');
    in(i) = in(i).setBlockParameter('vdp/Mu',...
        'Gain',num2str(Mu_Values(i)));
end

Моделируйте модель с помощью parsim. Установите его на 'RunInBackground', чтобы смочь использовать командную строку, в то время как моделирования запускаются.

Future = parsim(in,'RunInBackground','on');

Используйте метод fetchNext на моделированиях Future.

for i = 1:MuVal_length
    [completedIdx,simOut] = fetchNext(Future)
end

Представленный в R2018a

Была ли эта тема полезной?