C语言实现数值分析中带双步位移的QR分解求特征值算法。

数 值 分 析(B) 大 作 业(二)

1、算法设计:

①矩阵的拟上三角化:

对实矩阵A进行相似变换化为拟上三角矩阵A(n 1),其变换矩阵采用Householder矩阵,变换过程如下:

(r)

若air 0(i r 2, ,n),则Hr I;

否则,sr=(0, ,0,ar+1,r, an,r),

cr= -sgn(ar+1,r)||sr||2,

ur=sr-crer+1 (0, ,0,ar 1,r cr,ar 2,r, ,anr),

Hr=I-2urur/urA

(r 1)

(r)(r)T

(r)

(r)(r)(r)

T

22

HrA

(r)

Hr。

(n 1)(n 2)(1)

Hn 2AHn 2 Hn 2 H1AH1 Hn 2,当r n 2时,得A

令P=H1H2 Hn-2又Hr是对称正交矩阵,于是An-1=PTAP成立,因而An-1与 A相似。

②矩阵的QR分解:

矩阵的QR分解过程与拟上三角化过程相似,在这里不再重复其原理。 ③求全部特征值

矩阵拟上三角化后利用带双步位移的QR方法,采用书本Page 63页具体算法实现。为了使编程方便,并体会goto语句使用的灵活性,程序中的跳转均使用goto Loop*实现。

④求A的相应于实特征值的特征向量

求实特征值对应的特征向量,即是求解线性方程组(λiI-A)xi=0,

(i 1, ,n)。因此,为得到全部实特征值对应的特征向量,解线性方程组的过

程要循环n次(n为矩阵阶数)。线性方程组的求解采用列主元素Gauss消去法。

双步位移求解特征值matlab,数值分析——带双步位移的QR分解求特征值算法相关推荐

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

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

  2. Julia 矩阵QR分解和特征值

    Julia 矩阵QR分解和特征值 前言 1. 施密特正交 (1) 利用施密特正交求出正交矩阵Q (2) 求出上三角矩阵R (3) 改进的消减QR分解 2. 完全QR分解 3. 矩阵QR分解的作用 (1 ...

  3. QR分解求矩阵全部特征值

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

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

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

  5. 【NA】基于QR分解的特征值迭代法

    Francis于1961-1962年利用矩阵的QR分解建立了计算矩阵特征值的QR方法,是计算中小型矩阵全部特征值的最有效方法之一. 本篇的主线是第一部分介绍QR分解,第二部分介绍从QR分解引出的特征值 ...

  6. qr分解求线性方程组_计算方法/数值分析第三章 线性方程组的数值解法

    主要内容: 1.引言 2.高斯消去法 3.直接分解法 4.解线性方程组的迭代法 5.向量范数.矩阵范数及迭代法的收敛性 第一节 引言 用克拉姆求解线性方程组 第二节 高斯消去法 高斯消去法是一种古老的 ...

  7. 孤岛双馈风电机组数学模型matlab,大型变速双馈风电机组动态稳定性仿真分析

    本文根据变速双馈风电机组的特性,在dq坐标系下,建立其动态数学模型,并且在Matlab中搭建了机组系统的仿真模块,仿真分析了双馈风力发电机组的动态稳定性,并通过仿真说明了变速双馈风力发电机组具有良好的 ...

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

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

  9. 五步移相法matlab程序_四步移相法提取相位(相位解包裹)基础问题

    最近在自学四步移相法提取相位,有个初级疑问: 有四幅移相图片a.b.c.d如下:完整解包裹代码如下: 程序运行后,主要是figure(7)和figure(8)没看太明白,;从figure(5)和fig ...

最新文章

  1. 【点云StatisticalOutlierFilter】python-pcl:去除离群点
  2. 深入理解Linux I/O系统
  3. mysql8.0 linux安装自启动_Linux系统安装部署MySQL8.0.12特详细教程
  4. SVN mime-type 笔记
  5. 过滤选择器——子元素过滤选择器
  6. Windows 下 Conda install 安装出现CondaHTTPError: HTTP 000 CONNECTION FAILED for url解决措施
  7. PyTorch 系列 | 数据加载和预处理教程
  8. 美团点评技术年货:一本覆盖各技术领域、1200+页的电子书
  9. 转:从框架看PHP的五种境界及各自的薪资待遇(仅限于二三线城市,一线除外)...
  10. jupyter notebook安装后无法连接到ubuntu gpu环境
  11. centos 6.4 使用sendmail发送邮件(cacti)
  12. CPU占用率高的可能性与解决办法
  13. java string to bit_Java Convert String to Binary
  14. ubuntu下如何对接斗鱼直播
  15. asp.net 邮件功能
  16. maven docker 部署到多台机器上。。_TensorFlow Serving + Docker + Tornado机器学习模型生产级快速部署
  17. 关于sp和unity近似的PBR的一篇国外文章
  18. python import illegal instruction
  19. 码农在使用人脸识别开发套件中的硬件主板如何调用底层接口步骤
  20. vue3最全路由使用教程

热门文章

  1. “我创业成功的十大秘诀”
  2. 打算升级到 Monterey?我们为你准备了一份 macOS 安全升级指南
  3. 漫画:这份程序员自画像,是不是你的?
  4. 低代码已至,传统开发方式是否还有必要?
  5. 清华学霸组团的工业 AIoT 创企再获数千万融资:玩家应推动在边缘 AI 芯片上跑算法...
  6. 战疫,微软资深高管的十余年远程办公管理经验
  7. “整洁代码根本就是个骗局!”
  8. 由于区块链的影响,我决定转行!
  9. 吐血整理!顶级程序员的百宝箱来咯!| 原力计划
  10. 华为悬红“奥林帕斯奖”,促进数据产业基础技术研究与生态建设