Simulink.Simulation.Futures class

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

Создайте Future объект для симуляции

Описание

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

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

Конструкция

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

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

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

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

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

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

Свойства

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

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

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

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

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

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

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

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

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

Методы

Метод

Цель

cancel

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

fetchNext

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

fetchOutputs

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

wait

Ожидайте 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