Для рабочих процессов, которые включают несколько параллельных симуляций и логгирование больших объемов данных, можно создать наборы симуляций с помощью массива Simulink.SimulationInput
объекты. Это полезно в таких сценариях, как проверка модели, проект эксперимента, анализ Монте-Карло и оптимизация модели.
Использование массивов Simulink.SimulationInput
объекты упрощают выполнение нескольких симуляций и их параллельное выполнение. С помощью Parallel Computing Toolbox™ можно использовать parsim
и batchsim
команды для запуска параллельных симуляций.
parsim
команда распределяет каждую симуляцию среди рабочих, чтобы уменьшить общее время симуляции. parsim
команда автоматизирует создание параллельного пула, идентифицирует зависимости файлов и управляет программными продуктами сборки для симуляций Accelerator и Rapid Accelerator.
batchsim
команда выгружает симуляции в вычислительный кластер. Выполнение симуляций происходит на кластере, что дает вам возможность выполнять другие задачи во время обработки пакетного задания или закрыть клиентский MATLAB® и получите доступ к пакетному заданию позже.
В отсутствие лицензии Parallel Computing Toolbox, parsim
ведет себя как sim
команда. Затем симуляции выполняются последовательно.
The batchsim
команда использует лицензию Parallel Computing Toolbox™, чтобы запустить симуляции в вычислительном кластере. batchsim
запускает симуляции последовательно, если параллельный пул не может быть создан. Если лицензия Parallel Computing Toolbox не используется, batchsim
ошибки.
Вы можете внести изменения в модель, используя Simulink.SimulationInput
и запустите параллельную симуляцию с этими изменениями. Изменение Simulink.SimulationInput
object, переопределяет значения в модели. В симуляции используются значения в Simulink.SimulationInput
объект, а не значения, заданные в модели. Таким образом можно изменить модель, не задирая её. The Simulink.SimulationInput
Объект позволяет вам изменить эти настройки в модели:
Начальное состояние
Внешние входы
Параметры модели
Параметры блоков
Переменные
Через Simulink.SimulationInput
объект, можно также задать функции MATLAB, чтобы запустить в начале и в конце каждой симуляции при помощи PreSimFcn
и PostSimFcn
соответственно.
Когда вы используете Simulink.SimulationInput
объекты, параметры модели восстанавливаются после окончания симуляции. См. «Выполняйте параллельные симуляции с использованием parsim».
Примечание
Когда пул еще не открыт и симуляции выполняются впервые, для запуска симуляций требуется дополнительное время. Последующие параллельные симуляции выполняются быстрее.
Выводит ошибки в выходном объекте симуляции для более легкой отладки
Совместимость с быстрым ускорителем и быстрым перезапуском
Совместимость с логгированием файлов (для облегчения больших данных)
Совместимость с MATLAB Parallel Server™ в дополнение к локальным параллельным пулам
Способен передавать базовое рабочее пространство переменные рабочим
Избегает ошибок прозрачности
Simulation Manager позволяет вам контролировать несколько параллельных симуляций. Он показывает прогресс запусков, когда они выполняются параллельно. Можно просмотреть детали каждого запуска, такие как параметры, прошедшее время и диагностика. Simulation Manager выступает в качестве полезного инструмента, предоставляя вам опцию для анализа и сравнения результатов в Данные моделирования Inspector. Можно также выбрать запуск и применить его значения к модели. Для получения дополнительной информации см. Simulation
Manager
.
Результат Simulink.SimulationOutput
объект, который содержит выходы симуляции, захватывает сообщения об ошибке и метаданные симуляции. Когда вы выбираете параметр конфигурации Data Import/Export > Log Dataset data to file, Simulink® создает Simulink.SimulationData.DatasetRef
объект для каждого Dataset
сохранен в получившемся файле MAT. Можно использовать DatasetRef
объект для доступа к данным для Dataset
элемент. Для симуляций, которые выполняются с использованием Simulink.SimulationInput
объекты, DatasetRef
объект возвращается как часть SimulationOutput
объект. В результате у вас есть более быстрый доступ к ним и вам не нужно их создавать.
Параллельные симуляции могут привести к большему количеству записанных данных, чем может храниться память MATLAB. Рассмотрите логгирование в постоянном хранилище для параллельных симуляций, чтобы уменьшить потребность в памяти. При выборе параметра Data Import/Export > Log Dataset to file configuration (LoggingToFile
), для параллельных симуляций в Simulink:
Данные регистрируются в формате Dataset в MAT-файле
A Simulink.SimulationData.DatasetRef
Объект создается для каждого элемента Набора данных (для примера, logsout
) для каждой симуляции
Можно использовать DatasetRef
объекты для доступа к данным для определенного сигнала. Можно создавать matlab.io.datasetore.SimulationDatastore
объекты, используемые для потоковой передачи записанных данных из постоянного хранилища в модель.
applyToModel
| parsim
| setBlockParameter
| setExternalInput
| setInitialState
| setModelParameter
| setPostSimFcn
| setPreSimFcn
| setVariable
| Simulink.SimulationInput
| validate