advise

Найдите блоки, которые потенциально проблематичны для линеаризации

Описание

Когда вы линеаризуете Simulink® модель, можно создать LinearizationAdvisor объект, который содержит диагностическую информацию об отдельной линеаризации блока. Искать LinearizationAdvisor объект для диагностики блоков, которые потенциально проблематичны для линеаризации, используйте advise функция.

пример

advise(advisor) открывает Model Linearizer с вкладкой Advisor, открытой для поиска и устранения неисправностей линеаризации блока в advisor. Для получения дополнительной информации смотрите Результаты Линеаризации Поиска и устранения неисправностей в Model Linearizer.

пример

result = advise(advisor) возвращает LinearizationAdvisor объект, который содержит информацию о диагностике линеаризации для любых блоков в advisor это потенциально проблематично для линеаризации.

Примеры

свернуть все

Модель Load Simulink.

mdl = 'scdpendulum';
load_system(mdl)

Линеаризуйте модель и получите LinearizationAdvisor объект.

io = getlinio(mdl);
opt = linearizeOptions('StoreAdvisor',true);
[linsys,~,info] = linearize(mdl,io,opt);
advisor = info.Advisor;

Откройте советника по вопросам линеаризации в Model Linearizer.

advise(advisor)

Модель Load Simulink.

mdl = 'scdpendulum';
load_system(mdl)

Линеаризуйте модель и получите LinearizationAdvisor объект.

io = getlinio(mdl);
opt = linearizeOptions('StoreAdvisor',true);
[linsys,~,info] = linearize(mdl,io,opt);
advisor = info.Advisor;

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

result = advise(advisor)
result = 
  LinearizationAdvisor with properties:

               Model: 'scdpendulum'
      OperatingPoint: [1x1 opcond.OperatingPoint]
    BlockDiagnostics: [1x3 linearize.advisor.BlockDiagnostic]
           QueryType: 'Linearization Advice'

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

свернуть все

Диагностическая информация для линеаризации блока в виде LinearizationAdvisor возразите или массив LinearizationAdvisor объекты.

Выходные аргументы

свернуть все

Диагностическая информация для потенциально проблематичных блоков в результатах линеаризации, возвращенных как LinearizationAdvisor объект. result содержит информацию о диагностике линеаризации для любых блоков в advisor это находится на пути к линеаризации и удовлетворяет по крайней мере одному из следующих критериев:

  • Имейте диагностические сообщения относительно линеаризации блока

  • Линеаризуйте, чтобы обнулить

  • Заменили линеаризацией

Алгоритмы

Вызов advise функция эквивалентна выполнению следующего пользовательского запроса с find функция:

qPath     = linqueryIsOnPath;
qZero     = linqueryIsZero;
qBlkRep   = linqueryIsBlockSubstituted;
qDiags    = linqueryHasDiagnostics;
  
q = qPath & (qZero | qDiags | qBlkRep);
 
advisor_new = find(advisor,q);
Введенный в R2017b