Page 72 - 363_
P. 72

73




                     Приведення матриці до форми Гесенберга здійснюється процедурою
            hess(A). Наприклад:

                   A =
                           1      2      3
                         -1       8    16
                         -5   100     3
                   >>disp(hess(A))
                              1.0000    -3.3340    -1.3728
                              5.0990    25.5000    96.5000
                                   0        12.5000   -14.5000
                   Більш  розгорнуте  звернення  [P,H]=hess(A)  дає  змогу  одержати,

            окрім  матриці  H  у  верхній  формі  Гесенберга,  а  також  унітарну  матрицю

            перетворень P, яка задовольняє умови:
                                     A = P * H * P;         P' * P = eye(size(A)).

                   Приклад:

                   >> [P,H] = hess(A)
                         P =
                                1.0000        0              0
                                     0     -0.1961    -0.9806
                                     0     -0.9806      0.1961
                         H =
                                1.0000     -3.3340     -1.3728
                                5.0990     25.5000     96.5000
                                     0         12.5000    -14.5000
                   Процедура  schur(А)  здійснює  приведення  матриці  до  форми  Шура,

            Просте  звернення  до  неї  приводить  до  одержання  матриці  у  формі  Шура.
            Комплексна форма Шура це верхня трикутна матриця із власними значеннями

            на  діагоналі.  Дійсна  форма  Шура  зберігає  на  діагоналі  лише  дійсні  власні

            значення,  а  комплексні  подаються  у  вигляді  блоків  (2*2),  частково  займаючи
            нижню  піддіагональ.  Звернення  [U,  T]  =  schur(А)  дозволяє,  окрім  матриці  T

            Шура,  одержати  також  унітарну  матрицю  U,  яка  задовольняє  умови:
                                                 A = U * H * U';   U' * U = eye(size(A)).

                   Якщо  початкова  матриця  А  є  дійсною,  то  результатом  є  дійсна  форма

            Шура,  якщо  ж  комплексною,  то  результатом  є  комплексна  форма  Шура.
            Наведемо приклад:

                   >> disp(schur(А))
                               1.2234    -6.0905    -4.4758
                                    0        45.2658   84.0944
                                    0          0.0000  -34.4893
                    >> [U,T] = hess(A)
                         U =
                                1.0000        0            0
                                     0     -0.1961   -0.9806
   67   68   69   70   71   72   73   74   75   76   77