Когда вы линеаризируете Simulink® модель, можно найти блоки в результате линеаризации, которые соответствуют определенным критериям с помощью Linearization Advisor. Можно задать критерии поиска для поиска блоков, которые могут:
Потенциально вызывают проблемы линеаризации в модели, если ваша модель не линеаризируется должным образом. Для получения дополнительной информации об идентификации и устранении проблем линеаризации с помощью Linearization Advisor, смотрите Идентифицируйте и Устраните общие проблемы линеаризации.
Помогают вам получить представление о линеаризации модели, даже если модель линеаризировалась должным образом.
Вы также можете запросить Linearization Advisor в командной строке, используя find
функция. Для получения примера смотрите Поиск и устранение проблем с результатами линеаризации в командной строке.
Поиск результатов линеаризации требует диагностической информации линеаризации. Чтобы собрать эту информацию, необходимо включить Linearization Advisor перед линеаризацией модели.
Чтобы включить советник по линеаризации, в Model Linearizer, на вкладке Linear Analysis, выберите Linearization Advisor.
Когда вы выбираете эту опцию и линеаризируете модель, программное обеспечение открывает вкладку Advisor для поиска и устранения проблем с результатами линеаризации. Затем можно найти интересующие блоки в результатах линеаризации, запустив запросы с помощью Linearization Advisor.
После нахождения интересующих блоков можно изучить отдельные линеаризации блоков с помощью диагностической информации линеаризации. Для получения дополнительной информации см. раздел «Поиск и устранение проблем линеаризации блоков».
Linearization Advisor предоставляет набор встроенных запросов для поиска результатов линеаризации. Эти запросы полезны для нахождения блоков, которые потенциально вызывают проблемы линеаризации. Чтобы запустить один из этих запросов, на вкладке Advisor, в разделе Queries, щелкните запрос.
Встроенный запрос | Найти блоки, которые... |
---|---|
Linearization Advice | Потенциально проблематичны для линеаризации. Этот запрос выполняется по умолчанию при открытии вкладки Advisor. |
Diagnostics on Path | Находятся на пути линеаризации и имеют диагностические сообщения относительно их линеаризации. Этот запрос является подмножеством Linearization Advice запрос. |
Substitutions on Path | Находятся на пути линеаризации и имеют пользовательский блок заданную линеаризацию. Этот запрос является подмножеством Linearization Advice запрос. |
Zero I/O Pair on Path | Находятся на пути линеаризации и имеют, по крайней мере, одну пару вход/выход, которая линеаризируется в нуль. |
All Blocks on Path | Находятся на пути линеаризации; то есть блоки, где, по меньшей мере, один вход линеаризации соединен, по меньшей мере, с одним выходом линеаризации через блок. |
Советник по линеаризации также предоставляет набор простых запросов для поиска вашей модели. Можно запускать эти запросы самостоятельно или использовать их для создания составных запросов.
Простой запрос | Найти блоки, которые... |
---|---|
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 | Иметь по крайней мере одну пару вход/выход, которая линеаризируется в нуль. |
Чтобы запустить простой запрос, в Model Linearizer, на вкладке Advisor, нажмите New Query.
В диалоговом окне Query Builder сконфигурируйте запрос. Например, создайте запрос для поиска всех блоков, которые численно способствуют результату линеаризации.
В поле Query Name укажите имя запроса следующим Contributes
.
В раскрывающемся списке выберите Contributes to Linearization
.
Если вы выбираете любой из следующих запросов, задайте соответствующий параметр поиска.
Вопрос | Параметр поиска |
---|---|
'BlockType' Blocks | Block Type - Этот параметр соответствует blocktype свойство блока. Для получения дополнительной информации смотрите linqueryIsBlockType . |
Has 'Nu' Inputs | Inputs - Задайте положительное целое число. |
Has 'Nx' States | States - Задайте положительное целое число. |
Has 'Ny' Outputs | Outputs - Задайте положительное целое число. |
Has 'Ts' Sample Time | Sample Time - Задайте ненулевой скаляр. Чтобы найти блоки в непрерывном времени, задайте 0 . |
Чтобы создать и запустить запрос, нажмите Run Query. Программа запускает запрос и на вкладке Advisor отображает список блоков, которые способствуют линеаризации модели.
Запрос добавляется в раздел Queries.
Можно также создать составные запросы путем логического объединения существующих запросов с помощью And, Or и Not логических операций. Можно создать составной запрос с помощью простых запросов, встроенных запросов или других составных запросов.
Чтобы создать составной запрос, в диалоговом окне Query Builder сконфигурируйте запрос с использованием нескольких критериев поиска. Например, создайте запрос, чтобы найти все блоки в дискретном времени, которые находятся в пути линеаризации.
В поле Query Name укажите имя запроса следующим Discrete on Path
.
Чтобы найти блоки на пути линеаризации, в раскрывающемся списке выберите On Linearization Path
.
Чтобы добавить другой критерий поиска, нажмите кнопку Add to Query. Программа добавляет вторую строку к критериям поиска. По умолчанию критерии поиска объединяются с помощью операции And.
Чтобы найти блоки в дискретном времени, сначала добавьте критерий поиска, чтобы найти блоки в непрерывном времени. Во второй строке в раскрывающемся списке выберите Has 'Ts' Sample Time
. Сохраните Sample Time по умолчанию 0
.
Чтобы найти блоки в дискретном времени, во второй строке выберите Not.
Нажмите Run Query.
Каждый раз, когда вы создаете пользовательский запрос, программное обеспечение добавляет его в раскрывающийся список критериев поиска в диалоговом окне Query Builder. Затем можно использовать пользовательские запросы для создания более сложных запросов. Например, чтобы найти блоки в дискретном времени на пути линеаризации, которые линеаризируются с помощью численного возмущения, создайте запрос, который объединяет Discrete on Path
пользовательский запрос с Perturbed
простой запрос с использованием операции And.