举例求解矩阵的特征值和特征向量

(先明确:只有方阵才能求出特征值,非方阵只能求奇异值。)
  直接举一个例子:求下面矩阵M的特征值和特征向量。
M=[460−3−50−3−61]M =\begin{bmatrix} 4 & 6 & 0 \\ -3 & -5 & 0 \\ -3 & -6 & 1 \end{bmatrix} M=⎣⎡​4−3−3​6−5−6​001​⎦⎤​
  设矩阵M的特征值为λ\lambdaλ,列出矩阵M的特征方程:矩阵M减去,λ\lambdaλ乘以和M同等大小的单位矩阵E。再让它们整体的行列式的值等于0即可。如下所示:
∣M−λE∣=0(1)|M - \lambda E| = 0\tag{1}∣M−λE∣=0(1)
  求解(1)式的步骤如下:
∣M−λE∣=[4−λ60−3−5−λ0−3−61−λ]=(1−λ)[4−λ6−3−5−λ]=(λ−1)2(λ+2)|M - \lambda E| = \begin{bmatrix} 4-\lambda & 6 & 0 \\ -3 & -5-\lambda & 0 \\ -3 & -6 & 1-\lambda \end{bmatrix} = (1-\lambda) \begin{bmatrix} 4-\lambda & 6 \\ -3 & -5-\lambda \end{bmatrix} = (\lambda -1)^{2}(\lambda + 2)∣M−λE∣=⎣⎡​4−λ−3−3​6−5−λ−6​001−λ​⎦⎤​=(1−λ)[4−λ−3​6−5−λ​]=(λ−1)2(λ+2)
  所以特征值为1和-2,重数是1。
  然后,把每个特征值λ\lambdaλ带入到下方的线性方程组(M−λE)x=0(M - \lambda E)x = 0(M−λE)x=0,求出特征向量。

当λ1=−2\lambda_{1}=-2λ1​=−2时,解线性方程组:(M−(−2)E)x=0(M - (-2)E)x = 0(M−(−2)E)x=0。
∣M+2E∣=[660−3−30−3−63]⇒先变成增广矩阵[6600−3−300−3−630]⇒再初等行变换[110000000−110]|M + 2E| = \begin{bmatrix} 6 & 6 & 0 \\ -3 & -3 & 0 \\ -3 & -6 & 3 \end{bmatrix} \xRightarrow{先变成增广矩阵} \begin{bmatrix} 6 & 6 & 0 & 0\\ -3 & -3 & 0 & 0\\ -3 & -6 & 3 & 0 \end{bmatrix} \xRightarrow{再初等行变换} \begin{bmatrix} 1 & 1 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & -1 & 1 & 0 \end{bmatrix} ∣M+2E∣=⎣⎡​6−3−3​6−3−6​003​⎦⎤​先变成增广矩阵​⎣⎡​6−3−3​6−3−6​003​000​⎦⎤​再初等行变换​⎣⎡​100​10−1​001​000​⎦⎤​
所以,x1+x2=0;−x2+x3=0x_{1}+x_{2}=0; -x_{2}+x_{3}=0x1​+x2​=0;−x2​+x3​=0。随便带一个值,一般取x3=1x_{3}=1x3​=1,可解得x2=1,x1=−1。x_{2}=1,x_{1}=-1。x2​=1,x1​=−1。
解得:x1=−1,x2=1,x3=1x_{1}=-1,x_{2}=1,x_{3}=1x1​=−1,x2​=1,x3​=1,所以λ1\lambda_{1}λ1​的特征向量为:p1=[−111]。p_{1} =\begin{bmatrix}-1\\ 1\\ 1\end{bmatrix}。p1​=⎣⎡​−111​⎦⎤​。

