Simulink.Simulation.Job class

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

Выполните batchsim для создания Simulink.Simulation.Job объект, simJob

Описание

Выполните batchsim команда с параллельным пулом для создания Simulink.Simulation.Job объект. The batchsim команда загружает несколько симуляций, чтобы выполнить их пакетно с помощью входов, заданной с массивом Simulink.SimulationInput объекты. Можно использовать этот объект для контроля состояния пакетного задания, извлечения выходов завершенного пакетного задания или отмены одного или нескольких заданий.

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

Конструкция

simJob = batchsim(in) создает Simulink.Simulation.Job объект, simJob, при выполнении нескольких симуляций пакетами в вычислительном кластере с использованием входов, заданных в Simulink.SimulationInput объект, in.

createSimulationJob(batchJob) создает Simulink.Simulation.Job объект из parallel.job объект, batchJob. Используйте createSimulationJob команда для извлечения объекта задания, возвращенного batchsim команда.

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

расширить все

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

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

Свойства

расширить все

Заданные папки для добавления в путь поиска файлов MATLAB параллельных рабочих процессов.

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

Файлы и папки для отправки параллельным рабочим.

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

Добавляются ли пользовательские записи в пути клиента к каждому параллельному рабочему пути в начале пакетного задания как true или false.

Дата и время создания пакетного задания, заданные как объект datetime.

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

Задает имена переменных окружения, которые копируются из сеанса клиента в параллельные рабочие.

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

Дата и время завершения выполнения пакетного задания, заданные как объект datetime.

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

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

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

Имя job объект, заданный как строка.

Объект кластера, содержащий Simulink.Simulation.Job объект, simJob.

Дата и время, когда Simulink.Simulation.Job начинает выполняться, задается как объект datetime.

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

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

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

Дата и время, когда Simulink.Simulation.Job отправляется, задается как объект datetime.

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

Метка, связанная с Simulink.Simulation.Job объект.

Тип Simulink.Simulation.Job объект, заданный как independent или pool.

Хранит любые данные, связанные с объектом задания. Данные хранятся в клиентском Сеансе работы с MATLAB и недоступны для работников.

Имя пользователя, создавшего Simulink.Simulation.Job объект.

Методы

Метод

Цель

cancel

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

diary

Отображение или сохранение текста Command Window пакетного задания

fetchOutputs

Извлечение массива Simulink.SimulationOutput объекты из всех симуляций в Simulink.Simulation.Job

listAutoAttachedFiles

Список файлов, автоматически присоединенных к заданию, задаче или параллельному пулу

wait

Ждите Simulink.Simulation.Job объект для изменения состояния

Примеры

свернуть все

В этом примере показано, как выполнить параллельные симуляции в пакете с помощью sldemo_househeat модель. batchsim переносит симуляции в вычислительный кластер, позволяя выполнять другие задачи во время обработки пакетного задания или закрывать клиентский MATLAB® и получите доступ к пакетному заданию позже.

Наблюдайте поведение модели для различных заданных точек.

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

open_system('sldemo_househeat');

2. Задайте множество значений для различных температур.

setPointValues = 65:2:85;
spv_Length = length(setPointValues);

3. Использование setPointValues, инициализируйте массив Simulink.SimulationInput объекты.

in(1:spv_Length) = Simulink.SimulationInput('sldemo_househeat');
for i = 1:1:spv_Length 
    in(i) = in(i).setBlockParameter('sldemo_househeat/Set Point',...
        'Value',num2str(setPointValues(i)));
end

4. Укажите размер пула для количества работников, которые будут использоваться. В сложение к количеству работников, используемых для запуска параллельных симуляций, требуется главный рабочий. В этом случае предположим, что для запуска пакетного задания для параллельных симуляций доступны три работника. Объект задания возвращает полезные метаданные, как показано на рисунке. Можно использовать задание ID чтобы получить доступ к объекту задания позже с любой машины. NumWorkers отображает, сколько рабочих выполняет симуляции - количество рабочих, заданное в 'Pool' аргумент плюс дополнительный головной рабочий.

simJob = batchsim(in,'Pool',3)
                  ID: 1
                Type: pool
          NumWorkers: 4
            Username: #####
               State: running
      SubmitDateTime: ##-###-#### ##:##:##
       StartDateTime: 
    Running Duration: 0 days 0h 0m 0s

См. также

Функции

Классы

Введенный в R2018b