exponenta event banner

Собственные значения

Разложение собственных значений

Собственное значение и собственный вектор квадратной матрицы А являются, соответственно, скалярным λ и ненулевым вектором, которые удовлетворяют

Astart= λ.

При наличии собственных значений на диагонали диагональной матрицы Λ и соответствующих собственных векторов, образующих столбцы матрицы V, имеется

AV = .

Если V не является сингулярным, это становится разложением собственных значений

A = VΛV-1.

Хорошим примером является матрица коэффициентов дифференциального уравнения dx/dt = Ax:

A =
     0    -6    -1
     6     2   -16
    -5    20   -10

Решение этого уравнения выражается в виде экспоненциальной матрицы x (t) = etAx (0). Заявление

lambda = eig(A)

создает вектор столбца, содержащий собственные значения A. Для этой матрицы собственные значения сложны:

lambda =
     -3.0710         
     -2.4645+17.6008i
     -2.4645-17.6008i

Действительная часть каждого из собственных значений отрицательна, поэтому eλ t приближается к нулю по мере увеличения t. Ненулевая мнимая часть двух собственных значений, ± λ, вносит колебательную составляющую, sin (startt), в решение дифференциального уравнения.

С двумя аргументами вывода, eig вычисляет собственные векторы и сохраняет собственные значения в диагональной матрице:

[V,D] = eig(A)
V =
  -0.8326         0.2003 - 0.1394i   0.2003 + 0.1394i
  -0.3553        -0.2110 - 0.6447i  -0.2110 + 0.6447i
  -0.4248        -0.6930            -0.6930          

D =
  -3.0710                 0                 0         
        0           -2.4645+17.6008i        0         
        0                 0           -2.4645-17.6008i

Первый собственный вектор является реальным, а два других вектора являются комплексными сопряжениями друг с другом. Все три вектора нормализованы, чтобы иметь евклидову длину, norm(v,2), равно единице.

Матрица V*D*inv(V), которые могут быть написаны более лаконично как V*D/V, находится в пределах ошибки округления A. И, inv(V)*A*V, или V\A*V, находится в пределах ошибки округления D.

Несколько собственных значений

Некоторые матрицы не имеют собственного векторного разложения. Эти матрицы не диагонализуются. Например:

A = [ 1    -2    1 
      0     1    4 
      0     0    3 ]

Для этой матрицы

[V,D] = eig(A)

производит

V =

    1.0000    1.0000   -0.5571
         0    0.0000    0.7428
         0         0    0.3714


D =

     1     0     0
     0     1     0
     0     0     3

Имеется двойное собственное значение при λ = 1. Первый и второй столбцы V одинаковые. Для этой матрицы полного набора линейно независимых собственных векторов не существует.

Декомпозиция Шура

Многие расширенные вычисления матрицы не требуют разложения собственных значений. Вместо этого они основаны на разложении Шура

A = USU ′,

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

Например, сравните собственное значение и разложение Шура этой дефектной матрицы:

A = [ 6    12    19 
     -9   -20   -33 
      4     9    15 ];

[V,D] = eig(A)
V =

  -0.4741 + 0.0000i  -0.4082 - 0.0000i  -0.4082 + 0.0000i
   0.8127 + 0.0000i   0.8165 + 0.0000i   0.8165 + 0.0000i
  -0.3386 + 0.0000i  -0.4082 + 0.0000i  -0.4082 - 0.0000i


D =

  -1.0000 + 0.0000i   0.0000 + 0.0000i   0.0000 + 0.0000i
   0.0000 + 0.0000i   1.0000 + 0.0000i   0.0000 + 0.0000i
   0.0000 + 0.0000i   0.0000 + 0.0000i   1.0000 - 0.0000i
[U,S] = schur(A)
U =

   -0.4741    0.6648    0.5774
    0.8127    0.0782    0.5774
   -0.3386   -0.7430    0.5774


S =

   -1.0000   20.7846  -44.6948
         0    1.0000   -0.6096
         0    0.0000    1.0000

Матрица A является дефектным, поскольку не имеет полного набора линейно независимых собственных векторов (второй и третий столбцы V одинаковые). Поскольку не все столбцы V линейно независимы, имеет большое число условий около ~1e8. Однако schur может вычислить три различных базисных вектора в U. С тех пор U ортогонально, cond(U) = 1.

Матрица S имеет действительное собственное значение в качестве первой записи на диагонали и повторяющееся собственное значение, представленное нижним правым блоком 2 на 2. Собственные значения блока 2 на 2 также являются собственными значениями A:

eig(S(2:3,2:3))
ans =

   1.0000 + 0.0000i
   1.0000 - 0.0000i

См. также

|

Связанные темы