exponenta event banner

Simulink.Simulation.Будущий класс

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

Создать 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.

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

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

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

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

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

Свойства

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

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

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

Идентификатор future , указанный как скалярное целое число.

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

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

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

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

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

Методы

Метод

Цель

cancel

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

fetchNext

Получить следующий доступный непрочитанный вывод из Simulink.Simulation.Future массив объектов

fetchOutputs

Восстановить Simulink.SimulationOutput от Simulink.Simulation.Future

wait

Ждать Simulink.Simulation.Future объекты для завершения моделирования

Примеры

свернуть все

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

В этом примере выполняется несколько моделирований vdp модель, варьируя значение коэффициента усиления Mu.

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

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