数值方法课程设计幂法反幂法计算矩阵特征值和特征向量-附Matlab程序.doc
《数值方法课程设计幂法反幂法计算矩阵特征值和特征向量-附Matlab程序.doc》由会员分享,可在线阅读,更多相关《数值方法课程设计幂法反幂法计算矩阵特征值和特征向量-附Matlab程序.doc(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数值方法课程设计幂法反幂法计算矩阵特征值和特征向量-附Matlab程序矩阵的特征值与特征向量的计算摘 要物理,力学,工程技术中的很多问题在数学上都归结于求矩阵特征值的问题,例如振动问题(桥梁的振动,机械的振动,电磁振动等)、物理学中某些临界值的确定问题以及理论物理中的一些问题。矩阵特征值的计算在矩阵计算中是一个很重要的部分,本文使用幂法和反幂法分别求矩阵的按模最大,按模最小特征向量及对应的特征值.幂法是一种计算矩阵主特征值的一种迭代法,它最大的优点是方法简单,对于稀疏矩阵比较合适,但有时收敛速度很慢。其基本思想是任取一个非零的初始向量。由所求矩阵构造一向量序列.再通过所构造的向量序列求出特征值
2、和特征向量。反幂法用来计算矩阵按模最小特征向量及其特征值,及计算对应于一个给定近似特征值的特征向量。本文中主要使用反幂法计算一个矩阵的按模最小特征向量及其对应的特征值.计算矩阵按模最小特征向量的基本思想是将其转化为求逆矩阵的按模最大特征向量。然后通过这个按模最大的特征向量反推出原矩阵的按模最小特征向量。关键词: 矩阵;特征值;特征向量;冥法;反冥法THE CALCULATIONS OF EIGENVALUE AND EIGENVECTOR OF MATRIXABSTRACTPhysics, mechanics, engineering technology in a lot of proble
3、ms in mathematics are attributed to matrix eigenvalue problem, such as vibration (vibration of the bridge, mechanical vibration, electromagnetic vibration, etc.) in physics, some critical values determine problems and theoretical physics in some of the problems. Matrix eigenvalue calculation is a ve
4、ry important part in matrix computation. In this paper, we use the power method and inverse power method to calculate the maximum of the matrix, according to the minimum characteristic vector and the corresponding characteristic value。Power method is an iterative method to calculate the eigenvalues
5、of a matrix. It has the advantage that the method is simple and suitable for sparse matrices, but sometimes the convergence rate is very slow. The basic idea is to take a non - zero initial vector。 Construct a vector sequence from the matrix of the matrix。 Then the eigenvalues and eigenvectors are o
6、btained by using the constructed vector sequence。The inverse power method is used to calculate the minimum feature vectors and their eigenvalues of the matrix, and to calculate the eigenvalues of the matrix. In this paper, we use the inverse power method to calculate the minimum eigenvalue of a matr
7、ix and its corresponding eigenvalues。 The basic idea of calculating the minimum characteristic vector of a matrix is to transform it to the maximum characteristic vector of the modulus of the inverse matrix。 Then, according to the model, the minimum feature vector of the original matrix is introduce
8、d。Key words: Matrix;Eigenvalue;Eigenvector;Iteration methods; 目 录1 引言。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。12 相关定理。.。.。.。.。.。.。.。.。.。13 符号说明.。.。.。.。.。.。.。.。.。.。.。.。.。.。24 冥法及反冥法.。.。.。.。.。.。.。.。.。.。.。.2 4。1冥法。.。.。.。.。.。.。.。.。.。.。.。.。.。3 4.2反冥法。.。.。.。.。.。.。.。.。.。.。.。.。.85 QR算法。.。.。.。.。.。.。.。.。.。.14参考文献.。.。
9、.。.。.。.。.。.。.。.。.。.。.18 附录。.。.。.。.。.。.。.。.。.。.。.。.。.19 1 引言在本论文中,我们主要讨论矩阵的特征值和特征向量的计算,我们知道,有很多现实中的问题都可以用到矩阵特征值与特征向量计算的知识,比如,在物理、力学和工程技术方面有很多的应用,并且发挥着极其重要的作用。因为这些问题都可归结为求矩阵特征值的问题,具体到一些具体问题,如振动问题,物理中某些临界值的确定问题以及一些理论物理中的问题.在本论文中,我们主要介绍求矩阵的特征值与特征向量的一些原理和方法,原理涉及高得代数中矩阵的相关定理,方法主要介绍冥法及反冥法并利用MATLAB算法的程序来求解相
10、关问题,加以验证.2 相关定理定理2.1 如果 是矩阵A的特征值,则有定理2.2 设A与B为相似矩阵,则 A与B有相同的特征值;若是的一个特征向量,则是A的特征向量定理2。3 设,则A的每一个特征值必属于下述某个圆盘之中: 定义2.1 设A是n阶是对称矩阵,对于任意非零向量x,称为对应于向量x的Rayleigh商.定理2.4 设为对称矩阵(其特征值次序记作,对应的特征向量组成规范化正交组,即),则 (对于任何非零向量x);3 符号说明A:n阶矩阵B:n阶矩阵I:n阶单位阵:矩阵特征值x:实数域上的n维向量:实数域上的n维向量:实属上的规范化向量 4 冥法及反冥法4.1 冥法幂法是一种计算矩阵的
11、主特征值的一种迭代法,它最大优点是方法简单,适合于计算大型稀疏矩阵的主特征值.设,其特征值为,对应特征向量为即 且线性无关。设特征值满足:(即为强占优) (4。1.1)幂法的基本思想,是任取一个非零初始向量,由矩阵的乘幂构造一向量序列 (4.1.2)称为迭代向量。下面来分折。由设为中一个基本,于是,有展开式 (且设)且有(4。1。3 ) 由假设(4.1。1)式,则即且收敛速度由比值确定。且有(41.4) 这说明,当充分大时,有,或越来越接近特征向量.下面考虑主特征值的计算。用表示的第个分量,考虑相邻迭代向量的分量的比值.从而是 (4。1.5)说明相邻迭代向量分量的比值收敛到主特征,且收敛速度由
12、比值来度量,越小收敛越快,但越小收敛越快,但,而接近于1时,收敛可能很慢.定理4.1 (1)设n个线性无关的特征向量:(2)设特征值满足(3)幂法: )则 (1);(2) 如果主特征值为实的重根,即有 又设A有个线性无关的特征向量,其中对于任意初始向量则由幂法有 且有 (设不全为零) 由此,当充分大时,接近于与对应的特征向量的某个线性组合。应用幂法计算的主特征值及对应的特征向量时,如果),迭代向量的各个不等于零的分量将随而趋于无究(或趋于零),这样电算时就可能溢出.为此,就南非要将迭代向量加以规范化。设有非零向量其中表示向量绝对值最大的元素,即如果有草药则其中为所有绝对值最大的分量中最小指标.
13、 显然有下面性性质: 设,则 在定理4。1条件下幂法可改进为: 任取初始向量. 迭代: 规范化: , (4。16) 于是,由上式产生迭代向量序列及规范化向量且改进幂法计算公式为: 设 对于 (4.1。7) 下面考查与计算的关系。 由 且有 (4.1。8) 其中 (1) 考查规范化向量序列:由(4.1.7)及(4。1。8)式,则有 (2) 考查迭代向量序列:于是, 定理 (改进幂法)(1) 设有个线性无关特征向量;(2) 设特征值满足 且 (3)由改进幂法得到((4.1。7)式),则有 (a) (b)且收敛速度由比值确定.实现幂法,每迭代一次主要是计算一次矩阵乘向量,可编一个子程序求矩阵按模最大
14、特征值如下:%这个函数用于使用幂法求矩阵特征向量和特征值%A-矩阵,v初始向量,e-精度function t,p=pm(A,v,e) u=v./max(abs(v); old = 0;记录上一次迭代得到的特征值 while(1) v=A*u; u=v。/max(abs(v)); if(abs(max(v)old)e) break; end old = max(v); end p = u; t = max(v);end例1。为检验以上代码的正确性,我们使用以上代码计算以下矩阵的最大特征值和特征向量结果为:例2。利用你所编制的子程序求如下矩阵(从60到70阶) 按模最大、按模最小的特征值及对应特征
15、向量。解:代码见附录,运行得到的结果如下:以上仅给出特征值的计算结果。特征向量见附录,这里给出70阶的特征向量:0。58 -0.94 1.00 -0.81 0。54 0.29 0。13 0.05 0。01 -0。00 0.00 0。00 0.00 0.00 0.00 0.00 0。00 0.00 0。00 0.00 0.00 0。00 0.00 0.00 0。00 0.00 0。00 0。00 0。00 0。00 0.00 0。00 0。00 0。00 0.00 0.00 0.00 0。00 0。00 0。00 0.00 0。00 0。00 0。00 0.00 0.00 0.00 0.00 0
16、。00 0.00 0。00 0。00 0.00 0。00 0.00 0.00 0。00 0.00 -0。00 0.00 0。00 0。01 0。05 0.13 0。29 0.54 -0.81 1。00 -0。94 0。58 4。2 反冥法(1) 反幂法可用来计算矩阵按模最小的特征值及对应的特征向量.设为非厅异矩阵,特征值满足对应特征向量为线性无关,则特征求值为特征向量为因此计算的按模最小的特征值的部题就是计算按模最大的特征值部题.对于应用幂法迭代(称为反幂法),可求矩阵的主特征值.反幂法迭代公式:任取初始向量, 1,2, (4。2.1)其中迭代向量可通过解方程组求得:如果个线性无关特征向量且特
17、征值满足:则由反幂法(2。11)构造的向量序列满足 且收敛速度由比值确定。(2)应用反幂法求一个的似特征值对应的特征向量。设已知的特征值的一个近似值(通常是用其它方法得到),现要求对应的特征向量(近似),在反幂法中也可用原点平移法来加速收敛.如果存在,显然,特征值为对应的特征向量。现取(但不能取),且设与其它特征值是分离的,即即 说明是的主特征值。现对应用幂法得到反幂法计算公式:取初始向量 (4。2.2)与定理8证明类似,可得下述结果.定理10 (1)设有个线性无关特征向量即。(2)取(为特征值一个近似值),设存在且则由反幂法迭代公式(2,12)构造向量序列满足:或 且收敛速度由比值 确定.由
18、定理可知,反幂法计算公式(4。2.2)可用计算特征向量.选择是的一个近似且的特征值分离情况较好,一般很小,所以迭代过程收敛较快,同时改进特征值.反幂法迭代公式中是以通过解方程组求得。为了节省计算量,可先将进行三角分解。其中为置换阵,于是每次迭代求相当于求解两个三角形方程组可按下述方法取,即选使回代求解即求得.反幂法计算公式:1分解计算,且保存及信息2反幂法迭代(1) (2) 1)求 求 2) 3)对于计算对称三对角阵,或计算Hessenberg阵对应于一个给定的近似特征值的特征向量,反幂法是一个有效方法.使用Matlab编写一个使用反幂法求矩阵最小特征值和特征向量的程序如下:function
19、s,y=fpm(A,x0,eps) s 为按模最小特征值,y是对应特征向量 k=1;r=0; r相当于0? y=x0./max(abs(x0)); % 规范化初始向量 L,U=lu(A); z=Ly; x=Uz; u=max(x); s=1/u; 按模最小为A-1按模最大的倒数. if abs(ur)eps 终止条件。 k=k+1; r=u; y=x。/max(abs(x); z=Ly; x=Uz; u=max(x); end m,index=max(abs(x)); % 这两步保证取出来的按模最大特征值 s=1/x(index); % 是原值,而非其绝对值。end同样,取一个矩阵进行测试:计
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值 方法 课程设计 幂法反幂法 计算 矩阵 特征值 特征向量 Matlab 程序
限制150内