• / 8
  • 下载费用:10 金币  

高等数值分析作业-第一次实验.docx

关 键 词:
高等数值分析作业-第一次实验.docx
资源描述:
第 | 页 1 0 500 1000 1500 2000 2500 3000 3500 4000-140-120-100-80-60-40-20020代代代代lg代|rk|代高等数值分析第一次实验T1. 构造例子说明 CG 的数值形态。当步数 = 阶数时 CG 的解如何?当 A 的最大特征值远大于第二个最大特征值,最小特征值远小于第二个最小特征值时,方法的收敛性如何?Answer:对于问题 1:当步数 = 阶数时 CG 的解如何? 在 MATLAB 中构造 N 阶对称正定矩阵代码如下:N=1000D = diag(rand(N,1));U = orth(rand(N,N));A = U'*D*U;在计算时,取X0=zeros(N,1);b=ones(N,1);自己编写CG算法,如下:Xk = X0;rk=b-A*Xk;pk=rk;crk_1=rk'*rk;for k=1:Nk=k+1;apk=A*pk;ak=crk_1/(pk'*apk);Xk=Xk+ak*pk;rk=rk-ak*apk;crk=rk'*rk;bk_1=crk/crk_1;crk_1=crk;pk=rk+bk_1*pk;m(k)=norm(rk);r(k)=k;endplot(r,m,'r-');Ek=m(k)计算结果如下(绘制出来的 随迭代次数的变化如上图所示):𝑙𝑜𝑔10‖𝑟𝑘‖N 1000 2000 3000 4000𝑙𝑜𝑔10‖𝑟𝑘‖-81.8505 -98.3653 -126.3256 -115.8889运行时间(s ) 4.309855 30.205448 105.792648 289.610550由上表可以看出对于对称正定矩阵 A,CG 算法还是比较稳定的,但求解步数= 阶数时,CG 算法的解即为准确解(误差极小) 。第 | 页 2 对于问题 2:当 A 的最大特征值远大于第二个最大特征值,最小特征值远小于第二个最小特征值时,方法的收敛性如何? 构造 1000 阶的对称正定矩阵如下,收敛准则取为绝对 ε23,同时,A 的中间 特征值分布对 CG 的收敛速度有巨大的影响。实际上,在经过几步后,CG 的收敛因子将是: 𝜆2𝜆𝑛‒1-1𝜆2𝜆𝑛‒1+1而非 𝜆1𝜆𝑛-1𝜆1𝜆𝑛+1因此,本题中算例 2 的矩阵的收敛速度较算例 3 快很多,而与算例 1 较为接近。T2. 对于同样的例子,比较 CG 和 Lanczos 的计算结果。Answer:首先构造一个 1000 阶的对称正定矩阵,代码如下:D = diag(linspace(1,1000,N));0 100 200 300 400 500 600-12-10-8-6-4-20246代代代代lg代|rk|代不不不不不不不不不不不不不不不不不不不不不不不不不不第 | 页 3 U = orth(rand(N,N));A = U'*D*U;在计算时,取X0=zeros(N,1);b=ones(N,1);CG 算法代码同上,在计算时取停机准则为绝对误差 ee r=A*q1-bj(k-1)*q;aj(k)=q1'*r;r=r-aj(k)*q1;if r~=0 bj(k)=norm(r);endq=q1;q1=r/bj(k);TK(k,k)=aj(k);L=chol(TK); lyk=YK(L',norm(r0)*eye(k+1,1));yk=YKN(L,lyk);Xk=X0+qk*yk;rk=b-A*Xk;m(k)=log10(norm(rk));num(k)=k;TK(k,k+1)=bj(k);TK(k+1,k)=bj(k);qk=[qk q1];end在计算时直接采用 cholesky 分解(直接采用 matlab 自带的函数)计算yk,LL Ty= e1 的代码如下:‖𝑟0‖L=chol(TK);lyk=YK(L',norm(r0)*eye(k,1));yk=YKN(L,lyk);0 50 100 150 200 250-14-12-10-8-6-4-202代代代代lg代|rk|代CG不不Lanczos不不第 | 页 4 YK 函数:n=size(TK,1);yk=zeros(n,1);yk(1)=b(1)/TK(1,1);for i=2:nyk(i)=(b(i)-TK(i,i-1)*yk(i-1))/TK(i,i);endYKN 函数:n=size(TK,1);yk=zeros(n,1);yk(n)=b(n)/TK(n,n);for i=1:n-1j=n-i;yk(j)=(b(j)-TK(j,j+1)*yk(j+1))/TK(j,j);end计算结果如上图所示,计算时间与迭代步数如下:计算方法 CG 方法 Lanczos 方法迭代步数 234 235运
展开阅读全文
  微传网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:高等数值分析作业-第一次实验.docx
链接地址:https://www.weizhuannet.com/p-7306218.html
微传网是一个办公文档、学习资料下载的在线文档分享平台!

微传网博客

网站资源均来自网络,如有侵权,请联系客服删除!

 网站客服QQ:80879498  会员QQ群:727456886

copyright@ 2018-2028 微传网络工作室版权所有

     经营许可证编号:冀ICP备18006529号-1 ,公安局备案号:13028102000124

收起
展开