先决条件:
- 特征向量
- 零空间
关于特征值和特征向量的一些要点:
- 即使对于实矩阵,特征值也可以是复数。
- 当特征值变复数时,特征向量也变复数。
- 如果矩阵是对称的(例如A = A T ),那么特征值总是实数。
- 因此,对称矩阵的特征向量也是实数。
- 对称矩阵总是有 n 个线性无关的特征向量。
现在,让我们讨论特征向量和零空间之间的联系。
从这篇文章中我们可以看出
AX = λX
现在让我问你一个问题。当 lambda 为 0 时会发生什么?即特征值之一变为 0。
因此,当特征值之一变为 0 时,我们就有了这个方程,它由下式给出
AX = 0 —(等式 1)
从这篇文章中我们可以看出
AB = 0 —(等式 2)
所以你注意到方程 1 和方程 2 的形式是相同的。
所以,这基本上意味着X是对应于特征值的特征向量, lambda 等于0 ,是一个零空间向量,因为它只是我们在这里注意到的形式。因此,我们可以说,对应于零特征值的特征向量在原始矩阵A的零空间中。相反,如果与特征向量对应的特征值不为0 ,则该特征向量不能在A的零空间中。所以,这些是我们需要知道的重要结果。
所以,这就是特征向量如何连接到零空间。
例子:
考虑以下A矩阵
请注意,这是一个对称矩阵,因此正如我之前在重点部分所说的那样,特征值始终是实数。
该矩阵的特征值是
λ = (0, 1, 2)
对应于这些特征值的特征向量是
代码:计算特征值和特征向量的Python代码
# Python program to illustrate
# connection between eigenvectors and nullspace
# Importing required libraries
import numpy as np
from numpy import linalg
# Taking A matrix
A = np.array([
[0.36, 0.48, 0],
[0.48, 0.64, 0],
[0, 0, 2]
])
# Calculating eigenvalues and eigenvectors
eigValues, eigVectors = linalg.eig(A)
# Printing those values
print("Eigenvalue are :", eigValues)
print("Eigenvectors are :", eigVectors)
# Taking eigenvector 1
eigVector1 = np.array([
[-0.8],
[0.6],
[0]
])
# Matrix multiplication between A and eigenvector1
result = np.dot(A, eigVector1)
# Print the result
print(result)
# This code is contributed by Amiya Rout
Output:
Eigenvalue are : [0. 1. 2.]
Eigenvectors are :
[[-0.8 -0.6 0. ]
[ 0.6 -0.8 0. ]
[ 0. 0. 1. ]]
[[0.]
[0.]
[0.]]
所以我们从之前的讨论中注意到,如果X1是对应于 lambda 等于0的特征向量,那么这将在矩阵A的零空间中。让我们通过将A乘以X1 来验证它。我们检查
你可以很容易地看到,当你做这个计算时,你会得到这个(0, 0, 0) ,这基本上表明这是对应于零特征值的特征向量。