当λ2=λ3=1\lambda_{2}=\lambda_{3}=1λ2​=λ3​=1时,解线性方程组:(M−E)x=0(M - E)x = 0(M−E)x=0。
∣M−E∣=[360−3−60−3−60]⇒先变成增广矩阵[3600−3−600−3−600]⇒再初等行变换[120000000000]|M - E| = \begin{bmatrix} 3 & 6 & 0 \\ -3 & -6 & 0 \\ -3 & -6 & 0 \end{bmatrix} \xRightarrow{先变成增广矩阵} \begin{bmatrix} 3 & 6 & 0 & 0\\ -3 & -6 & 0 & 0\\ -3 & -6 & 0 & 0 \end{bmatrix} \xRightarrow{再初等行变换} \begin{bmatrix} 1 & 2 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{bmatrix} ∣M−E∣=⎣⎡​3−3−3​6−6−6​000​⎦⎤​先变成增广矩阵​⎣⎡​3−3−3​6−6−6​000​000​⎦⎤​再初等行变换​⎣⎡​100​200​000​000​⎦⎤​
所以,x1+2x2=0;x3=0x_{1}+2x_{2}=0; x_{3}=0x1​+2x2​=0;x3​=0。随便带一个值,这里取x1=−2x_{1}=-2x1​=−2,可解得x2=1。x_{2}=1。x2​=1。
解得:x1=−2,x2=1,x3=0x_{1}=-2,x_{2}=1,x_{3}=0x1​=−2,x2​=1,x3​=0,所以λ2\lambda_{2}λ2​特征向量为:p2=[−210]。p_{2} = \begin{bmatrix}-2\\ 1\\ 0\end{bmatrix}。p2​=⎣⎡​−210​⎦⎤​。
再取,x1=x2=0,x3=1x_{1}=x_{2}=0,x_{3}=1x1​=x2​=0,x3​=1,可解得λ3\lambda_{3}λ3​的特征向量为:p3=[001]。p_{3} = \begin{bmatrix}0\\ 0\\ 1\end{bmatrix}。p3​=⎣⎡​001​⎦⎤​。

综上所述:矩阵M的特征值为λ1=−2,λ2=λ3=1\lambda_{1}=-2,\lambda_{2}=\lambda_{3}=1λ1​=−2,λ2​=λ3​=1。对应的特征向量为:p1=[−111]p_{1} =\begin{bmatrix}-1\\ 1\\ 1\end{bmatrix}p1​=⎣⎡​−111​⎦⎤​、p2=[−210]、p3=[001]p_{2} = \begin{bmatrix}-2\\ 1\\ 0\end{bmatrix}、p_{3} =\begin{bmatrix}0\\ 0\\ 1\end{bmatrix}p2​=⎣⎡​−210​⎦⎤​、p3​=⎣⎡​001​⎦⎤​。

如何再继续进行矩阵的特征分解呢?

接下来进行矩阵的特征分解,上面已经求出了矩阵M的特征值和特征向量了,下面就非常简单了。
设矩阵Q为矩阵M的特征向量按列组成的矩阵。将特征向量按照从大到小、从左到右按列排列构成Q。 Λ 是对角矩阵,其对角线上的元素为对应的特征值。(按照刚才特征向量的位置,把对应特征值从上往下排列)如下所示:
Q=[−20−1101011],Λ=[10001000−2]。Q= \begin{bmatrix} -2 & 0 &-1\\ 1 & 0 &1 \\ 0 & 1 &1 \end{bmatrix} ,Λ= \begin{bmatrix} 1 & 0 &0\\ 0 & 1 &0 \\ 0 & 0 &-2 \end{bmatrix} 。 Q=⎣⎡​−210​001​−111​⎦⎤​,Λ=⎣⎡​100​010​00−2​⎦⎤​。
  所以最后,方阵M的特征值分解为:
M=QΛQ−1=[−20−1101011][10001000−2][−20−1101011]−1M=QΛQ^{-1}= \begin{bmatrix} -2 & 0 &-1\\ 1 & 0 &1 \\ 0 & 1 &1 \end{bmatrix} \begin{bmatrix} 1 & 0 &0\\ 0 & 1 &0 \\ 0 & 0 &-2 \end{bmatrix} \begin{bmatrix} -2 & 0 &-1\\ 1 & 0 &1 \\ 0 & 1 &1 \end{bmatrix}^{-1} M=QΛQ−1=⎣⎡​−210​001​−111​⎦⎤​⎣⎡​100​010​00−2​⎦⎤​⎣⎡​−210​001​−111​⎦⎤​−1

最后注意:
能够进行特征分解的矩阵,要满足以下两个条件:
  1.如果矩阵的所有特征根都不相等,那么绝对可以特征分解。
  2.如果矩阵有等根,只需等根(重特征值)对应的那几个特征向量,是线性无关的。那么也可以特征分解。如果不是就不能了。
综合说:就是要有n个线性无关的特征向量。

