Иллюстрированный самоучитель по Matlab


Приведение матриц к форме Шура и Хессенберга - часть 2


A*V*diag(BB) = B*V*diag(AA)

Пример:

» А=[1 2 3:6 3 0;4 7 0];В=[1 1 1:0 7 4:9 4 1]; 

» [aa.bb.f,g.h]=qz(A.B) 

аа =

-2.9395 0.4775 0.8751

0 9.5462 3.5985

0 0 3.2073

bb=

5.5356

3.5345

-2.2935

0

8.4826

6.7128

0

0

0.7667

-0.0367

0.7327

-0.6796

-0.1052

-0.6791

-0.7265

-0.9938

0.0448

0.1020

-0.7023 -0.7050 -0.0989

0.6867 -0.6343 -0.3552

-0.1877 0.3174 -0.9295 

h =

-1.0000 -0.4874 -0.0561

0.9778 -1.0000 0.6238

-0.2673 0.4340 -1.0000

Функция qz(A,B,' real') при заданных матрицах А и В возвращает действительные треугольную матрицу ВВ и квазитреугольную матрицу АА с 2x2 диагональными блоками, соответствующими парам сопряженных комплексных значений. Так как матрица АА квазитреугольная, то необходимо решить проблемы обобщения 2x2 для получения подлинных собственных значений.

Пример:

» А=[1 2 3:6 3 0:4 7 0];В=[1 1 1:0 7 4;9 4 1]; 

» [aa.bb.f,g.h]=qz(A.B,'real') 

аа =

-2.9395 0.4775 0.8751

0     9.5462   3.5985

0     0     3.2073 

bb =


5.5356     3.5345     -2.2935

0             8.4826      6.7128

0                0             0.7667 

f =

-0.0367     0.7327     -0.6796

-0.1052     -0.6791     -0.7265

-0.9938     0.0448     0.1020 

g=

-0.7023     -0.7050     -0.0989     

0.6867     -0.6343     -0.3552




Начало  Назад  Вперед