1第3章解线性方程组的数值解法2引言在自然科学和工程技术中很多问题的解决常常归结为解线性代数方程组。例如电学中的网络问题,船体数学放样中建立三次样条函数问题,用最小二乘法求实验数据的曲线拟合问题,解非线性方程组问题,用差分法或者有限元法解常微分方程,偏微分方程边值问题等都导致求解线性方程组,而且后面几种情况常常归结为求解大型线性方程组。线性代数方面的计算方法就是研究求解线性方程组的一些数值解法与研究计算矩阵的特征值及特征向量的数值方法。3引言关于线性方程组的数值解法一般有两类。直接法:经过有限步算术运算,可求得方程组的精确解的方法(若在计算过程中没有舍入误差)迭代法:用某种极限过程去逐步逼近线性方程组精确解的方法迭代法具有占存储单元少,程序设计简单,原始系数矩阵在迭代过程中不变等优点,但存在收敛性及收敛速度等问题。43.1高斯消元法设线性方程组简记AX=bnnnnnnnnnnbxaxaxabxaxaxabxaxaxa........................221122222121112121115高斯消元法其中nnijnnnaaaaaaaaaa)(An2n1n2222112111TnTnbbbxxxbx2121,6高斯消元法克莱姆法则在理论上有着重大意义,但在实际应用中存在很大的困难,在线性代数中,为解决这一困难给出了高斯消元法。代替所得。列用的第是,,其中,法则:biAAADniDDxGrameriiiii)det(0A)det(D,...,2,17高斯消元法例1.用消元法解方程组)3(122)2(54)1(632132321xxxxxxxx8例题第一步:-2xr1+r3得)4(114)2(54)1(63232321xxxxxxx9例题第二步:1xr2+r4回代得:x=[1,2,3]T)5(62)2(5)1(6332321xxxxxx103.1.1高斯顺序消元法下三角形方程求解设(1)nilbxlxlxlbxlxlbxliinnnnnn,...,2,1,0.........221122221211111其中,11高斯顺序消元法由(1)得1122121221111/)(....../)(ninnininnlxlbxlxlbxlbx该法称为向前代入法。即nilxlbxlbxiiijjijii,...,3,2/)(/:11111112高斯顺序消元法算法:;/)(;11;0nto2i3/2;),,2,1,,2,1(,11111iiiijijiijlsbxxlssdoitojForsdoForlbxijnibl、、、赋初值13高斯顺序消元法nnnnllllllLLbx21222111(1)其中式可简写成,14上三角方程组的解法设,...,n,,iubxu......bxu......xubxu......xuxuiinnnnnnnn210)2(2222211212111其中,15由(2)式回代得12,...11,ni)/uxu(bx/ubxiinijjijiinnnn16上三角方程组的解法nnnnuuuuuuUUbx22211211(2)其中式可简写成,17高斯顺序消去法设Ax=b.记A(1)=Ab(1)=b。设1、第一次消元。0iiaTnnnnnniiibbbbbaaaaaaaniaalnaa]......[........................AA,...,3,2,...,32ii)()2()2(2)1(1)2()1()2()2(2)2(2)2(22)1(1)1(11)1(11)2(1)1(11)1(11)1(11)1(1)(令),,行(第第一行18高斯顺序消去法),...,2;,...,2()1(11)1(1)1(1)1()1(11)1()2(njniaaaaalaajiijjiijij),...,2(.)1(1)1(11)1(1)1(1)1(1)1()2(nibaablbbbiiiii19高斯顺序消去法设第k-1次消元得A(k)x=b(k)其中)()()2(2)1(1)()()()()2(2)2(22)1(1)1(12)1(11)()(...................................................]|[knkkknnknkkknkkknnkkbbbbaaaaaaaaabA20高斯顺序消去法则第k次消元:nkjnkialaakkjikkijkij,...,1;,...,1)()()1(,则有,,令1,...,2,1,...,1)()(nknkiaalkkkikiknkiblbbkkikkiki,...,1)()()1(,21高斯顺序消去法最后)()()2(2)1(1)()()()2(2)2(22)1(1)1(12)1(11)()(......................................................][nnkknnnkknkkknnnnbbbbaaaaaaaabA22高斯顺序消去法也就是对于方程组AX=b系数矩阵做:)1,...,2,1(,...,1,...,1/)()()1()()()1()()(nknkjnkilbbbalaaaalikkkkikikkjikkijkijkkkkikik23高斯顺序消去法)()()2(2)1(1)()()()2(2)2(22)1(1)1(12)1(11)()()n(......................................................])(|[AnnkknnnkknkkknnnnbbbbaaaaaaaanAbbx其中得到24高斯顺序消去法)1,...,1(/).(/A)(1)()()()()()(niaxabxabxiiinijjiijiiinnnnnnnbx回代法再解25高斯顺序消去法;做对;;做对机;输出算法失败信息,停做对输入:kjikijijkikiikkikikikkkiijalaankjblbbaalankianknibnjia,...,32/1,...,)2thenif),,...,,)(),...,,(),,...,,,()1(00011011212212126高斯顺序消去法)det(),,...,,()(...)(det)3/)(,,...,)2/)1else,thenif)(AAnixaaaAaxabxbniabxbainniinijjijiiinnnnnnn的行列式的值系数矩阵输出:方程组的解;;做对;做并停机输出算法失败信息214121032211127高斯顺序消去法算法框图28高斯消去法的计算量次除法。即做kn),...,1i(/:)()(nkaalkkkkkikik步第:)1)(()1()(故总的消元计算量为次乘法需由knknAAkk11)52)(1(61)]1)(()[(nknnnknknkn)1(21)()(nnbXAnn回代时乘除运算量为解)13(312nnnN即总计算量为29高斯顺序消去法条件nkakkk,...,2,1,0)(高斯顺序消去法要求0...)det()()2(22)1(11nnnaaaA有:.也就是此算法的缺点.,,,00:)()()(即数值不稳定做除数易产生解的失真用此时很小,但若即使kkkkkkkkkaaa303.1.2高斯主元素消去法Gauss列主元消元法从第一列中选出绝对值最大的元素1111maxiniaannnnniiniinbaaabaaabaaabaaa....................................................................................21212112221111211交换31高斯列主元消去法顺序消元计算机中实现)3;:;;1)2;|;|maxmax||21;i;||max1)11111TaaaaTdontojforkiathenaifdontokforaijijjjkki32高斯列主元消去法第k步从的第k列,,中选取绝对值最大项,记录所在行,即若交换第k行与l行的所有对应元素,再进行顺序消元。(k)kka1)(Ak(k)nk.a..(k)kkakkikkkiilaak记||max||)(nik)(kl33框图34高斯列主元消去法输出奇异标志,停机;;做对;;即记选列主元:做对输入:then0if)2,then||if,...,,||,|,|max||),,...,,)(),...,,(),,...,,,()1(maxmaxmaxmaxailaaaankkiaaklilaanknibnjiaikikkkkiknikkiiijk2111212212135高斯列主元消去法;做对;;做对;;做对行所有对应元素,即行与第交换第kjikijijkikiikkikikikiikkljljkjkjalaankjblbbaalankiTbbbbTTaaaaTnkkjlkkl,...,32/1,...,)4;;2;;,...,,1thenif)30000011136高斯列主元消去法。输出:方程组的解;做对;并停机输出奇异标志回代求解),...,,()(/)(,,...,)2/)1else,thenif)(nixaxabxbniabxbaiiinijjijiiinnnnnnn214121031372.全主元消去法例如.求解方程组Txxxx)3675.0,05104.0,4904.0(:4,4000.3000.2000.1643.5072.1000.2623.4712.3000.1000.3000.2001.0*321位有效数字为精确解舍入到位浮点数进行计算用38全主元消去法.)4000.0,09980.0,4000.0(00.2002.1000.100.500005.32.0040000.3000.2001.0003.2002.1000.1006.6001.40005.32.0040000.3000.2001.0000.3000.2000.1643.5072.1000.2623.4712.3000.1000.3000.2001.0)|A(.是一个很坏的解解得用高斯顺序消去法求解Txb39全主元消去法Txb)3676.0,51080.0,88544.0(6866.0500.0000.38676.1008015.13.17605.6431.00722.000-0015.1500.0000.30023.30005.208015.13.17605.6431.00722.000-000.1000.2000.3000.3000.2