如何求矩阵的特征值和特征向量相关推荐

  1. numpy求矩阵的特征值与特征向量(np.linalg.eig函数详解)

    numpy求矩阵的特征值与特征向量(np.linalg.eig) 语法 np.linalg.eig(a) 功能 Compute the eigenvalues and right eigenvecto ...

  2. matlab编程 利用生成一个10阶魔方矩阵,求矩阵的特征值、特征向量,对于特征值,请按照降序进行排列,对应的特征向量进行同样的排序。...

    您可以使用 Matlab 中的 eig 函数来计算矩阵的特征值和特征向量.例如,假设您要求解的矩阵为 A,则可以使用以下代码求解: [V,D] = eig(A);

  3. 用R求矩阵的特征值和特征向量

    最近在学习多元统计分析的主成分分析时,发现需要经常计算矩阵的特征值和特征向量,自己就找了下用R来做计算的函数. 我们可以用sigen()函数来计算特征对. #创建一个矩阵 a <- matrix ...

  4. python求雅可比矩阵_雅可比算法求矩阵的特征值和特征向量

    目的 求一个实对称矩阵的所有特征值和特征向量. 前置知识 对于一个实对称矩阵\(A\),必存在对角阵\(D\)和正交阵\(U\)满足$$D=U^TAU$$\(D\)的对角线元素为\(A\)的特征值,\ ...

  5. matlab中怎么求矩阵的特征值和特征向量

    https://jingyan.baidu.com/article/d169e186047d86436611d88a.html matlab如何求矩阵特征值_xiaolu的专栏-CSDN博客_matl ...

  6. 利用OpenCV求矩阵的特征值和特征向量

    来源: 互联网 首先安转和配置OpenCV windows版,在此不赘述! 首先看看OpenCV中的矩阵运算的相关知识:CvMat(多通道矩阵) CvMat的结构定义: typedef struct ...

  7. 求矩阵全部特征值和特征向量的QR方法

    计算方法 本专栏为西安交通大学的<数值计算>研究生教材里面提供的计算方法撰写Python程序. ThinkZtoA ¥29.90 订阅博主 import numpy as np impor ...

  8. MATLAB反幂法求矩阵最小特征值及其特征向量

    A=input('输入代解矩阵:'); x=input('输入特征向量的迭代初值(列向量):'); k=0; while 1jk=1;for j=2:numel(A(1,:)) % 由 numel(A ...

  9. matlab——求矩阵最大特征值对应的特征向量

    A=[1,1,2,3,4;1,1,1,2,3;1/2,1,1,1,2;1/3,1/2,1,1,1;1/4,1/3,1/2,1,1];%待求矩阵[x,y]=eig(A);%求矩阵的特征值和特征向量,x为 ...

  10. 乘幂法计算矩阵主特征值和特征向量-Matlab实现

    文章目录 1.前言 2.方法介绍 3.算法步骤 4.数值实验 5.总结 6.Matlab代码 1.前言 乘幂法主要用于求实矩阵按模最大的特征值(主特征值)和相应特征向量.本文通过Matlab解决实际例 ...

最新文章

  1. Linux桌面环境与命令行环境切换快捷键,以及linux 图形界面 X Server 关闭 启动
  2. 从网游策划谈《梦幻西游》的成功之道
  3. Android permission 访问权限一览
  4. spring mvc学习(32):原生代码导入
  5. ionic app 优化三件套,让其更贴近原生app
  6. UNDO 表空间管理
  7. 关于求XXX.class.getResource(xxx).getPath()的用法
  8. noip模拟赛 入阵曲
  9. 【FlexSim2019】自学笔记:交通工具路径设置 | NetworkNode | 操作员固定路径 | 叉车固定路径
  10. iOS开发之字符串(NSString)的截取的几种方法
  11. centos6 系统安装 system-config-kickstart 工具
  12. DSP技术是利用计算机或,DSP技术是什么?
  13. 腾讯翻译君在线翻译怎么翻译整个文件_腾讯文档:在线多人协作文档工具
  14. 大一上c语言基础知识题
  15. 20145240 《信息安全系统设计基础》第六周同学问题总结
  16. 龙芯 python_html页面转PDF、图片操作记录,Vue项目入门实例
  17. [转载评论]月入1.5万 中产阶层该买什么车?
  18. android中自动翻译你看不懂的英文代码插件,让你实现在androistudio中学习英语!!
  19. EXCEL双击文件打开是空白的
  20. js实现字母序号自动递增

热门文章

  1. 开发完微信小程序后,怎样做好微信小程序运营?
  2. java去除空格的函数_JAVA中去掉空格--trim函数
  3. 扬天t4900d u盘linux,联想扬天T4900d台式电脑u盘启动设置方法
  4. linux 更改sh文件权限不够,linux权限不够,sh不能用
  5. 内存超频时序怎么调_超频技术之内存“时序”重要参数设置解说
  6. MUI框架学习(2)-页面间传值
  7. 最新:2021年7月全国程序员平均薪资出炉!你还坐得住吗?
  8. 腾讯云服务器购买详细教程
  9. 论文参考文献DOI含义
  10. Tecplot读取Excel文件中的数据