linqueryHasSampleTime

Объект запроса для нахождения блоков с заданным шагом расчета

Описание

linqueryHasSampleTime создает объект пользовательского запроса для нахождения всех блоков в результате линеаризации, которые имеют заданный шаг расчета.

Когда вы линеаризуете модель Simulink®, можно создать объект LinearizationAdvisor, который содержит диагностическую информацию об отдельной линеаризации блока. Чтобы найти линеаризацию блока, которая удовлетворяет определенные критерии, можно использовать функцию find с объектами пользовательского запроса. Также можно анализировать диагностику линеаризации с помощью Советника по вопросам Линеаризации в Linear Analysis Tool. Для получения дополнительной информации о нахождении определенных блоков в результатах линеаризации смотрите, Находят Блоки в Результатах Линеаризации, Совпадающих с Определенными Критериями.

Создание

Синтаксис

query = linqueryHasSampleTime(ts)

Описание

пример

query = linqueryHasSampleTime(ts) создает объект запроса для нахождения всех блоков в объекте LinearizationAdvisor, которые имеют шаг расчета ts. Этот синтаксис устанавливает свойство Ts объекта запроса.

Свойства

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

Блокируйте шаг расчета, заданный как неотрицательный скаляр. Задайте Ts в единицах измерения времени линеаризовавшей модели.

Чтобы найти непрерывно-разовые блоки, задайте Ts как 0.

Тип запроса, заданный как вектор символов формы 'Has <T> Sample Time', где <T> равен Ts.

Запросите описание, заданное как вектор символов формы 'Blocks with <T> Sample Time', где <T> равен Ts. Можно добавить собственное описание в объект запроса, использующий это свойство.

Использование

После создания linqueryHasSampleTime запрашивают объект, вы можете:

  • Найдите все блоки в объекте LinearizationAdvisor, которые имеют заданный шаг расчета при помощи запроса linqueryHasSampleTime непосредственно с командой find.

  • Создайте объект CompoundQuery путем логического объединения запроса linqueryHasSampleTime с другими объектами запроса.

Функции объекта

findНайдите блоки в результатах линеаризации, которые совпадают с определенными критериями

Примеры

свернуть все

Загрузите модель Simulink.

mdl = 'scdmrate';
load_system(mdl)

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

opts = linearizeOptions('StoreAdvisor',true);
io(1) = linio('scdmrate/Constant',1,'input');
io(2) = linio('scdmrate/sysTs2',1,'openoutput');
[linsys,linop,info] = linearize(mdl,io,opts);
advisor = info.Advisor;

Создайте запрос, возражают и находят все линеаризовавшие блоки с шагом расчета секунд 0.1.

qTs = linqueryHasSampleTime(0.01);
advTs = find(advisor,qTs)
advTs = 
  LinearizationAdvisor with properties:

               Model: 'scdmrate'
      OperatingPoint: [1x1 opcond.OperatingPoint]
    BlockDiagnostics: [1x1 linearize.advisor.BlockDiagnostic]
           QueryType: 'Has 0.01 Sample Time'

Загрузите модель Simulink.

mdl = 'scdmrate';
load_system(mdl)

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

opts = linearizeOptions('StoreAdvisor',true);
io = getlinio(mdl);
[sys,op,info] = linearize(mdl,io,opts);
advisor = info.Advisor;

Создайте объект запроса и найдите все линеаризовавшие блоки с непрерывно-разовой линеаризацией.

qCont = linqueryHasSampleTime(0);
advCont = find(advisor,qCont)
advCont = 
  LinearizationAdvisor with properties:

               Model: 'scdmrate'
      OperatingPoint: [1x1 opcond.OperatingPoint]
    BlockDiagnostics: [1x5 linearize.advisor.BlockDiagnostic]
           QueryType: 'Has 0 Sample Time'

Альтернативная функциональность

Приложение

Можно также создать пользовательские запросы для нахождения определенных блоков в результатах линеаризации с помощью Советника по вопросам Линеаризации в Linear Analysis Tool. Для получения дополнительной информации смотрите, Находят Блоки в Результатах Линеаризации, Совпадающих с Определенными Критериями.

Введенный в R2017b