Собственное значение и собственный вектор квадратной матрицы, A является, соответственно, скалярный λ и ненулевой векторный υ, которые удовлетворяют
Aυ = λυ.
С собственными значениями на диагонали диагональной матрицы Λ и соответствующие собственные вектора, формирующие столбцы матричного V, вы имеете
AV = VΛ.
Если V несингулярен, это становится разложением собственного значения
A = VΛV –1.
Хорошим примером является матрица коэффициентов дифференциального уравнения dx/dt = A x:
A =
0 -6 -1
6 2 -16
-5 20 -10Решение этого уравнения выражается в терминах матричного экспоненциального x (t) = e t A x (0). Оператор
lambda = eig(A)
производит вектор-столбец, содержащий собственные значения A. Для этой матрицы собственные значения являются комплексными:
lambda =
-3.0710
-2.4645+17.6008i
-2.4645-17.6008iДействительная часть каждого из собственных значений отрицательна, таким образом, e λ нуль подходов t как t увеличивается. Ненулевая мнимая часть двух из собственных значений, ±ω, вносит колебательный компонент, sin (ω t), к решению дифференциального уравнения.
С двумя выходными аргументами, 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), равняйтесь одному.
matrix V*D*inv(V), который может быть записан более кратко как V*D/V, в ошибке округления A. И, inv(V)*A*V, или V\A*V, в ошибке округления of 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 = U S U ′,
где U является ортогональной матрицей, и S является верхней треугольной матрицей блока с блоками 2 на 2 и 1 на 1 на диагонали. Собственные значения показаны диагональными элементами и блоками 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