QR算法求矩阵全部特征值的基本思想是利用矩阵的QR分解通过迭代格式

将A=A1化成相似的上三角阵,从而求出矩阵A的全部特征值。

QR方法的计算步骤如下:

下面就依次进行介绍。

一. 将一般矩阵化为上Hessenberg阵

1.定义

一个矩阵如果满足i>j+1时aij=0,则将这个矩阵成为上Hessenberg阵。上Hessenberg阵

的形式如下:

2. Householder变换将一般矩阵转化为上Hessnberg阵

首先,选取Householder矩阵H1,使得经过H1相似变换后的矩阵H1AH1的元素a21下面的

元素全部为0,即a31, a41, ....., am1均为0,H1取如下形式

其中 为n-1阶HouseHolder矩阵。然后选取Householder矩阵H2,使得经过H2相似变换

之后的矩阵H2(H1AH1)H2第二列中a32下面的a42, ....am2均为0。如此进行n-2次,可以构造

n-2个householder矩阵H1,H2, Hn-2,使得 Hn-2....H2H2AH1H2....Hm-2 = H(H为上Hessenberg矩阵)。

对于一个n*m的矩阵A,第col次的H可以这样构造求得(col从0开始):

其中,I为n*n的单位矩阵, v'表示矩阵v的转置, sign(x0)表示x0的符号的相反数( 当x0>0时sign=-1,当x<=0时为1),

||x||表示向量x的长度, col等于所求的上hessenberg矩阵的序号,从0开始。

二. 用Givens变换对上hessnberg矩阵作QR分解

此时有  H = R21' * R32' * ... * Rn(n-1)'R = QR。

多次计算H,直到H的变化小于一个较小的阈值时,停止迭代,此时H主对角线上的元素

即为矩阵A的全部特征值。

下面举个例子来说明求解矩阵的全部特征值的过程。

求矩阵的全部特征值

首先将A化成上hessenberg阵,取

x = [0, 6, 4], 则 ||x|| = = 

则 w = [0, , 0] , v = w + 1 * x = [0, 6+, 4]

则 p = v*v'/v'*v =     

于是 H1 = I - 2*p =  

所以 H = H1AH1 =

H即为与A相似的上hessenberg矩阵。将H进行QR分解

这个程序的完整代码可以到这里下载,http://download.csdn.net/detail/xxc1605629895/6473181

QR分解求矩阵全部特征值相关推荐

  1. 【matlab】 QR分解 求矩阵的特征值

    "QR_H.m"function [Q,R] = QR_tao(A) %输入矩阵A %输出正交矩阵Q和上三角矩阵R [n,n]=size(A); E = eye(n); X = z ...

  2. QR分解求矩阵特征值、特征向量 C语言

    最近在看一个高光谱图像压缩算法,其中涉及到正交变换,计算正交变换时,需要对普通矩阵求其特征向量.想要在网上找一个现成的程序,可能是我百度的能力不强吧,居然真的没找见.好了废话不多说,下面进入正题. 计 ...

  3. (转)QR分解求矩阵的全部特征值

    QR算法求矩阵全部特征值的基本思想是利用矩阵的QR分解通过迭代格式 将A=A1化成相似的上三角阵,从而求出矩阵A的全部特征值. QR方法的计算步骤如下: 下面就依次进行介绍. 一. 将一般矩阵化为上H ...

  4. C语言通过QR分解计算矩阵的特征值和特征向量

    #include <stdio.h> #include <stdlib.h> #include <math.h> #include <time.h>// ...

  5. QR分解求矩阵绝对值-基于HouseHolder变换

    思路: 输入矩阵A(mxn)-->HouseHolder变换-->获得矩阵B(Hessenberg矩阵nxn)-->Gievens变换 -->获得Q(标准正交nxn)和R(上三 ...

  6. 双步位移求解特征值matlab,数值分析——带双步位移的QR分解求特征值算法

    C语言实现数值分析中带双步位移的QR分解求特征值算法. 数 值 分 析(B) 大 作 业(二) 1.算法设计: ①矩阵的拟上三角化: 对实矩阵A进行相似变换化为拟上三角矩阵A(n 1),其变换矩阵采用 ...

  7. 如何用计算机求特征值特征向量,利用QR算法求解矩阵的特征值和特征向量

    利用QR算法求解矩阵的特征值和特征向量 为了求解一般矩阵(不是那种幼稚到shi的2 x 2矩阵)的特征值. 根据定义的话,很可能需要求解高阶方程... 这明显是个坑...高阶方程你肿么破... 折腾了 ...

  8. qr分解求线性方程组_矩阵分解

    矩阵分解 1. 矩阵的三角分解 1.1 高斯消去法解线性方程组 在聊起矩阵分解之前,先看一下我们小学二年级就学过的高斯消去法解线性方程组,其主要思想就是:将方程组写作写作增广矩阵(A|b)的形式,然后 ...

  9. 基于QR分解迭代求解方阵特征值和特征向量

    基于QR分解迭代求解方阵特征值和特征向量 一.特征值与特征向量求解的难点 线性代数的知识告诉我们如果要求一个方阵的特征值,只需要求解如下的特征方程的根即可: f ( λ ) = ( λ − λ 1 ) ...

最新文章

  1. 解决nginx 502 bad gateway--团队的力量
  2. jenkins_使用Jenkins / Hudson远程API检查作业状态
  3. 011_学生管理系统二
  4. 原文翻译:深度学习测试题(L1 W4 测试题)
  5. C#中的深复制与浅复制
  6. 功能测试包含哪些测试_一小时复习,期末考试必过 重邮软件测试题总结
  7. 开源纯C#工控网关+组态软件(八)表达式编译器
  8. activiti7 和业务_华电集团电子商务平台非招标业务操作指南
  9. STN可以增强CNN网络
  10. php通过数组存取mysql查询语句的返回值
  11. 安卓自定义view全解:初始化,onDraw函数,onMeasure函数,用户手势事件
  12. 网络工程交换技术之hsrp
  13. SMB扫描-Server Message Block 协议、nmap
  14. 工作以后就不怎么想学习了
  15. 二维数组遍历_布尔值数组的状态压缩
  16. win8在安装office visio2003出现“请求的操作需要提升”,解决方法
  17. C语言实现通讯录管理系统(动态内存分配版)
  18. 精要主义设计人生——对混乱的工作说不
  19. 网络流行语“不作不死”英文入选美国词典
  20. 【Week7 作业B】TT的旅行日记

热门文章

  1. 《士兵突击》- 激昂振奋人心的曲子
  2. drm学习笔记3-DRI介绍
  3. 重新理解CEO的学习能力----HHR计划----以太入门课
  4. docker部署owncloud私人网盘
  5. 国际标准货币代码表你最大多少?
  6. Aircrack-ng组件详解
  7. 微信墙设计原理php,php开发|微信墙|源码|微信留言板|微信表白墙|吐槽墙|心愿墙|源码...
  8. 红蓝对抗之隧道技术第一篇(内网穿透、端口映射端口转发、Netsh端口转发、CS正反向连接多层内网、Burp设置上游代理访问内网、MSF protfwd端口转发/重定向)
  9. FPGA23 PLL 锁相环使用及应用(专题: PLL 的应用场景)
  10. 直流电和交流电的定义