Сбалансированное усечение вычисляет приближение вашей модели более низкого порядка, пренебрегая состояниями, которые оказывают относительно низкий эффект на общую реакцию модели. Использование приближения более низкого порядка, которая сохраняет интересующую динамику, может упростить анализ и систему управления. В сбалансированном методе усечения снижения сложности модели программное обеспечение измеряет вклады в состояние сингулярными значениями Ханкеля (см. hsvd
) и отбрасывает состояния с меньшими значениями. Можно вычислить модель пониженного порядка путем сбалансированного усечения:
В командной строке, используя balred
команда.
В приложении Model Reducer, используя метод Balanced Truncation.
В задаче Reduce Model Order в Live Editor используйте Balanced Truncation
способ.
Для получения дополнительной общей информации о снижении сложности модели, см. «Основы снижения сложности модели».
Model Reducer предоставляет интерактивный инструмент для выполнения снижения сложности модели и исследования и сравнения ответов исходных и пониженных моделей. Чтобы аппроксимировать модель путем сбалансированного усечения в Model Reducer:
Откройте приложение и импортируйте модель LTI, чтобы уменьшить. Например, предположим, что существует модель с именем build
в MATLAB® рабочей области. Следующая команда откроется Model Reducer и импортирует модель.
modelReducer(build)
В Data Browser выберите модель для сокращения. Нажмите Balanced Truncation.
На вкладке Balanced Truncation Model Reducer отображает график частотной характеристики исходной модели и сокращенную версию модели. Частотная характеристика является диаграммой Боде для моделей SISO и графиком с сингулярным значением для моделей MIMO. Приложение также отображает сингулярное значение Ханкеля и график ошибки приближения исходной модели.
График сингулярного значения Ханкеля показывает относительные энергетические вклады каждого состояния в системе. Model Reducer вычисляет начальную модель пониженного порядка на основе этих значений. Подсвеченная планка является состоянием с самой низкой энергией в исходной модели пониженного порядка. Model Reducer отбрасывает состояния, которые имеют более низкие сингулярные значения Ханкеля, чем подсвеченная полоса.
Попробуйте различные порядки редуцированной модели, чтобы найти модель самого низкого порядка, которая сохраняет динамику, важную для вашего приложения. Для определения различных порядков:
Введите порядки модели в поле Reduced orders. Можно ввести одно целое или массив целых чисел, таких как 10:14
или [8,11,12]
.
Щелкните планку на графике сингулярного значения Ханкеля, чтобы задать состояние самой низкой энергии модели пониженного порядка. Щелкните, удерживая клавишу Ctrl, чтобы задать несколько значений.
Когда вы изменяете заданный порядок уменьшенной модели, Model Reducer автоматически вычисляет новую модель пониженного порядка. Если вы задаете несколько порядков модели, Model Reducer вычисляет несколько моделей пониженного порядка и отображает их отклики на графике.
Опционально исследуйте абсолютную или относительную погрешность между исходной и модели пониженного порядка в дополнение к частотной характеристике. Выберите тип вывода ошибок с помощью кнопок на вкладке Balanced Truncation.
Для получения дополнительной информации об использовании графиков анализа смотрите Визуализация моделей пониженного порядка в приложении Model Reducer.
Если низкочастотная динамика не важна для вашего приложения, можно снять флажок Preserve DC Gain. Это иногда приводит к лучшему соответствию на более высоких частотах между исходной и модели пониженного порядка.
Когда вы проверяете или снимаете флажок Preserve DC Gain, Model Reducer автоматически вычисляет новые модели пониженного порядка. Для получения дополнительной информации об этой опции см. «Сравнение усеченных и согласованных приближений модели низкого порядка постоянного тока».
Опционально ограничьте расчет сингулярного значения Ханкеля определенной частотной областью значений. Такой предел полезен, когда у модели есть режимы вне необходимой области к конкретному приложению. Когда вы применяете предел частоты, Model Reducer определяет, какие состояния нужно усечь, на основе их энергетического вклада только в заданную частотную область значений. Пренебрежение энергетическими вкладами вне этой области значений может привести к еще более низкому приближению, которое все еще адекватно для вашего применения.
Чтобы ограничить расчет сингулярного значения, проверяйте Focus on range. Затем задайте частотную область значений:
В текстовом поле введите вектор формы [fmin,fmax]
. Модули rad/TimeUnit
, где TimeUnit
является TimeUnit
свойство модели, которую вы сокращаете.
На графике отклика или графике ошибки перетаскивание контуров заштрихованной области или самой заштрихованной области. Model Reducer анализирует вклады в состояние только в заштрихованной области.
Когда вы устанавливаете или снимаете флажок Focus on range или изменяете выбранную область значений, Model Reducer автоматически вычисляет новые модели пониженного порядка.
Примечание
Проверка Focus on range автоматическая очистка Preserve DC Gain. Чтобы применить соответствие постоянного тока, даже при использовании пределов частоты, перепроверьте Preserve DC Gain. Обратите внимание, что ограничение области значений частоты не поддерживается относительной погрешностью управлением.
Можно выбрать между абсолютной и относительными погрешностями, выбрав соответствующую опцию в Error Bound. Установка значения absolute управляет абсолютной ошибкой Установка значения relative управляет относительной погрешностью . Относительная погрешность дает лучшее соответствие между частотой, в то время как абсолютная ошибка подчеркивает области с большинством усиления.
Примечание
Переключение между опциями Error Bound автоматически очищает Preserve DC Gain и Focus on Range. Чтобы применить соответствие контроллера домена, перепроверите Preserve DC Gain. Обратите внимание, что ограничение области значений частоты не поддерживается относительной погрешностью управлением.
Когда у вас есть одна или несколько сокращенных моделей, которые вы хотите хранить и анализировать дальше, нажмите. Новые модели появляются в Data Browser. Если вы задали несколько порядки, каждая сокращенная модель появляется отдельно. Имена моделей отражают пониженный порядок модели.
После создания сокращенных моделей в Data Browser можно продолжить изменение параметров сокращения и создать уменьшенные модели с различными порядками для анализа и сравнения.
Теперь можно выполнить последующий анализ с помощью уменьшенной модели. Для примера:
Исследуйте другие отклики редуцированной системы, такие как переходные характеристики или график Николса. Для этого используйте инструменты на вкладке Plots. Смотрите Визуализацию Моделей Пониженного Порядка в Приложении Model Reducer для получения дополнительной информации.
Экспортируйте уменьшенные модели в рабочее пространство MATLAB для последующего анализа или системы управления. На вкладке Model Reducer нажмите Export.
Чтобы создать скрипт MATLAB, можно использовать для дальнейших задач снижения сложности модели в командной строке, нажмите Create Reduced Model и выберите Generate MATLAB Script.
Model Reducer создает скрипт, который использует balred
команда для выполнения снижения сложности модели с параметрами и опциями, установленными на вкладке Balanced Truncation. Скрипт откроется в редакторе MATLAB.
Вместо работы в приложении Model Reducer можно выполнить сбалансированное усечение в других окружениях.
В Live Editor используйте задачу Reduce Model Порядка, чтобы в интерактивном режиме выполнить сбалансированное снижение сложности модели усечения и сгенерировать код в вашем live скрипте. Для получения примера см. Снижение сложности модели в Live Editor.
В командной строке MATLAB или в скриптах и функциях используйте balred
команда. Для примеров смотрите: