77范文网 - 专业文章范例文档资料分享平台

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

来源:网络收集 时间:2018-11-04 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

超松弛迭代法如何选取最佳松弛因子

船建学院 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阶数 最佳收敛因子w n阶数 最佳收敛因子w 3阶 1.10 15阶 1.39 4阶 1.17 20阶 1.43 5阶 1.20 25阶 1.47 6阶 1.23 50阶 1.62 7阶 1.26 75阶 1.65 8阶 1.28 1.68 9阶 1.31 10阶 1.32 100阶 (注:由于本人电脑运行速度有限以及学习能力和精力有限,只能算到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时最佳松弛因子的频率统计图

六、总结与展望

本文从研究如何确定对称正定矩阵sor迭代法的最佳松弛因子入手,由matlab构造函数产生随机对称正定矩阵,取n从3到100,计算出各个最佳松弛因子的平均值,然后做出统计表格和发展趋势曲线,由分析可得n越大最佳松弛因子也越大,但增长速度也变慢,最后会收敛到一个数。

可以对其他特殊的矩阵进行确定sor方法最佳松弛因子的研究工作,对工程上快速迭代出计算结果有重要研究价值,同时对n阶数很大的矩阵进一步计算确定其最佳松弛因子,观察其收敛性。

本文为非数学系研究僧撰写,数学系路过的大神请轻喷!(wujun)

图6、N=50时最佳松弛因子的频率统计图

图7、N=100时最佳松弛因子的频率统计图

六、总结与展望

本文从研究如何确定对称正定矩阵sor迭代法的最佳松弛因子入手,由matlab构造函数产生随机对称正定矩阵,取n从3到100,计算出各个最佳松弛因子的平均值,然后做出统计表格和发展趋势曲线,由分析可得n越大最佳松弛因子也越大,但增长速度也变慢,最后会收敛到一个数。

可以对其他特殊的矩阵进行确定sor方法最佳松弛因子的研究工作,对工程上快速迭代出计算结果有重要研究价值,同时对n阶数很大的矩阵进一步计算确定其最佳松弛因子,观察其收敛性。

本文为非数学系研究僧撰写,数学系路过的大神请轻喷!(wujun)

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库数值分析大作业 超松弛迭代法如何选取最佳松弛因子在线全文阅读。

数值分析大作业 超松弛迭代法如何选取最佳松弛因子.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/254872.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: