reduceModel

Класс: Simulink.VariantManager
Пакет: Simulink

Сгенерируйте упрощенную модель для заданных различных настроек

Синтаксис

Simulink.VariantManager.reduceModel(Model)
Simulink.VariantManager.reduceModel(Model, Name, Value)

Описание

Simulink.VariantManager.reduceModel(Model) создает упрощенную модель для заданной настройки. Модели, на которые ссылаются, и библиотечные блоки также уменьшаются. По умолчанию имя упрощенной модели и имени модели любого уменьшаемого дочернего элемента, на которое ссылаются, является исходным именем модели, снабженным суффиксом _r.

Simulink.VariantManager.reduceModel(Model, Name, Value) задает параметры сокращения в форме аргументов Name и Value.

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

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

Обязательное поле. Модель, которая будет уменьшаться в виде вектора символов.

Аргументы name-value

Задайте дополнительный Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Можно задать несколько имен и аргументов значения в любом порядке как Name1,Value1,...,NameN,ValueN.

Задает имена различных настроек. По умолчанию текущие значения различных контрольных переменных используются для сокращения.

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

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

Примечание

'VariableGroups'и 'NamedConfigurations'являются взаимоисключающими.

Рассмотрите этот пример:

Simulink.VariantManager.reduceModel('iv_model', ...
                                          'VariableGroups',...
                                          {{'V',1,'W',1},{'V',2,'W',2}})

Задает полнофункциональные значения контрольной переменной варианта, которые будут использоваться для сокращения. Это позволяет вам уменьшать модель для всех допустимых значений заданной различной контрольной переменной. Введите ссылочное значение для различной контрольной переменной, которая приводит к успешной компиляции модели.

Рассмотрите этот пример:

Simulink.VariantManager.reduceModel('slexVariantReducer',...
                    'VariableGroups',{'V',1},...
                    'FullRangeVariables',{'W',1});

Можно задать различную контрольную переменную, 'W', как полнофункциональная контрольная переменная варианта. Это позволяет вам уменьшать модель для всех допустимых значений переменного 'W'. В примере, полнофункциональная контрольная переменная варианта W использует ссылочное значение 1.

Задает, должна ли модель быть скомпилирована для симуляции или режима генерации кода как часть сокращения. Если модель содержит различные блоки с набором параметров Variant control mode к sim codegen switching, можно задать значение как codegen сохранить ветви генерации кода блоков в упрощенной модели. Для значения по умолчанию sim, Различный Редуктор компилирует и сохраняет ветви симуляции в модели верхнего уровня.

Задает папку, чтобы поместить упрощенные модели и связанные артефакты. По умолчанию упрощенные модели сгенерированы в ./reducedModel подпапка в исходной папке модели.

Когда значением является true, Различный Редуктор сохраняет скомпилированные атрибуты сигнала между исходными и упрощенными моделями путем добавления блоков спецификации сигнала в соответствующих портах блока в упрощенной модели. Скомпилированные атрибуты сигнала включают типы данных сигнала, размерности сигнала, скомпилированные шаги расчета, и т.д.

Когда значением является true, Различный Редуктор отображает детали шагов, выполняемых во время снижения сложности модели.

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

Когда значением является true, Различный Редуктор генерирует файл HTML с деталями об упрощенной модели и любых модификациях, которые могут требоваться для масок и коллбэков.

Примечание

Чтобы сгенерировать сводные данные, у вас должна быть лицензия Simulink Report Generator.

Примеры

% Reduce model based on its variant control variable values in the base workspace.
Simulink.VariantManager.reduceModel('sldemo_variant_subsystems');

% Reduce the model associated with a variant configuration data object and configurations to be retained in the reduced model.
Simulink.VariantManager.reduceModel('slexVariantManagement', ...
                                          'NamedConfigurations', {'LinInterStd',
                                          'NonLinExterHighFid'})

% Reduce the model by specifying variant control variable values. Here, two groups are specified corresponding to 
% {V==1, W==1}, and {V==2, W==2} respectively.
Simulink.VariantManager.reduceModel('iv_model', ...
                                          'VariableGroups',...
                                          {{'V',1,'W',1},{'V',2,'W',2}});

% Reduce the model by specifying variant control variable values where 'W' is a full-range variant control variable and 'V' is 1. Here, Variant Reducer 
% automatically maps the specification to correspond to the following four explicit groups: {V==1, W==1}, {V==1, W==2}, {V==1, W==3} and {V==1, W==0} respectively.
Simulink.VariantManager.reduceModel('slexVariantReducer',...
                                          'VariableGroups',...
                                          {'V',1},...
                                          'FullRangeVariables',{'W',1}); 

% Reduce the model by specifying the compilation mode as code generation.
Simulink.VariantManager.reduceModel...
('slexVariantReducer','NamedConfigurations', {'config1'},'CompileMode','codegen','OutputFolder','L:\Models');
Введенный в R2016a