balreal

Основанная на грамиане балансировка ввода/вывода реализации пространства состояний

Синтаксис

[sysb,g] = balreal(sys)
[sysb,g,T,Ti] = balreal(sys)
[___] = balreal(sys,opts)

Описание

[sysb,g] = balreal(sys) вычисляет сбалансированную реализацию sysb для устойчивого фрагмента модели LTI sys. balreal указатели и непрерывные и дискретные системы. Если sys не модель в пространстве состояний, она сначала и автоматически преобразована в пространство состояний с помощью ss.

Для устойчивых систем, sysb эквивалентная реализация, для которой управляемость и наблюдаемость грамиана являются равными и диагональными, их диагональные элементы, формирующие векторный g из сингулярных значений Ганкеля. Маленькие записи в g укажите на состояния, которые могут быть удалены, чтобы упростить модель (использование modred уменьшать порядок модели).

Если sys имеет нестабильные полюса, его устойчивая часть изолируется, балансируется и добавила назад к его нестабильной части, чтобы сформировать sysb. Записи g соответствие нестабильным режимам установлено в Inf.

[sysb,g,T,Ti] = balreal(sys) также возвращает векторный g содержа диагональ сбалансированного грамиана, преобразование подобия состояния xb = Tx раньше преобразовывал sys к sysb, и обратное преобразование Ti = T-1.

Если система нормирована правильно, диагональный g из объединенного грамиана может использоваться, чтобы уменьшать порядок модели. Поскольку g отражает объединенную управляемость и наблюдаемость отдельных государств сбалансированной модели, можно удалить те состояния с маленьким g(i) при сохранении самых важных характеристик ввода - вывода исходной системы. Использование modred выполнять устранение состояния.

[___] = balreal(sys,opts) вычисляет сбалансированную реализацию с помощью опций, что вы задаете использование balredOptions. Опции включают смещение и опции допуска для вычисления устойчиво-нестабильных разложений. Опции также позволяют вам ограничивать расчет грамиана интервалами частоты и определенным временем. Смотрите balredOptions для деталей.

Примеры

свернуть все

Рассмотрите следующую модель нулей, полюсов и усиления с почти отменой нулевых полюсом пар:

sys = zpk([-10 -20.01],[-5 -9.9 -20.1],1)
sys =
 
     (s+10) (s+20.01)
  ----------------------
  (s+5) (s+9.9) (s+20.1)
 
Continuous-time zero/pole/gain model.

Реализация пространства состояний со сбалансированным gramians получена

[sysb,g] = balreal(sys);

Диагональные элементы соединения gramian

g'
ans = 1×3

    0.1006    0.0001    0.0000

Это указывает что последние два состояния sysb слабо связываются с вводом и выводом. Можно затем удалить эти состояния

sysr = modred(sysb,[2 3],'del');

Это дает к следующему приближению первого порядка исходной системы.

zpk(sysr)
ans =
 
   1.0001
  --------
  (s+4.97)
 
Continuous-time zero/pole/gain model.

Сравните Предвещать ответы исходных моделей и моделей уменьшаемого порядка.

bodeplot(sys,sysr,'r--')

Figure contains 2 axes. Axes 1 contains 2 objects of type line. These objects represent sys, sysr. Axes 2 contains 2 objects of type line. These objects represent sys, sysr.

Графики показывают, что удаление вторых и третьих состояний не оказывает много влияния на системную динамику.

Создайте нестабильную систему.

sys = tf(1,[1 0 -1])
sys =
 
     1
  -------
  s^2 - 1
 
Continuous-time transfer function.

Примените balreal создать сбалансированную-gramian реализацию.

[sysbal,g] = balreal(sys)
sysbal =
 
  A = 
       x1  x2
   x1   1   0
   x2   0  -1
 
  B = 
            u1
   x1  -0.7071
   x2  -0.7071
 
  C = 
            x1       x2
   y1  -0.7071   0.7071
 
  D = 
       u1
   y1   0
 
Continuous-time state-space model.
g = 2×1

       Inf
    0.2500

Нестабильный полюс обнаруживается как Inf в векторном g.

Алгоритмы

Рассмотрите модель

x˙=Ax+Buy=Cx+Du

с управляемостью и наблюдаемостью грамиана Wc и Wo. Координатное преобразование состояния x¯=Tx производит эквивалентную модель

x¯˙=TAT1x¯+TBuy=CT1x¯+Du

и преобразовывает грамиан к

W¯c=TWcTT,W¯o=TTWoT1

Функциональный balreal вычисляет конкретное преобразование подобия T, таким образом что

W¯c=W¯o=diag(g)

См. [1], [2] для получения дополнительной информации об алгоритме.

Если вы используете TimeIntervals или FreqIntervals опции balredOptionsто balreal основывает сбалансированную реализацию на ограниченной временем или ограниченной частотой управляемости и наблюдаемости грамиана. Для получения информации о вычислении ограниченного временем и ограниченного частотой грамиана смотрите gram и [4].

Ссылки

[1] Laub, A.J., М.Т. Хит, К.К. Пэйдж и Р.К. Уорд, "Расчет Системных Преобразований Балансировки и Другие Применения Одновременных Алгоритмов Диагонализации", IEEE® Trans. Автоматическое управление, AC-32 (1987), стр 115-122.

[2] Мур, B., "Анализ главных компонентов в Линейных системах: Управляемость, Наблюдаемость и Снижение сложности модели", Транзакции IEEE на Автоматическом управлении, AC-26 (1981), стр 17-31.

[3] Laub, A.J., "Расчет Балансирующихся Преобразований", Proc. ACC, Сан-Франциско, Vol.1, бумага FA8-E, 1980.

[4] Гавронский, W. и Дж.Н. Джуэнг. “Снижение сложности модели в Интервалах Ограниченного времени и Частоты”. Международный журнал Системной Науки. Издание 21, Номер 2, 1990, стр 349–376.

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

| | |

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