理学数值分析第六章课件.pptx
《理学数值分析第六章课件.pptx》由会员分享,可在线阅读,更多相关《理学数值分析第六章课件.pptx(90页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章第五章解线性方程组的数值解法解线性方程组的数值解法引言引言 在自然科学和工程技术中在自然科学和工程技术中,很多问题很多问题归结为归结为解线性方程组解线性方程组.例如电学中的网络例如电学中的网络问题,船体数学放样中建立三次样条函问题,船体数学放样中建立三次样条函数问题,用最小二乘法求实验数据的曲数问题,用最小二乘法求实验数据的曲线拟合问题,解非线性方程组问题,用线拟合问题,解非线性方程组问题,用差分法或者有限元方法解常微分方程、差分法或者有限元方法解常微分方程、偏微分方程边值问题等都导致求解线性偏微分方程边值问题等都导致求解线性方程组,而这些方程组,而这些方程组的系数矩阵大致方程组的系数矩
2、阵大致分为两种分为两种,一种是低阶稠密矩阵一种是低阶稠密矩阵(例如,例如,阶数不超过阶数不超过150). 另另一种是大型稀疏矩阵一种是大型稀疏矩阵(即矩阵阶数高且零元素较多即矩阵阶数高且零元素较多). 有的问题的数学模型中虽不直接表现为含线性有的问题的数学模型中虽不直接表现为含线性方程组方程组, ,但它的数值解法中将问题但它的数值解法中将问题“离散化离散化”或或“线性化线性化”为线性方程组为线性方程组. .因此因此线性方程组的求解是线性方程组的求解是数值分析课程中最基本的内容之一数值分析课程中最基本的内容之一. . 关于线性方程组的解法一般有两大类:关于线性方程组的解法一般有两大类: 但实际计
3、算中由于舍入误差的存在和影响,这但实际计算中由于舍入误差的存在和影响,这种方法也只能求得线性方程组的近似解种方法也只能求得线性方程组的近似解. . 本章将阐本章将阐述这类算法中最基本的和具有代表性的算法就是高述这类算法中最基本的和具有代表性的算法就是高斯消元法斯消元法, ,以及它的某些变形和应用以及它的某些变形和应用. .这类方法是解这类方法是解低阶稠密矩阵方程组及某些大型稀疏矩阵方程组低阶稠密矩阵方程组及某些大型稀疏矩阵方程组( (例例如,大型带状方程组如,大型带状方程组) )的有效方法的有效方法. . 1. 直接法直接法 经过有限次的算术运算经过有限次的算术运算, ,可以求得方程组的精确可
4、以求得方程组的精确解解( (假定计算过程没有舍入误差假定计算过程没有舍入误差).).如线性代数课程中如线性代数课程中提到的克莱姆算法就是一种直接法提到的克莱姆算法就是一种直接法. .但该法对高阶方但该法对高阶方程组计算量太大程组计算量太大, ,不是一种实用的算法不是一种实用的算法. . 就是用某种极限过程去逐步逼近方程组精确解就是用某种极限过程去逐步逼近方程组精确解的方法的方法. 迭代法具有计算机的存储单元较少、程序设迭代法具有计算机的存储单元较少、程序设计简单、原始系数矩阵在计算过程中始终不变等优计简单、原始系数矩阵在计算过程中始终不变等优点,但存在点,但存在收敛条件收敛条件和和收敛速度收敛
5、速度问题问题. .迭代法是解大迭代法是解大型稀疏矩阵方程组型稀疏矩阵方程组( (尤其是由微分方程离散后得到的尤其是由微分方程离散后得到的大型方程组大型方程组) )的重要方法的重要方法. . 2. 迭代法迭代法5.2 高斯消去法 本节介绍高斯消去法本节介绍高斯消去法( (逐次消去法逐次消去法) )及消去法及消去法和矩阵三角分解之间的关系和矩阵三角分解之间的关系. . 虽然高斯消去法是一虽然高斯消去法是一种古老的求解线性方程组的方法种古老的求解线性方程组的方法( (早在公元前早在公元前250250年年我国就掌握了解方程组的消去法我国就掌握了解方程组的消去法) ),但由它改进、,但由它改进、变形得到
6、的选主元素消去法、三角分解法仍然是目变形得到的选主元素消去法、三角分解法仍然是目前计算机上常用的有效方法前计算机上常用的有效方法. .我们在中学学过消去我们在中学学过消去法法, ,高斯消去法就是它的标准化的、适合在计算机高斯消去法就是它的标准化的、适合在计算机上自动计算的一种方法上自动计算的一种方法. .5.2.1 高斯消去法 设有线性方程组设有线性方程组)1 . 2(.,22112222212111212111 mnmnmmnnnnbxaxaxabxaxaxabxaxaxa或写成矩阵形式或写成矩阵形式.2121212222111211 mnmnmmnnbbbxxxaaaaaaaaa简记为简记
7、为Ax=b. nnnnnnnnbxubxuxubxuxuxu2222211212111,nnnnubx .,112111uxubxnjjj 如如: 上三角矩上三角矩阵阵所对应所对应的线性方的线性方程组程组,)1)(1()1(11 nnnnnnnuxubx解为解为 当当m=n时,对时,对三角形方程组三角形方程组的解非常容易,如的解非常容易,如 nnnnnnbylylylbylylbyl221122221211111,1111lby 下三角矩阵下三角矩阵所对所对应的线性方程组应的线性方程组,2212122lylby ,计算量(乘除法的主要部分)都为计算量(乘除法的主要部分)都为 n2/2.解为解为
8、nnnjjjnnlylby 111 因此,我们将一般的线性方程组化成等价的三因此,我们将一般的线性方程组化成等价的三角形方程组来求解角形方程组来求解. 首先举一个简单的例子来说明消去法的基本思想首先举一个简单的例子来说明消去法的基本思想. 例例1 用消去法解方程组用消去法解方程组 )4 . 2(. 122)3 . 2(, 54)2 . 2(, 632132321xxxxxxxx 解解 第第1步,将方程步,将方程(2.2)乘上乘上- -2加到方程加到方程(2.4)上上去,消去去,消去(2.4)中的未知数中的未知数x1,得到,得到)5 . 2(.11432 xx 第第2步,将方程步,将方程(2.3
9、) 加到方程加到方程(2.5)上去,消去上去,消去(2.5)中的未知数中的未知数x2,得到与原方程组等价的三角形,得到与原方程组等价的三角形方程组方程组 . 62)6 . 2(, 54, 6332321xxxxxx显然,方程组是显然,方程组是(2.6)是容易求解的,解为是容易求解的,解为.)3 , 2 , 1(Tx 上述过程相当于对方程的上述过程相当于对方程的增广阵做初等行变换增广阵做初等行变换 6200514061111114051406111112251406111)(bA132rr 23rr 其中其中ri用表示矩阵的第用表示矩阵的第i行行. 由此看出,用消去法解方程组的由此看出,用消去法
10、解方程组的基本思想基本思想是用是用逐次消去未知数的方法把原方程组逐次消去未知数的方法把原方程组Ax=b化为与其等化为与其等价的三角形方程组,而求解三角形方程组可用回代价的三角形方程组,而求解三角形方程组可用回代的方法求解的方法求解. 换句话说,上述过程就是用初等行变换句话说,上述过程就是用初等行变换将原方程组系数矩阵化为简单形式换将原方程组系数矩阵化为简单形式(上三角矩阵上三角矩阵),从而求解原方程组从而求解原方程组(2.1)的问题转化为求解简单方程的问题转化为求解简单方程组的问题组的问题. 或者说,对系数矩阵或者说,对系数矩阵A施行一些行变换施行一些行变换(用一些简单矩阵左乘用一些简单矩阵左
11、乘A)将其约化为上三角矩阵将其约化为上三角矩阵. 这这就是就是高斯消去法高斯消去法. 下面讨论求解一般线性方程组的高斯消去法下面讨论求解一般线性方程组的高斯消去法.由由 mnmnmmnnnnbxaxaxabxaxaxabxaxaxa22112222212111212111 )1()1(2)1(21)1(1)1(2)1(22)1(221)1(21)1(1)1(12)1(121)1(11mnmnmmnnnnbxaxaxabxaxaxabxaxaxa .2121212222111211 mnmnmmnnbbbxxxaaaaaaaaa .)1()1(2)1(121)1()1(2)1(1)1(2)1(2
12、2)1(21)1(1)1(12)1(11 mnmnmmnnbbbxxxaaaaaaaaa 将将(2.1)记为记为A(1)x=b(1),其中,其中 )1()1(2)1(1)1(2)1(22)1(21)1(1)1(12)1(11)1(mnmmnnaaaaaaaaaA )1()1(2)1(1)1(mbbbb.212222111211 mnmmnnaaaaaaaaa.21 mbbb (1) 第第1步步(k=1). .,)2()2(2)2(2)2(2)2(22)2(22)1(1)1(12)1(121)1(11mnmnmnnnnbxaxabxaxabxaxaxa 设设a11(1) 0,首先计算,首先计算乘
13、数乘数 mi1= ai1(1) /a11(1) (i=2,3,m).用用- -mi1乘乘(2.1)的第一个方程,加到第的第一个方程,加到第i个个(i=2,3, ,m)方程上,消去方程上,消去(2.1)的从第二个方程到第的从第二个方程到第m个方程中的个方程中的未知数未知数x1,得到与,得到与(2.1)等价的方程组等价的方程组.00)2()2(2)1(121)2()2(2)2(2)2(22)1(1)1(12)1(11 mnmnmnnbbbxxxaaaaaaa (2.7)简记为简记为 A(2)x=b(2),其中其中A(2), b(2)的元素计算公式为的元素计算公式为 )., 2(), 2;, 2()
14、1(11)1()2()1(11)1()2(mibmbbnjmiamaaiiijiijij (2) 第第k次消元次消元(k=1,2,s, s=min(m- -1,n). 设上述第设上述第1步,步, ,第,第k- -1步消元过程计算已经步消元过程计算已经完成,即已计算好与完成,即已计算好与(2.1)等价的方程组,简记为等价的方程组,简记为A(k)x=b(k),其中,其中)8 .2(.)()()2(2)1(121)()()2(2)1(1)()()2(2)2(22)1(1)1(12)1(11 kmkkmkkmnkknnnkmkkkkkkbbbbxxxxaaaaaaaaaaa 设设akk(k) 0,计算
15、,计算乘数乘数 mik= aik(k) /akk(k) (i=k+1, ,m).用用- -mik乘乘(2.8)的第的第k个方程加到第个方程加到第 i个个(i= k+1, , m)方方程上,消去从第程上,消去从第k+1个方程到第个方程到第m个方程中的未知数个方程中的未知数xk,得到与,得到与(2.1)等价的方程组等价的方程组A(k+1)x=b(k+1),其中其中A(k+1), b(k+1)的元素计算公式为,的元素计算公式为, )9 . 2()., 1(), 1;, 1()()()1()()()1(mkibmbbnkjmkiamaakkikkikikkjikkijkij显然显然A(k+1)中从第中
16、从第1行到第行到第k行与行与A(k)相同相同. (3) 继续上述过程,且设继续上述过程,且设aii(i) 0 (i=1,2, ,s),直,直到完成第到完成第s步消元计算步消元计算. 最后得到与原方程组等价的最后得到与原方程组等价的简单方程组简单方程组A(s+1)x=b(s+1) ,其中,其中A(s+1)为上阶梯为上阶梯. 特别当特别当m=n时,时,与原方程组等价的简单方程组为与原方程组等价的简单方程组为A(n)x=b(n),即,即)10.2(.)()2(2)1(121)()2(2)2(22)1(1)1(12)1(11 nnnnnnnnbbbxxxaaaaaa由由(2.1)约化为约化为(2.10
17、)的过程称为的过程称为消元过程消元过程. 如果如果A是非奇异矩阵,且是非奇异矩阵,且akk(k) 0 (k=1,2,n- -1),求解三角形方程组求解三角形方程组(2.10),得到求解公式,得到求解公式)11. 2 ().1 , 2, 1(/ )(,/)(1)()()()( nnkaxabxabxkkknkjjkkjkkknnnnnn(2.10)的求解过程的求解过程(2.11) 称为称为回代过程回代过程. 注意:设注意:设Ax=b,其中,其中ARnn为非奇异矩阵,如为非奇异矩阵,如果果a11(1)=0,由于,由于A为非奇异矩阵,所以为非奇异矩阵,所以A的第的第1列一定列一定有元素不等于零,例如
18、有元素不等于零,例如al1 0,于是可交换两行元素,于是可交换两行元素(即即r1rl),将,将al1 调到调到(1,1)位置,然后进行消元计算,位置,然后进行消元计算,这时这时A(2)右下角矩阵为右下角矩阵为n- -1阶非奇异矩阵,继续这过阶非奇异矩阵,继续这过程,高斯消去法照样可进行计算程,高斯消去法照样可进行计算. 总结上述讨论即有总结上述讨论即有 定理定理5 设设Ax=b,其中,其中ARnn. (1) 如果如果akk(k) 0 (k=1,2,n),则可通过高斯消去,则可通过高斯消去法将法将Ax=b约化为等价的三角形方程组约化为等价的三角形方程组(2.10),且计算,且计算公式为公式为 (
19、a) 消元计算消元计算(k=1,2, ,n- -1) )., 1(), 1,(), 1(/)()()1()()()1()()(nkibmbbnkjiamaankiaamkkikkikikkjikkijkijkkkkikik (b) 回代计算回代计算 ).1 , 2 , 1(/ )(,/)(1)()()()(nkaxabxabxnnnnkjjkkjkkknnnnnn (2) 如果如果A为非奇异矩阵,则可通过高斯消去法为非奇异矩阵,则可通过高斯消去法(及交换两行的初等变换及交换两行的初等变换)将方程组将方程组Ax=b约化为等价的约化为等价的三角形方程组三角形方程组(2.10).例子例子 解方程组解
20、方程组 02115472321321321xxxxxxxxx解解:消元:消元 0121111547112回代得回代得, 3263 x 3235 . 2rr 620033307112 5 . 35 . 05 . 203330711231212124rrrr , 233332 xx. 127321 xxx5.3 高斯主元素消元法 由高斯消去法知道由高斯消去法知道, 在消元过程中可能有在消元过程中可能有akk(k)0的情况,这时消去法将无法进行;即使主元素的情况,这时消去法将无法进行;即使主元素akk(k) 0但很小时,用其作除数,会导致其它元素数量级的严但很小时,用其作除数,会导致其它元素数量级的
21、严重增长和舍入误差的扩散,最后也使得计算解不可靠重增长和舍入误差的扩散,最后也使得计算解不可靠. 高斯消去法也称高斯消去法也称主元素消去法主元素消去法 (条件条件det A 0) 即即当当akk(k)=0 时,高斯消元法时,高斯消元法无法进行无法进行;或;或 | akk(k) |1时,带来时,带来舍入误差的扩散舍入误差的扩散。(小主元)(小主元)5.3.1 列主元素消去法.212n12122211211 nnnnnnbbbaaaaaaaaaB 设方程组设方程组(2.1)的增广矩阵为的增广矩阵为 首先在首先在A的第的第1列中选取绝对值最大的元素作为列中选取绝对值最大的元素作为主元素,例如主元素,
22、例如, 0|max|1111 iniiaa1111maxiniaannnnniiniinbaaabaaabaaabaaa.21212112221111211交换1A EEA 消消元元法法消元法的应用消元法的应用1. 求行列式求行列式 高斯高斯消元法消元法( )( )1det()det()nniiiiAAa 2. 求逆矩阵求逆矩阵(用高斯用高斯-若当消去法若当消去法) 例子例子 分别用高斯分别用高斯消元法和列主元消元消元法和列主元消元法求矩阵的行列式法求矩阵的行列式. . 643. 5072. 12623. 4712. 3132108A 99998106 . 0104 . 00103 . 010
23、2 . 003210A解:解:高高斯斯消消元元法法92110rr 913102 rr232rr 大数大数“吃掉吃掉”了小数!了小数! 000103 . 0102 . 0032109980det A列列主主元元消消元元法法 3210623. 4712. 31643. 5072. 128 103 . 0102 . 001018018. 0103176. 00643. 5072. 12 10186555. 0001018018. 0103176. 00643. 5072. 12 643. 5072. 12623. 4712. 313210831rr 84997.11det A5.3.2 高斯-若当消
24、去法 高斯高斯-若当消去法是高斯消去法的一种变形若当消去法是高斯消去法的一种变形. 高高斯消去法斯消去法是消去对角元素下方的元素是消去对角元素下方的元素. 如果同时消如果同时消去对角元素上方和下方的元素,而且将对角元素化去对角元素上方和下方的元素,而且将对角元素化为为1,这种方法就称为,这种方法就称为高斯高斯-若当若当(Gauss-Jordan)消去消去法法. 设高斯设高斯-若当消去法已完成若当消去法已完成k- -1步,于是步,于是Ax=b化化为等价方程组为等价方程组A(k)x=b(k),其中增广阵,其中增广阵 .101001|121, 121, 121)()( nkknnknnknnnkkk
25、kkkkkkbbbbbaaaaaaaaaabA 在第在第k步计算时步计算时(k=1,2,n),考虑将第考虑将第k行上、下行上、下的第的第k列元素都进行消元计算化为零,且列元素都进行消元计算化为零,且akk化为化为1. 1. 按列选主元素,即确定按列选主元素,即确定ik使使.max,iknikkiaak 2. 换行换行(当当ikk时时),交换第,交换第k行与第行与第ik行元素行元素jikjkaa,kikbb (j=k,k+1,n), 3. 计算乘数计算乘数 mik=- -aik/akk(i=1,2,n, ik) mkk=1/akk . (mik可保存在存放可保存在存放aik的单元中的单元中).
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 理学 数值 分析 第六 课件
限制150内