В этом примере показано, как использовать Simulink.sdi.sendWorkerRunToClient отправить запуски, созданные с помощью параллельных рабочих вручную для Инспектора Данных моделирования.
Настройка
Этот пример запускает несколько симуляций vdp модель, варьируясь значение усиления, Mu. Чтобы настроить для параллельной симуляции, задайте вектор из Mu значения и конфигурируют Инспектора Данных моделирования для ручной поддержки Parallel Computing Toolbox.
Инициализируйте параллельных рабочих
Используйте parpool (Parallel Computing Toolbox), чтобы запустить пул четырех параллельных рабочих. Этот пример вызывает parpool в операторе if, таким образом, вы только создаете параллельный пул, если у вас уже нет того. Можно использовать spmd (Parallel Computing Toolbox), чтобы запустить код инициализации, характерный для всех рабочих. Например, загрузите vdp модель и выбор сигнализируют, чтобы регистрировать к запускам, что мы можем отправить Инспектору Данных моделирования на клиенте MATLAB. Избегать параллелизма данных выходит при симуляции с sim в parfor, создайте временную директорию на каждом рабочем. После завершенных симуляций другой блок spmd удаляет временные директории.
Starting parallel pool (parpool) using the 'local' profile ...
connected to 4 workers.
Запуск параллельной симуляции с parfor
К потоковым данным от параллельных рабочих Инспектору Данных моделирования необходимо идти параллельно симуляции с помощью parfor (Parallel Computing Toolbox). Каждый рабочий запускает vdp симуляция с различным значением Mu. Simulink не может получить доступ к содержимому parfor цикл, таким образом, переменная MuVal задан в рабочей области рабочего, где vdp модель видит его, с помощью assignin.
Доступ к данным и отправляет запущенный клиенту MATLAB
Можно использовать Инспектора Данных моделирования программируемый интерфейс на рабочем тем же путем, вы были бы в клиенте MATLAB. Этот пример создает Simulink.sdi.Run объект и присоединения значение Mu используемый в симуляции с Tag свойство.
Закройте временные директории и просмотрите запуски в инспекторе данных моделирования
Используйте другой spmd разделите, чтобы удалить временные директории, созданные на рабочих, если симуляции завершаются. В каждой симуляции, Simulink.sdi.sendWorkerRunToClient импортированные запуски от всех рабочих в Инспектора Данных моделирования. Можно просмотреть данные и проверять свойства запуска видеть значение Mu используемый в процессе моделирования.