exponenta event banner

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

При линеаризации модели Simulink ® можно найти в результате линеаризации блоки, соответствующие определенным критериям, с помощью помощника по линеаризации. Можно задать критерии поиска для поиска блоков, которые могут:

  • Потенциально может вызвать проблемы линеаризации в модели, если модель не линеаризуется так, как ожидалось. Дополнительные сведения об идентификации и устранении проблем линеаризации с помощью помощника по линеаризации см. в разделе Идентификация и устранение общих проблем линеаризации.

  • Помогите получить представление о линеаризации модели, даже если модель линеаризована так, как ожидалось.

Можно также запросить помощника по линеаризации в командной строке с помощью find функция. Пример см. в разделе Устранение неполадок с результатами линеаризации в командной строке.

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

Чтобы включить Помощник по линеаризации (Linearization Advisor), на вкладке Линейный анализ (Linearization Analysis) выберите Помощник по линеаризации (Linearization Advisor).

При выборе этой опции и линеаризации модели программа открывает вкладку Помощник (Advisor) для устранения неполадок в результатах линеаризации. Затем можно найти интересующие блоки в результатах линеаризации, выполнив запросы с помощью помощника по линеаризации.

После поиска интересующих блоков можно исследовать отдельные линеаризации блоков с помощью диагностической информации линеаризации. Дополнительные сведения см. в разделе Устранение неполадок линеаризации блоков.

Выполнение встроенных запросов

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

Встроенный запросНайти блоки, которые...
Совет по линеаризацииПотенциально проблематичны для линеаризации. Этот запрос выполняется по умолчанию при открытии вкладки Помощник (Advisor).
Диагностика на трактеНаходятся на пути линеаризации и имеют диагностические сообщения относительно их линеаризации. Этот запрос является подмножеством Linearization Advice запрос.
Замены на путиНаходятся на пути линеаризации и имеют заданный пользовательский блок линеаризации. Этот запрос является подмножеством Linearization Advice запрос.
Нулевая пара ввода-вывода на трактеНаходятся на пути линеаризации и имеют по крайней мере одну пару вход/выход, которая линеаризуется до нуля.
Все блоки на путиНаходятся на пути линеаризации; то есть блоки, в которых, по меньшей мере, один вход линеаризации соединен через блок с, по меньшей мере, одним выходом линеаризации.

Создание и выполнение запросов

Консультант по линеаризации также предоставляет набор простых запросов для поиска в модели. Эти запросы можно выполнять самостоятельно или использовать для создания составных запросов.

Простой запросНайти блоки, которые...
All BlocksНаходятся в линеаризованной модели.
Linearized to ZeroЛинеаризовать до нуля.
Block SubstitutedУказать пользовательскую линеаризацию блоков.
On Linearization PathНаходятся на пути линеаризации.
Contributes to LinearizationЧисленный вклад в результат линеаризации модели.
ExactЛинеаризуются с использованием определенной точной линеаризации.
PerturbationЛинеаризованы с использованием численного возмущения.
Has DiagnosticsИметь диагностические сообщения относительно их линеаризации.
'BlockType' BlocksОтносятся к указанному типу.
Has 'Nu' InputsИметь указанное количество входов.
Has 'Nx' StatesИметь указанное число состояний.
Has 'Ny' OutputsИметь указанное количество выходов.
Has 'Ts' Sample TimeУкажите время выборки.
Has Zero I/O PairИметь по крайней мере одну пару вход/выход, которая линеаризуется до нуля.

Чтобы выполнить простой запрос, в линеаризаторе модели на вкладке Помощник (Advisor) щелкните Новый запрос (New Query).

В диалоговом окне «Построитель запросов» настройте запрос. Например, создайте запрос для поиска всех блоков, которые численно вносят вклад в результат линеаризации.

  1. В поле Имя запроса укажите имя запроса как Contributes.

  2. В раскрывающемся списке выберите Contributes to Linearization.

  3. При выборе любого из следующих запросов укажите соответствующий параметр поиска.

    ВопросПараметр поиска
    'BlockType' BlocksТип блока - этот параметр соответствует blocktype свойство блока. Дополнительные сведения см. в разделе linqueryIsBlockType.
    Has 'Nu' InputsВходы (Inputs) - укажите положительное целое число.
    Has 'Nx' StatesСостояния - укажите положительное целое число.
    Has 'Ny' OutputsВыходные данные - укажите положительное целое число.
    Has 'Ts' Sample TimeВремя выборки - укажите ненулевой скаляр. Чтобы найти блоки непрерывного времени, укажите 0.
  4. Чтобы создать и выполнить запрос, щелкните Выполнить запрос. Программа запускает запрос и на вкладке Помощник (Advisor) отображает список блоков, которые вносят вклад в линеаризацию модели.

    Запрос добавляется в раздел Запросы.

Составные запросы можно также создавать путем логического объединения существующих запросов с помощью операций «И», «Или» и «Не логические». Составной запрос можно создать с помощью простых запросов, встроенных запросов или других составных запросов.

Для создания составного запроса в диалоговом окне «Построитель запросов» настройте запрос с использованием нескольких критериев поиска. Например, создайте запрос для поиска всех дискретно-временных блоков, находящихся на пути линеаризации.

  1. В поле Имя запроса укажите имя запроса как Discrete on Path.

  2. Чтобы найти блоки на пути линеаризации, в раскрывающемся списке выберите On Linearization Path.

  3. Чтобы добавить еще одно условие поиска, нажмите кнопку Добавить в запрос. Программа добавляет вторую строку к критериям поиска. По умолчанию критерии поиска объединяются с помощью операции И.

  4. Чтобы найти блоки дискретного времени, сначала добавьте критерии поиска, чтобы найти блоки непрерывного времени. Во второй строке в раскрывающемся списке выберите Has 'Ts' Sample Time. Сохранить время образца по умолчанию 0.

  5. Чтобы найти блоки дискретного времени, во второй строке выберите Нет.

  6. Щелкните Выполнить запрос (Run Query).

При каждом создании пользовательского запроса программа добавляет его в раскрывающийся список критериев поиска в диалоговом окне «Построитель запросов». Затем можно использовать пользовательские запросы для создания более сложных запросов. Например, чтобы найти дискретно-временные блоки на пути линеаризации, которые линеаризованы с помощью числового возмущения, создайте запрос, который объединяет Discrete on Path пользовательский запрос с помощью Perturbed простой запрос с использованием операции И.

См. также

Приложения

Функции

Связанные темы