ordqz

Переупорядочьте собственные значения в QZ-разложении

Описание

[AAS,BBS,QS,ZS] = ordqz(AA,BB,Q,Z,select) переупорядочивает QZ-разложение Q*A*Z = AA и Q*B*Z = BB произведенный [AA,BB,Q,Z] = qz(A,B) и возвращает переупорядоченный матричный парный (AAS,BBS) наряду с ортогональными матрицами (QS,ZS), таким образом, что QS*A*ZS = AAS и QS*B*ZS = BBS.

В этом переупорядочении выбранный кластер собственных значений появляется в ведущих (верхних левых) диагональных блоках квазитреугольного парного (AAS,BBS). Ведущие столбцы ZS охватите соответствующее инвариантное подпространство. Логический векторный select задает выбранный кластер как e(select), где e = ordeig(AA,BB).

пример

[AAS,BBS,QS,ZS] = ordqz(AA,BB,Q,Z,keyword) устанавливает выбранный кластер включать все собственные значения в область, заданную keyword.

[AAS,BBS,QS,ZS] = ordqz(AA,BB,Q,Z,clusters) переупорядочивание несколько кластеров одновременно. ordqz сортирует заданные кластеры в порядке убывания по диагонали (AAS,BBS), с кластером самого высокого индекса, появляющегося в левом верхнем углу.

Примеры

свернуть все

Вычислите QZ-разложение пары матриц, и затем переупорядочьте факторы согласно заданному упорядоченному расположению собственных значений.

Найдите QZ-разложение, или обобщил разложение Шура, пары матриц A и B. Это разложение приводит к факторам AA=QAZ и BB=QBZ.

A = magic(5);
B = hilb(5);
[AA,BB,Q,Z] = qz(A,B)
AA = 5×5

   14.5272   -2.3517    8.5757   -0.2350   -1.4432
         0  -19.7471    2.1824    4.5417    7.2059
         0         0  -17.9538    8.9292   -9.6961
         0         0         0   30.3449  -47.9191
         0         0         0         0   32.4399

BB = 5×5

    0.0000    0.0005    0.0018    0.0465    0.2304
         0    0.0008    0.0199    0.1662    0.7320
         0         0    0.0210    0.1006   -0.1341
         0         0         0    0.0623   -1.1380
         0         0         0         0    0.7434

Q = 5×5

   -0.1743   -0.1099   -0.0789   -0.4690    0.8552
   -0.7567   -0.1151   -0.0846    0.6172    0.1617
   -0.4010    0.6782    0.5478   -0.2664   -0.0901
    0.4178   -0.0297    0.6473    0.4883    0.4089
   -0.2484   -0.7168    0.5173   -0.2995   -0.2593

Z = 5×5

    0.0057   -0.0424   -0.2914   -0.5860   -0.7549
   -0.1125    0.4109    0.7635    0.1734   -0.4533
    0.4995   -0.6746    0.1486    0.4053   -0.3303
   -0.7694   -0.2140   -0.2614    0.4749   -0.2616
    0.3818    0.5731   -0.4917    0.4866   -0.2173

Начиная с AA и BB являются треугольными, используют ordeig извлекать собственные значения из диагональных блоков AA и BB.

e = ordeig(AA,BB)
e = 5×1
106 ×

    2.8871
   -0.0257
   -0.0009
    0.0005
    0.0000

Разделите собственные значения на кластеры с действительными положительными собственными значениями (e>0) формирование ведущего кластера. Переупорядочьте матрицы AA, BBQ, и Z согласно этому упорядоченному расположению собственных значений.

[AAS,BBS,QS,ZS] = ordqz(AA,BB,Q,Z,'rhp')
AAS = 5×5

   14.5272   -1.2849    1.0391   -7.6821    4.4119
         0   21.7128  -19.1784   -1.8380    9.1187
         0         0   60.3083    8.4452   -6.4304
         0         0         0  -18.2081    3.3783
         0         0         0         0  -14.6375

