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