Simulation Manager позволяет вам контролировать несколько симуляций в сериале или параллельно, и их прогресс. Можно посмотреть детали каждого запуска, такие как параметры, прошедшее время и диагностика. Simulation Manager предоставляет возможность анализировать и сравнивать ваши регистрируемые результаты сигнала в Инспекторе Данных моделирования. Через Simulation Manager можно выбрать запуск и применить его значения к модели. Simulation Manager открывается, когда вы запускаете parsim
или sim
команда с ShowSimulationManager
набор аргумента к on
. Для получения дополнительной информации смотрите Simulation Manager
.
Размерности бака оказывают влияние на общую стоимость производства продукта. В данном примере мы наблюдаем поведение TotalCost
для различных значений ширины и высоты. Путем анализа поведения параметров мы находим комбинацию A
и h
это приводит к самому низкому TotalCost
. Чтобы решить эту проблему проектирования, мы запускаем несколько симуляций (параллельно или в сериале) с различными значениями параметров A
и h
.
В этом примере показано, как можно использовать Simulation Manager, чтобы анализировать симуляции и решить проблему проектирования с помощью модели постоянно реактор смесителя. Реакторы являются специализированными баками, которые используются, чтобы смешать различные химикаты или составные объекты, чтобы создать продукт. Важные переменные, используемые в этой модели:
Переменный A
, который представляет площадь поперечного сечения бака (ширина).
Переменный h
, который представляет высоту.
Переменный TotalCost
, который представляет стоимость, в долларах, чтобы произвести tankful продукта.
Simulation Manager позволяет вам анализировать симуляции, когда они запускаются. Когда симуляции происходят, можно визуализировать данные моделирования модели путем графического вывода симуляции выходные параметры против входных параметров. Визуализация тренда симуляций, когда они происходят, позволяет вам узнавать о пробеле проекта симуляций и оценивать, запускаются ли симуляции как требуется. Можно остановить симуляции, если прогресс не так желаем, таким образом экономя время.
В этом примере используйте набор параметров развертки, предоставленных модели через Simulink.SimulationInput
объекты и затем используют parsim
команда, чтобы запустить параллельные симуляции.
Создайте PostSimFcn
функционируйте можно следующим образом в скрипте MATLAB, чтобы вызвать позже в развертке параметра. Назовите файл calculateCost.m
. PostSimFcn
функция вычисляет TotalCost
от переменных A
и h
, и его вычисление может варьироваться в зависимости от приложения.
function costOutput = calculateCost(out) costOutput.yout = out.yout; coolantOutput = out.yout.get('Coolant').Values.Data; costCoolant = abs(mean(coolantOutput - 294))/30; costOutput.costFromCoolant = costCoolant; concentrationOutput = out.yout.get('Residual Concentration').Values.Data; costConcentration = 10*std(concentrationOutput - 2); costOutput.costFromConcentration = costConcentration; costOutput.TotalCost = costCoolant + costConcentration; end
Откройте модель.
openExample('simulink/OpenTheModelToUseWithSimulationManagerExample'); open_system('simManagerCSTR');
Создайте выборку значений для развертки параметра.
rangeA = [0.1, 5];
rangeH = [0.1, 5];
rng default;
numSamples = 60;
allAValues = rangeA(1) + (rangeA(2) - rangeA(1)).*rand(numSamples, 1);
allhValues = rangeH(1) + (rangeH(2) - rangeH(1)).*rand(numSamples, 1);
Создайте массив Simulink.SimulationInput
объекты. В данном примере TotalCost
вычисляется и возвратил использование PostSimFcn
.
in(1:numSamples) = Simulink.SimulationInput('simManagerCSTR');
in = in.setPostSimFcn(@(out)calculateCost(out));
Запустите параллельные симуляции и откройте Simulation Manager.
for k = 1:numSamples in(k) = in(k).setVariable('A', allAValues(k), 'Workspace', 'simManagerCSTR'); in(k) = in(k).setVariable('h', allhValues(k), 'Workspace', 'simManagerCSTR'); end out = parsim(in, 'ShowSimulationManager', 'on');
Представление по умолчанию в Simulation Manager показывает график рассеивания двумя параметрами на его осях X и Y. В этом случае, переменная A
находится на Оси X и переменной h
находится на Оси Y. Когда симуляции запускаются, вы видите, что точки появляются на графике, цвет, закодированный согласно состоянию симуляции. Завершенные симуляции отмечены в зеленых, происходящих симуляциях, являются синими, и симуляции с ошибками являются красными.
Панель The Plot Properties справа позволяет вам отредактировать и сконфигурировать данные, которые показывает график. Путем выбора сетки для осей X и Y график появляется с линиями сетки.
Если конкретный параметр является timeseries, Simulation Manager строит только последнее значение временных рядов.
С Simulation Manager можно визуализировать вышеупомянутые данные в графике surf. Кликните по графику surf в разделе Results панели инструментов.
Раздел Results Simulation Manager позволяет вам добавлять несколько графиков и конфигурировать их. Кликните по surface plot в разделе Results панели инструментов Simulation Manager. Используя свойства графика, измените параметры, чтобы отобразиться на графиках. Можно измениться, свойства, такие как график помечает, метки осей, и можно добавить палитру, чтобы обозначить третий параметр. Можно также изменить пределы значения палитры.
Со вторым графиком и первым графиком вместе, можно определить значение переменных A
и h
, это дает лучший TotalCost
.
Для оси Z графика surf измените Data в TotalCost
. Путем наблюдения графика surf можно найти самую низкую точку TotalCost
. Нажатие на самую низкую точку показывает значения для Оси X и Оси Y, которая является h
и A
, соответственно.
Сохраните информацию сеанса, которая включает данные моделирования все настройки графика. Чтобы сохранить сеанс, нажмите кнопку Save на панели инструментов. Сеанс сохраняет как .mldatx
файл. Чтобы вновь открыть сохраненный сеанс, перейдите к местоположению, где файл сохранен, и дважды кликните .mldatx
файл.
Simulation Manager позволяет вам снова использовать настройку графика, когда это необходимо, чтобы запустить подобные симуляции с различными множествами значений. Чтобы снова использовать настройку графика, нажмите кнопку Reuse Window на панели инструментов. Выбор Reuse Window сохраняет настройки графика, такие как метки, ориентация оси, который параметры отобразиться, на который ось, которую можно снова использовать со следующей симуляцией той же модели. Когда вы используете эту функциональность в то время как рабочие симуляции для различных моделей, ошибки симуляции из-за ограничения.
Simulink.SimulationInput
| applyToModel
| parsim
| setBlockParameter
| setExternalInput
| setInitialState
| setModelParameter
| setPostSimFcn
| setPreSimFcn
| setVariable
| validate