欢迎来到天天文库
浏览记录
ID:16192374
大小:295.50 KB
页数:12页
时间:2018-08-08
《高斯-赛德尔迭代法的算法及程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、题目:高斯-赛德尔迭代法的算法及程序设计摘要本文通过理论与实例对线性方程组的解法、收敛性及误差分析进行了探讨.在对线性方程组数值解法的讨论下用到了高斯-赛德尔迭代法,进一步研究和总结了高斯-赛德尔迭代法的理论与应用,使我们在分析问题与编辑程序时能更好的把握对高斯-赛德尔迭代法的应用。关键词Gauss-Seidel迭代法;收敛性;误差分析;流程图;Mathematica编程目录第一章高斯-赛德尔迭代法1§1.1高斯-赛德尔迭代法的提出1§1.1.1高斯-赛德尔迭代法的思想理论1§1.1.2高斯-赛德尔迭代法的定义及表达形式2§1.2高斯-赛德尔迭代法的收敛性1§1.
2、3高斯-赛德尔迭代法的误差分析1第二章高斯-赛德尔迭代法的程序设计.....................................1§2.1高斯-赛德尔迭代法在上机中的应用1§2.1.1高斯-赛德尔迭代法的流程图1§2.1.2高斯-赛德尔迭代法的源程序1参考文献22附录23第一章高斯-赛德尔迭代法考虑线性方程组其中为非奇异矩阵,对于由工程技术中产生的大型稀疏矩阵方程组(的阶数很大但零元素很多),利用迭代法求解线性方程组是合适的.在计算机内存和运算两方面,迭代法通常都可利用中有大量零元素的特点.本章将介绍迭代法中的高斯-赛德尔法的思想理论、收敛性及误差分析
3、.§1.1高斯-赛德尔迭代法的提出§1.1.1高斯-赛德尔迭代法的思想理论在研究雅可比迭代法时,计算时,已得(这些分别为的第k+1次近似),Gauss-Seidel迭代法认为在计算时启用新值,从而产生.具体原理如下图所示构造迭代产生向量序列图1.1基本迭代原理10§1.1.2高斯-赛德尔迭代法的定义及表达形式定义1.1我们注意到在雅可比迭代法中并没有对新算出的分量,,,进行充分利用.不妨设想,在迭代收敛的条件下,我们把式中第一个方程算出的立即投入到第二个方程中,代替进行计算,当算出后代替马上投入到第三个方程中计算,依次进行下去,这样也许会得到更好的收敛效果.根据这
4、种思路建立的一种新的迭代格式,我们称为高斯-赛德尔(Gauss-Seidel)迭代公式,高斯=赛德尔迭代法的分量形式:高斯-赛德尔迭代法的矩阵形式:其中,称为高斯-赛德尔迭代矩阵,称为高斯-赛德尔迭代常量..§1.2高斯-赛德尔迭代法的收敛性根据上节所述,高斯-赛德尔迭代法的迭代格式为(1-1)10其中,. 本节要讨论的问题就是任意选取初始值,利用迭代格式(1-1)得到的向量序列是否一定收敛,如果收敛的话需要满足什么条件?下面我们给出一般迭代收敛的条件:定理1.2简单迭代法(1-1)收敛的充分必要条件是迭代矩阵的谱半径.定理1.3若迭代矩阵的某种范数则(1-2-1
5、)确定的迭代法对任意初值均收敛于方程组的唯一解。特殊线性方程组迭代法的收敛性定理:定理1.4设对于方程组,若系数矩阵是严格对角占优矩阵,则(1)非奇异.(2)Gauss-Seidel迭代法收敛.定理1.5若系数矩阵对称正定,则Gauss-Seidel迭代公式收敛.例1.1已知方程组,用Gauss-Seidel迭代法解此方程组的收敛性.方程组的系数矩阵,所以有,,=,得10故,因此Gauss-Seidel迭代法不收敛.§1.3高斯-赛德尔迭代法的误差分析科学计算的主要过程是:对给定的实际问题建立数学模型,通过已获得的有关基本数据,建立近似数值方法,设计算法编制程序,
6、最后上机进行数值计算得到数值结果.其大致过程如下图:模型误差否是验证结果的正确性与合理性结束得到数值结果上机计算舍入误差设置算法编制程序科学计算方法数学模型实际问题截断误差观测误差截断误差图1.2误差分析表定义1.2假设某一量的标准值为近似解为,则与之差叫做近似解的绝对误差(简称误差),记为,即定义1.3绝对误差与准确值之比称为的相对误差.定理1.6设是方程组的同解方程的准确解,若迭代公式中迭代矩阵的某种范数,则有1)2)10第二章高斯-赛德尔迭代法的程序设计第二章高斯-赛德尔迭代法的程序设计20世纪50年代是用数字计算机求解电力系统潮流问题的开始阶段,人们普通采
7、用以节点导纳矩阵为基础的高斯-赛德尔迭代法.此方法原理简单,占用内存量较小,编程容易实现,特别是对于配网潮流有其独特优势.但是此算法也有着其致命缺点那就是收敛速度比较慢,尤其是随着电力系统的发展。网络中的节点增多,这个问题将会更加突出.本章将研究高斯-赛德尔迭代法的流程图及程序应用.§2.1高斯-赛德尔迭代法在上机中的应用§2.1.1高斯-赛德尔迭代法的流程图在实际应用中,有时需解决的问题中运算很复杂且运算量也很大,这时我们就需要借助计算机的帮助解决实际问题,即利用高斯-赛德尔迭代法在C语言中的编程实现.高斯-赛德尔迭代法在计算机中的主要实现过程如下图所示是输入,
8、系数矩阵,
此文档下载收益归作者所有