modred

Устраните состояния из моделей в пространстве состояний

Синтаксис

rsys = modred(sys,elim)
rsys = modred(sys,elim,'method')

Описание

rsys = modred(sys,elim) уменьшает порядок непрерывной или дискретной модели в пространстве состояний sys путем устранения состояний найден в векторном elim. Полный вектор состояния X разделен как X = [X1; X2], где X1 является уменьшаемым вектором состояния и X2, отбрасывается.

elim может быть вектор из индексов или логический вектор, соразмерный с X, где истинные значения отмечают состояния, которые будут отброшены. Эта функция обычно используется в сочетании с balreal. Используйте balreal сначала изолировать состояния с незначительным вкладом в ответ ввода-вывода. Если sys был сбалансирован с balreal и векторный g из сингулярных значений Ганкеля имеет маленькие записи M, можно использовать modred устранить соответствующие состояния M. Например:

[sys,g] = balreal(sys)  % Compute balanced realization
elim = (g<1e-8)         % Small entries of g are negligible states
rsys = modred(sys,elim) % Remove negligible states

rsys = modred(sys,elim,'method') также задает метод устранения состояния. Выбор для 'method' включение

  • 'MatchDC' (значение по умолчанию): Осуществите соответствие с усилениями DC. Матрицы пространства состояний повторно вычисляются как описано в Алгоритмах.

  • 'Truncate': Просто удалите X2.

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

Если модель в пространстве состояний sys был сбалансирован с balreal и grammians имеют m маленькие диагональные элементы, можно уменьшать порядок модели путем устранения последних состояний m с modred.

Примеры

свернуть все

Рассмотрите следующую непрерывную модель четвертого порядка.

h(s)=s3+11s2+36s+26s4+14.6s3+74.96s2+153.7s+99.65.

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

h = tf([1 11 36 26],[1 14.6 74.96 153.7 99.65]);
[hb,g] = balreal(h);

Исследуйте gramians.

g'
ans = 1×4

    0.1394    0.0095    0.0006    0.0000

Последние три диагональных элемента сбалансированного gramians относительно малы. Устраните эти три меньше всего способствующих состояния с modred, использование и совпадающее усиление DC и методы прямого удаления.

hmdc = modred(hb,2:4,'MatchDC');
hdel = modred(hb,2:4,'Truncate');

Оба hmdc и hdel модели первого порядка. Сравните их Предвещать ответы против той из исходной модели.

bodeplot(h,'-',hmdc,'x',hdel,'*')

Figure contains 2 axes objects. Axes object 1 contains 3 objects of type line. These objects represent h, hmdc, hdel. Axes object 2 contains 3 objects of type line. These objects represent h, hmdc, hdel.

Модель hdel уменьшаемого порядка ясно лучшее приближение частотного диапазона h. Теперь сравните переходные процессы.

stepplot(h,'-',hmdc,'-.',hdel,'--')

Figure contains an axes object. The axes object contains 3 objects of type line. These objects represent h, hmdc, hdel.

В то время как hdel точно отражает переходное поведение, только hmdc дает истинный установившийся ответ.

Алгоритмы

Алгоритм для совпадающего метода усиления DC следующие. Для моделей непрерывного времени

x˙=Ax+Byy=Cx+Du

вектор состояния разделен в x1, чтобы быть сохраненным, и x2, быть устраненным.

[x˙1x˙2]=[A11A12A21A22][x1x2]+[B1B2]uy=[C1C2]x+Du

Затем производная x2 обнуляется, и получившееся уравнение решено для x1. Моделью уменьшаемого порядка дают

x˙1=[A11A12A221A21]x1+[B1A12A221B2]uy=[C1C2A221A21]x+[DC2A221B2]u

Случай дискретного времени обработан так же путем установки

x2[n+1]=x2[n]

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

| |

Представлено до R2006a