超松弛迭代法及其松弛因子的选取
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2013届学士学位毕业论文
超松弛迭代法及其松弛因子的选取
学号:09404307
姓名:程启远
班级:信息0901
指导教师:艳星
专业:信息与计算科学
系别:数学系
完成时间:2013年5月
学生诚信承诺书
本人重声明:所呈交的论文《超松弛迭代中松弛因子的选取方法》是我个人在导师艳星指导下进行的研究工作及取得的研究成果.尽我所知,除了文中特别加以标注和致的地方外,论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得学院或其他教育机构的学位或证书所使用过的材料.所有合作者对本研究所做的任何贡献均已在论文中作了明确的说明并表示了意.
签名:日期:
论文使用授权说明
本人完全了解学院有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分容,可以采用影印、缩印或其他复制手段保存论文.
签名:日期:
指导教师声明书
本人声明:该学位论文是本人指导学生完成的研究成果,已经审阅过论文的全部容,并能够保证题目、关键词、摘要部分中英文容的一致性和准确性.
指导教师签名:时间
摘要
本文首先给出了超松弛迭代法解线性方程组的基本概念,引进了关于超松弛迭代法收敛性判别的一些定理.再基于超松弛迭代法收敛性快慢与松弛因子的选择密切相关,本文给出了能准确快速地确定最优松弛因子的方法逐步搜索法和黄金分割法,并且写出了其Matlab 程序(附录),最后通过实例验证了方法的准确性,快速性.
关键词线性方程组;超松弛迭代;Matlab程序;松弛因子
Abstract
This paper firstly introduces the basic concept of the super relaxation iteration method for solving linear equations, introduced on some criterion theorem Overrelaxation iterative convergence, gives a simple Matlab program super relaxation iteration (Appendix 1). Then Overrelaxation iterative convergence speed and relaxation factor is selected based on the close relation is proposed in this paper, the rapid and accurate method of determining the optimal relaxation factor of the direct search method and the golden section method, and write the Matlab program (Appendix 2), finally the method is accurate, rapid.
Key word:Linear equations; Successive Over Relaxation; Matlab program; relaxation factor
超松弛迭代法及其松弛因子的选取
09404307 程启远信息与计算科学
指导教师艳星
引言在科学计算和工程设计中,经常会遇到求解线性代数方程组的问题,而怎样快速的求解一直是我们共同关心的课题.随着计算机技术及数学编程软件的发展,我们有了在计算机上解线性方程组的条件.最初遇到的方程数和未知数比较少的方程组我们就是利用线性代数知识直接解出来.直接解法只能适用于经过有限步运算能求得解的方程组.后来遇到的方程数和未知数都比较多的方程组,特别是经常会遇到的大型的方程组,直接解法工作量太大,花费时间太多,因此迭代法发展了起来.从最初的Jacobi迭代法到Gauss-Seidel迭代法,很多学者一直在研究找到一种迭代法能更加快速,简单的解决线性方程组.通过不断的实验和计算,在Gauss-Seidel迭代法基础上,人们发现通过迭代-松弛—再迭代的方法,能更加减少计算步骤,极大的缩短计算时间,在此基础上,超松弛迭代法被学者们研究出来.通过比较三种迭代方法,我们得到超松弛迭代的收敛速度是最快的,而且超松弛迭代法具有计算公式简单,编制程序容易等突出优点.在求解大型稀疏线性方程组中超松弛迭代法得到广泛应用.而SOR迭代方法中松弛因子ω的取值直接影响到算法的收敛性及收敛速度,是应用超松弛迭代法的关键.选择得当,可以加快收敛速度,甚至可以使发散的迭代变成收敛.因此, 超松弛因
子的选取是学者们又一个研究目标.通过一些被验证的定理,我们知道为了保证迭代过程的收敛,必须要求1<ω<2,而且松弛因子和迭代矩阵谱半径之间有着密切的联系,现今学者们已经研究出部分特殊矩阵的最优松弛因子的计算公式.对于一般的矩阵,我们也可以从松弛因子和谱半径的关系着手研究最优松弛因子的选取,这就为本篇论文的形成提供了行文思路.本文给出了求超松弛迭代最优松弛因子的两种方法.
1.超松弛迭代基本知识
1.1 超松弛迭代法定义
[1]
超松弛(Successive Over Relaxation)迭代法,简称SOR 迭代法,它是在Gauss-Seidel 法基础上为提高收敛速度,采用加权平均而得到的新算法.设解方程组的Gauss-Seidel 法记为
1
(1)
(1)()1
1
1
(),1,2,,i n
k k k i
i ij j ij
j j j i ii x b a x a
x i n
a -++==+=--=∑∑L (1)
再由()
k i
x 与(1)
k i
x +加权平均得
(1)
(1)
(1)()()()(1)(),1,2,,k k k k k k i i i i
i x x x
x x x i n ωωω+++=-+=+-=L
这里ω>0称为松弛参数,将(1)代入则得
1
(1)
()
(1)
()1
1
(1)(),1,2,,i n
k k k k i
i
i ij j
ij
j j j i ii
x x b a x a
x i n
a ω
ω-++==+=-+
--
=∑∑L (2)
称为SOR 迭代法,ω>0称为松弛因子,当ω=1时(2)即为Gauss-Seidel 法,将(2)写成矩阵形式,则得
(1)()(1)()(1)()k k k k Dx Dx b Lx Ux ωω++=-+++
于是得SOR 迭代的矩阵表示
[3]
(1)()k k i x G x f ωω
+=+ (3)
其中
1()[(1)]
G D L D U ωωωω-=--+
1()f D L b ωωω-=-
1.2 收敛性判别条件 根据迭代法收敛性定理
[2]
,SOR 法收敛的充分必要条件为()1G ωρ<,但要计算()G ωρ比
较复杂,通常都不用此结论,而直接根据方程组的系数矩阵A 判断SOR 迭代收敛性,下面先给出收敛必要条件. 定理1
]
4[ 设(),0(1,2,...,)n n
ij ii A a R
a i n ⨯=∈≠=,
则解方程Ax b =的SOR 迭代法收敛的
必要条件是0<ω<2.