数值分析实验报告——基本QR算法求全部特征值

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1数值分析实验报告专业信息与计算科学班级信计101姓名学号协作队员实验日期2013年1月5日星期六成绩评定教师签名批改日期题目一、问题提出给定矩阵2345644567036780028900010A,(1)用Matlab函数“eig”求矩阵全部特征值。(2)用幂法求A的主特征值及对应的特征向量。(3)用基本QR算法求全部特征值(可用Matlab函数“qr”实现矩阵的QR分解)。二、模型建立用幂法求A的主特征值及对应的特征向量的模型:选取,按照下列公式构造向量序列{}{}则有2循环足够多次后,可以近似得出,三、求解方法(1)A=[23456;44567;03678;00289;00010];a=eig(A)(2)pmethod.mfunction[l,v,s]=pmethod(A,x0,eps)ifnargin==2eps=1.0e-6;endv=x0;%v为主特征向量M=5000;%迭代步数限制m=0;l=0;for(k=1:M)y=A*v;m=max(y);%m为按模最大的分量v=y/m;if(abs(m-l)eps)l=m;%到所需精度,退出,l为主特征值s=k;%s为迭代步数return;elseif(k==M)disp('迭代步数太多,收敛速度太慢!');l=m;s=M;elsel=m;endendend(3)3functionl=rqrtz(A,M)%QR算法求矩阵全部特征值%已知矩阵:A%迭代步数:M%求得的矩阵特征值:lA=hess(A);fori=1:MN=size(A);n=N(1,1);u=A(n,n);[q,r]=qr(A-u*eye(n,n));A=r*q+u*eye(n,n);l=diag(A);end四、输出结果(1)a=13.17246.55191.5957-0.3908-0.9291(2)主特征值x=13.1724对应的特征向量y=0.72501.00000.79300.35330.0268(3)所有特征值x=13.17246.55191.5957-0.9291-0.3908五、结果分析三种算法各有优势,但结果差不多,都较为适用。

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功