欢迎来到天天文库
浏览记录
ID:46399321
大小:290.26 KB
页数:25页
时间:2019-11-23
《北航数值分析大作业第二题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数值分析第二次大作业史立峰SY1505327一、方案(1)利用循环结构将(i,j=1,2,……,10)进行赋值,得到需要变换的矩阵A;(2)然后,对矩阵A利用Householder矩阵进行相似变换,把A化为上三角矩阵A(n-1)。对A拟上三角化,得到拟上三角矩阵A(n-1),具体算法如下:记A(1)=A,并记A(r)的第r列至第n列的元素为。对于执行1.若全为零,则令A(r+1)=A(r),转5;否则转2。2.计算3.令。4.计算5.继续。(3)使用带双步位移的QR方法计算矩阵A(n-1)的全部特征值,也是
2、A的全部特征值,具体算法如下:1.给定精度水平和迭代最大次数。2.记,令。1.如果,则得到的一个特征值,置(降阶),转4;否则转5。2.如果,则得到的一个特征值,转11;如果,则转3。3.求2阶子阵的两个特征值和,即计算二次方程的两个根和。4.如果,则得到的两个特征值和,转11;否则转7。5.如果,则得到的两个特征值和,置(降阶),转4;否则转86.如果,则计算终止,未得到的全部特征值;否则转9。7.记,计算8.置,转3。9.的全部特征值已计算完毕,停止计算。其中,的分解与的计算用下列算法实现:记。对于执行
3、1.若全为零,则令,转5;否则转2。2.计算1.令。2.计算3.继续。此算法执行完后,就得到。(4)计算Q,R,一边求R*Q矩阵。记对于执行1.若全为零,则令转5;否则转2.2.计算3.令。4.计算5.继续当此算法执行完毕后,就得到正交矩阵和上三角矩阵6.然后计算出矩阵(5)用列主元素Gauss消去法计算矩阵对应于实特征值的特征向量,具体算法如下:记1.消元过程对于执行(1)选行号,使。(2)交换与所含的数值。(3)对于计算2.回代过程最终得到的向量的即为对应于实特征值的特征向量。二、源程序#include
4、#include#include#definen10#defineE1.0e-12voidHouseholder(doublea[n][n]);//拟上三角化函数doublesgn(doublea);//符号函数voidQRfenjie(doublea[n][n],doubleQ[n][n],doubleR[n][n]);voidQR(doublea[n][n],doubleL[n][2]);//带双步位移的QR分解voidMxM(doubleM
5、[n][n],doubleA[n][n],doubleB[n][n],intm);//矩阵相乘voidsolve(doublea[n][n],doubles1[2],doubles2[2],intm);//解方程函数voidGauss(doublea[n][n],doublex[n]);//定义列主元高斯消去法函数voidmain(){inti,j,k;doublea[n][n],qr[n][n],q[n][n],r[n][n],L[n][2],x[n];for(i=0;i6、矩a,并对q初始赋值。{for(j=0;j7、<<"行元素为:"<8、素,使用k来实现//cout<<"矩阵A的第"<
6、矩a,并对q初始赋值。{for(j=0;j7、<<"行元素为:"<8、素,使用k来实现//cout<<"矩阵A的第"<
7、<<"行元素为:"<8、素,使用k来实现//cout<<"矩阵A的第"<
8、素,使用k来实现//cout<<"矩阵A的第"<
此文档下载收益归作者所有