数值分析大作业超松弛迭代法如何选取最佳松弛因子.doc

数值分析大作业超松弛迭代法如何选取最佳松弛因子.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数值分析大作业超松弛迭代法如何选取最佳松弛因子

超松弛迭代法如何选取最佳松弛因子 船建学院 B1301095 wj 一、课题背景 逐次超松弛迭代法是Gauss-Seidel方法的一种加速方法,是解大型稀疏矩阵方程组的有效方法之一,它具有计算公式简单,程序设计容易,占用计算机内存较少等优点,但需要选择好的加速因子(即最佳松弛因子)。 最佳松弛因子ω的确定是数值代数中的一个理论难题,对于不同的矩阵,其最佳松弛因子往往相差很大,没有统一的计算公式来确定ω。由于对称正定矩阵sor方法收敛的充分必要条件为w在0到2之间,故利用对称正定矩阵一定收敛的性质,本文提供一种针对于系数矩阵为对称正定矩阵时,如何选取合适的最佳松弛因子的方法。 二、课题研究流程图 SOR迭代公式   逐次超松弛(Successive Over Relaxation)迭代法,简称SOR迭代法,它是在GS法基础上为提高收敛速度,采用加权平均而得到的新算法,设解方程的GS法记为       (1) 再由与加权平均得     这里ω>0称为松弛参数,将(1)式代入则得        (2) 称为SOR迭代法,[WTBX]ω>0称为松弛因子,当ω=1时(2)式即为GS法,将(2)式写成矩阵形式,则得     即   于是得SOR迭代的矩阵表示        (3) Matlab程序 %sor法确定对称正定矩阵的最佳松弛因子w% clc;clear; n=100; %矩阵的阶数% for num=1:100 X=diag(rand(n,1)); U=orth(rand(n,n)-0.5); a=U*X*U; %以上是利用随机对角矩阵和随机正交矩阵,产生随机的对称正定矩阵,正交变化不改变特征值% L=zeros(n,n); U=zeros(n,n); %分配L和U的内存空间% step=0.02; %定义w的计算精度% for k=1:(2/step) %由于对称正定矩阵sor方法收敛的充分必要条件为w在0到2之间% w=(k-1)*step; for i=1:n %一个总的for循环给三个矩阵赋值D-L-U=A,% for j=1:i-1 L(i,j)=-a(i,j);%L矩阵的赋值% end for j=i+1:n U(i,j)=-a(i,j);%U矩阵的赋值% end D(i,i)=a(i,i);%D矩阵的赋值% end H=inv(D-w*L)*((1-w)*D+w*U);%sor方法的核心,H矩阵为迭代矩阵% p(k)=max(abs(eig(H)));%利用此函数求矩阵的谱半径% end k_min=find(p==min(p));%find函数寻找不同的w中谱半径的最小值,即寻找收敛最快的w% w_min(num)=(k_min-1)*step;%由最小值的序号得到最优的w% end hist(w_min,100)%对数量足够多的随机对称正定矩阵做频率统计,w划分100份,做出统计图% mean(w_min)%对不同矩阵的最小谱半径所对应的w对平均统计% 五、结果 对于不同阶数,计算得到的最佳收敛因子w不同,大致是随阶数增大而增大。对不同阶数对最佳收敛因子w的平均值统计,做出的表格,如下表所示: n阶数 3阶 4阶 5阶 6阶 7阶 8阶 9阶 10阶 最佳收敛因子w 1.10 1.17 1.20 1.23 1.26 1.28 1.31 1.32 n阶数 15阶 20阶 25阶 50阶 75阶 100阶 最佳收敛因子w 1.39 1.43 1.47 1.62 1.65 1.68 (注:由于本人电脑运行速度有限以及学习能力和精力有限,只能算到100阶,而且在25阶以后都采用计算100个矩阵,误差会比较大。) 图1、不同阶数下的最佳收敛因子w的取值图 分析:(1)最佳收敛因子w随着n阶数增大而增加; (2)、当n比较小时最佳收敛因子w在1附近,而且增加很快;当n很大时,最 佳收敛因子向2的方向发展,并逐渐收敛。 图2、N=4时最佳松弛因子的频率统计图 图3、N=5时最佳松弛因子的频率统计图 图4、N=10时最佳松弛因子的频率统计图 图5、N=25时最佳松弛因子的频率统计图 图6、N=50时最佳松弛因子的频率统计图 图7、N=100时最佳松弛因子的频率统计图 六、总

文档评论(0)

zhanghc + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档