schur

Функция вычисления разложения Шура.

Синтаксис

T = schur(A);
T = schur(A, U);

Аргументы

Имя Тип данных Описание
A array2 Входная квадратная матрица
U array2 Выходная унитарная матрица

Описание

schur(A) – функция вычисляет разложение Шура матрицы A, результат - верхнетреугольная матрица Шура T

schur(A, U) – функция вычисляет разложение Шура матрицы A, результат - верхнетреугольная матрица Шура T и унитарная матрица U такие, что A = U * T * UT и U * UT = U * UT = I

Входная матрица A может задаваться:

  • как переменная типа матрица, определенная ранее:

    T = schur(A);

  • как матрица, состоящая из переменных, определенных ранее:

    T = schur([[a1, a2],[a3, a4]]);

  • как постоянный массив:

    T = schur([[1, 2],[5, 7]]);

Результат

Имя Тип данных Описание
T array2 Выходная верхнетреугольная матрица Шура

Пример

const A = [[-149, -50, -154],
            [ 537, 180, 546],
            [ -27,   -9, -25]];
var U: array2;
            
T = schur(A, U);        
//Проверка разложения
D = U * T * transp(U);

В скрипте примера производится разложение Шура матрицы A. В результате выполнения скрипта переменным T и U будут присвоены значения:

T = [[1,   -7.11188775,  815.8705909];
     [0,             2,  55.02363129];
     [0,             0,            3]]

U = [[    -0.316227766,  0.6529286251, 0.6882472016];
     [    0.9486832981,   0.217642875, 0.2294157339];
     [-2.674960947E-13, -0.7254762501, 0.6882472016]]

Переменной D будет присвоено значение, равное исходной матрице A.

Сопутствующие материалы

Материалов нет.