PAGE
题 目:高斯-赛德尔迭代法的算法及程序设计
摘要
本文通过理论与实例对线性方程组的解法、收敛性及误差分析进行了探讨.在对线性方程组数值解法的讨论下用到了高斯-赛德尔迭代法,进一步研究和总结了高斯-赛德尔迭代法的理论与应用,使我们在分析问题与编辑程序时能更好的把握对高斯-赛德尔迭代法的应用。
关键词 Gauss-Seidel迭代法;收敛性;误差分析;流程图;Mathematica编程
目录 TOC \o "1-3" \h \z \u
第一章 高斯-赛德尔迭代法 1
§1.1 高斯-赛德尔迭代法的提出 1
§1.1.1 高斯-赛德尔迭代法的思想理论 1
§1.1.2 高斯-赛德尔迭代法的定义及表达形式2
§1.2 高斯-赛德尔迭代法的收敛性 1
§1.3 高斯-赛德尔迭代法的误差分析 1
第二章 高斯-赛德尔迭代法的程序设计 1
§2.1 高斯-赛德尔迭代法在上机中的应用 1
§2.1.1 高斯-赛德尔迭代法的流程图 1
§2.1.2 高斯-赛德尔迭代法的源程序 1
参考文献 22
附录 23
PAGE 1
高斯-赛德尔迭代法
考虑线性方程组
其中为非奇异矩阵,对于由工程技术中产生的大型稀疏矩阵方程组(的阶数很大但零元素很多),利用迭代法求解线性方程组是合适的.在计算机内存和运算两方面,迭代法通常都可利用中有大量零元素的特点.
本章将介绍迭代法中的高斯-赛德尔法的思想理论、收敛性及误差分析.
§1.1 高斯-赛德尔迭代法的提出
§1.1.1 高斯-赛德尔迭代法的思想理论
在研究雅可比迭代法时,计算时,已得(这些分别为的第k+1次近似),Gauss-Seidel迭代法认为在计算时启用新值,从而产生
.
具体原理如下图所示
构造迭代
构造迭代
产生向量序列
图1.1 基本迭代原理
§1.1.2 高斯-赛德尔迭代法的定义及表达形式
定义1.1 我们注意到在雅可比迭代法中并没有对新算出的分量,,,
进行充分利用.不妨设想,在迭代收敛的条件下,我们把
式中第一个方程算出的立即投入到第二个方程中,代替进行计算,当算出后代替马上投入到第三个方程中计算,依次进行下去,这样也许会得到更好的收敛效果.根据这种思路建立的一种新的迭代格式,我们称为高斯-赛德尔(Gauss-Seidel)迭代公式,
高斯=赛德尔迭代法的分量形式:
高斯-赛德尔迭代法的矩阵形式:
其中
,
称为高斯-赛德尔迭代矩阵,称为高斯-赛德尔迭代常量..
§1.2 高斯-赛德尔迭代法的收敛性
根据上节所述,高斯-赛德尔迭代法的迭代格式为
(1-1)
其中
, . 本节要讨论的问题就是任意选取初始值,利用迭代格式(1-1)得到的向量序列是否一定收敛,如果收敛的话需要满足什么条件?
下面我们给出一般迭代收敛的条件:
定理1.2 简单迭代法(1-1)收敛的充分必要条件是迭代矩阵的谱半径.
定理1.3 若迭代矩阵的某种范数则(1-2-1)确定的迭代法对任意初值均收敛于方程组的唯一解。
特殊线性方程组迭代法的收敛性定理:
定理1.4 设对于方程组,若系数矩阵是严格对角占优矩阵,则
(1)非奇异.
(2)Gauss-Seidel迭代法收敛.
定理1.5 若系数矩阵对称正定,则Gauss-Seidel迭代公式收敛.
例1.1 已知方程组
,
用Gauss-Seidel迭代法解此方程组的收敛性.
方程组的系数矩阵
,
所以有
,,
=
,
得
故,因此Gauss-Seidel迭代法不收敛.
§1.3 高斯-赛德尔迭代法的误差分析
科学计算的主要过程是:对给定的实际问题建立数学模型,通过已获得的有关基本数据,建立近似数值方法,设计算法编制程序,最后上机进行数值计算得到数值结果.其大致过程如下图:
模型误差否
模型误差
否
是
验证结果的正
确性与合理性
结束
得到数
值结果
上机计算
舍入误差
设置算法
编制程序
科学计算方法
数学模型
实际问题
截断误差
观测误差
截断误差
定义1.2 假设某一量的标准值为近似解为,则与之差叫做近似解的绝对误差(简称误差),记为,即
定义1.3 绝对误差与准确值之比
称为的相对误