Сравните усеченный и DC совпадающие приближения модели младшего разряда

В этом примере показано, как вычислить аппроксимацию младшим порядком двумя способами и сравнивает результаты. Когда вы вычисляете аппроксимацию младшим порядком сбалансированным методом усечения, вы можете также:

  • Отбросьте состояния, которые делают самый маленький вклад в поведение системы, изменяя остающиеся состояния, чтобы сохранить усиление DC системы.

  • Отбросьте низкоэнергетические состояния, не изменяя остающиеся состояния.

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

Этот пример сравнивает методы устранения состояния balred команда, Truncate и MatchDC. Можно так же управлять методом устранения состояния в приложении Model Reducer, на вкладке Balanced Truncation, с помощью флажка Preserve DC Gain, как показано.

Рассмотрите следующую систему.

Создайте модель с обратной связью этой системы от r до y.

G = zpk([0 -2],[-1 -3],1);
C = tf(2,[1 1e-2]);
T = feedback(G*C,1)
T =
 
             2 s (s+2)
  --------------------------------
  (s+0.004277) (s+1.588) (s+4.418)
 
Continuous-time zero/pole/gain model.

T система третьего порядка, которая имеет нулевую полюсом почти отмену близко к s = 0. Поэтому это - хороший кандидат на сокращение порядка приближением.

Вычислите два приближения второго порядка к T, тот, который сохраняет усиление DC и то, которое обрезает самое низкое энергетическое состояние, не изменяя другие состояния. Используйте balredOptions задавать методы приближения, MatchDC и Truncate, соответственно.

matchopt = balredOptions('StateProjection','MatchDC');
truncopt = balredOptions('StateProjection','Truncate');
Tmatch = balred(T,2,matchopt);
Ttrunc = balred(T,2,truncopt);

Сравните частотные характеристики аппроксимированных моделей.

bodeplot(T,Tmatch,Ttrunc)
legend('Original','DC Match','Truncate')

Figure contains 2 axes. Axes 1 contains 3 objects of type line. These objects represent Original, DC Match, Truncate. Axes 2 contains 3 objects of type line. These objects represent Original, DC Match, Truncate.

Усеченная модель Ttrunc совпадает с исходной моделью хорошо на высоких частотах, но значительно отличается в низкой частоте. С другой стороны, Tmatch дает к хорошему соответствию в низких частотах как ожидалось, за счет высокочастотной точности.

Можно также видеть различия между этими двумя методами путем исследования ответа временного интервала в различных режимах. Сравните медленную динамику путем рассмотрения переходного процесса всех трех моделей с долгосрочным горизонтом.

stepplot(T,Tmatch,'r--',Ttrunc,1500)
legend('Original','DC Match','Truncate')

Figure contains an axes. The axes contains 3 objects of type line. These objects represent Original, DC Match, Truncate.

Как ожидалось, на долгом времени масштабирует соответствующее DC приближение Tmatch имеет очень похожий ответ на исходную модель.

Сравните быстрые переходные процессы в переходном процессе.

stepplot(T,Tmatch,'r',Ttrunc,'g--',0.5)
legend('Original','DC Match','Truncate')

Figure contains an axes. The axes contains 3 objects of type line. These objects represent Original, DC Match, Truncate.

По кратковременным шкалам, усеченное приближение Ttrunc предоставляет лучшее соответствие исходной модели. Какой метод приближения, который необходимо использовать, зависит, на котором режим является самым важным для приложения.

Смотрите также

Функции

Задачи Live Editor

Похожие темы