И другие программы этой серии
2.7670
2.3183
0
0
-0.5757
-0.3986
0.0583
0.7115
-0.8023 1.5080
-0.6449 0.0000
0.1362 -0.0646 -0.9765
0.1540
-0.0842
2.6513
-2.9694
-5.8771
rsf2csf(u,t)
>> [U,T] U = -0.3226 0.5771 -0.0724 0.0682 T =
1.7610 + 2.2536i 0.5003 0 1.7610
0 0
0 0
0.363H 0.4318 + 0.4771i -0.5757 0.1362
0.3933i 0.2027 — 0.5551i -0.3986 -0.0646
0.1044i 0.1183 + 0.1136i 0.0583 -0.9765
0.5056i 0.4532 + 0.0657i 0.7115 0.1540
1.2897i 1.1168 + 0.5967i 1.7196 + 0.0626i
2.2536i 0.2383 + 1.1215i -0.4335 + 1.9717i
-0.6449 -2.9694
0 -5.8771
• H = hess(A) находит H, верхнюю форму Хессенберга для матрицы A;
• [P,H] = hess(A) возвращает матрицу Хессенберга H и унитарную матрицу преобразований P, такую что A=P*H*P\' и P\'*P=eye(size(A)).
Элементы матрицы Хессенберга, расположенные ниже первой поддиагонали, равны нулю. Если матрица симметричная или эрмитова, то матрица Хессенберга вырождается в трехдиагональную. Эта матрица имеет те же собственные значения, что и оригинал, но для их вычисления необходимо меньшее количество операций.
Пример: >> f=magic(4)
16
2
3
13
5
11
10
8
9
7
6
12
4
14
15
1
>> hess(f)
ans =
16.0000
-8.0577
8.8958
6.1595
-11.0454
24.2131
-8.1984
2.1241
0
-13.5058
-4.3894
-7.8918
0
0
3.2744
-1.8237
4.5. О скорости выполнения матричных операций
4.5.1.
Начало в части 1