BBS = 5×5

    0.0000    0.0114    0.1908    0.1119    0.0788
         0    0.0446    0.0377    0.1107    0.1978
         0         0    1.3820    0.6325    0.2807
         0         0         0    0.0007   -0.0137
         0         0         0         0    0.0171

QS = 5×5

   -0.1743   -0.1099   -0.0789   -0.4690    0.8552
   -0.6353    0.1853    0.4099    0.5765    0.2483
   -0.7034   -0.4518   -0.3456   -0.2295   -0.3591
    0.1415   -0.2036   -0.7054    0.6065    0.2703
   -0.2263    0.8414   -0.4568   -0.1647   -0.0705

ZS = 5×5

    0.0057   -0.0088   -0.5288   -0.3591   -0.7690
   -0.1125   -0.6095   -0.3858   -0.4737    0.4926
    0.4995    0.6478   -0.2711   -0.3644    0.3529
   -0.7694    0.4176   -0.4090    0.1750    0.1890
    0.3818   -0.1855   -0.5752    0.6952    0.0758

Исследуйте новый порядок собственного значения.

E2 = ordeig(AAS,BBS)
E2 = 5×1
106 ×

    2.8871
    0.0005
    0.0000
   -0.0257
   -0.0009

Входные параметры

свернуть все

Матричные факторы в виде матриц, возвращенных [AA,BB,Q,Z] = qz(A,B). Эти матрицы удовлетворяют Q*A*Z = AA и Q*B*Z = BB. Для комплексных матриц, AA и BB являются треугольными.

Если AA и BB не формируйте допустимое разложение QZ, затем ordqz не производит ошибку и возвращает неправильные результаты.

Типы данных: single | double
Поддержка комплексного числа: Да

Унитарные матрицы в виде матриц, возвращенных [AA,BB,Q,Z] = qz(A,B). Эти матрицы удовлетворяют Q*A*Z = AA и Q*B*Z = BB.

Типы данных: single | double
Поддержка комплексного числа: Да

Кластерный селектор в виде логического вектора с длиной равняется количеству обобщенных собственных значений. Обобщенные собственные значения появляются по диагонали AA-λ*BB.

Типы данных: логический

Ключевое слово области собственного значения в виде одной из опций в этой таблице.

Опция

Выбранная область

(e = ordeig(AA,BB))

'lhp'

Левая полуплоскость (real(e) < 0)

'rhp'

Правая полуплоскость (real(e) >= 0)

'udi'

Внутренняя часть единичного диска (abs(e) < 1)

'udo'

Внешний вид единичного диска (abs(e) >= 1)

Кластерные индексы в виде вектора положительных целых чисел с длиной равняются количеству собственных значений. clusters присвоения каждое собственное значение, возвращенное e = ordeig(AA,BB) к различному кластеру. Все собственные значения с тем же значением индекса в clusters сформируйте один кластер.

Пример: ordqz(AA,BB,Q,Z,[1 1 2 3 3]) группы пять собственных значений в три кластера.

Типы данных: single | double

Выходные аргументы

свернуть все

Переупорядоченные матрицы, возвращенные как матрицы, которые удовлетворяют QS*A*ZS = AAS и QS*B*ZS = BBS.

QS и ZS унитарны, в то время как AAS является квазитреугольным и BBS является треугольным.

Больше о

свернуть все

Квазитреугольный

Верхняя квазитреугольная матрица может следовать из разложения Шура или обобщила Шура (QZ) разложение действительных матриц. Эти матрицы являются блоком, верхним треугольный с блоками 2 на 2 и 1 на 1 по диагонали.

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

Советы

  • Если AA имеет комплексно-сопряженные пары (ненулевые элементы на поддиагонали), затем необходимо переместить пару в тот же кластер. В противном случае, ordqz действия, чтобы держать пару вместе:

    • Если select не то же самое для двух собственных значений в сопряженной паре, затем ordqz обработки оба, как выбрано.

    • Если clusters не то же самое для двух собственных значений в сопряженной паре, затем ordqz обработки оба как часть кластера с большим индексом.

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

| |

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