高斯消去法综述
- 格式:ppt
- 大小:900.00 KB
- 文档页数:57
用高斯消元法求解线性代数方程组12341115-413-2823113-21041513-21719x x x x ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦ 1111X *⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦(X *是方程组的精确解)1 高斯消去法1。
1 基本思想及计算过程高斯(Gauss )消去法是解线性方程组最常用的方法之一,它的基本思想是通过逐步消元,把方程组化为系数矩阵为三角形矩阵的同解方程组,然后用回代法解此三角形方程组得原方程组的解.为便于叙述,先以一个三阶线性方程组为例来说明高斯消去法的基本思想.⎪⎩⎪⎨⎧=++II =++I =++III)(323034)(5253)(6432321321321x x x x x x x x x 把方程(I)乘(23-)后加到方程(II)上去,把方程(I)乘(24-)后加到方程(III )上去,即可消去方程(II)、(III)中的x 1,得同解方程组⎪⎩⎪⎨⎧=+-I I -=-I =++III)(20223)(445.0)(64323232321x x x x x x x将方程(II)乘(5.03)后加于方程(III ),得同解方程组: ⎪⎩⎪⎨⎧-=-I I -=-I =++III)(42)(445.0)(6432332321x x x x x x由回代公式(3.5)得x 3 = 2,x 2 = 8,x 1 = —13。
下面考察一般形式的线性方程组的解法,为叙述问题方便,将b i 写成a i , n +1,i = 1, 2,…,n .⎪⎪⎩⎪⎪⎨⎧=++++=++++=+++++++1,3322111,223232221211,11313212111n n n nn n n n n n n n n n a x a x a x a x a a x a x a x a x a a x a x a x a x a(1-1)如果a 11 ¹ 0,将第一个方程中x 1的系数化为1,得)1(1,1)1(12)1(121+=+++n n n a x a x a x其中)0(11)0()1(1aa aijj=, j = 1, …, n + 1(记ij ij a a =)0(,i = 1, 2, …, n ; j = 1, 2, …, n + 1)从其它n –1个方程中消x 1,使它变成如下形式⎪⎪⎩⎪⎪⎨⎧=++=++=++++++)1(1,)1(2)1(2)1(1,2)1(22)1(22)1(1,1)1(12)1(121n n n nn n n n n n n n a x a x a a x a x a a x a x a x(1-2)其中n i a m a aij i ij ij ,,2)1(1)1( =⋅-=,1,,3,211)1(11+==n j a a m i i由方程(1—1)到(1—2)的过程中,元素11a 起着重要的作用,特别地,把11a 称为主元素.如果(1-2)中0)1(22≠a ,则以)1(22a 为主元素,又可以把方程组(1-2)化为: ⎪⎪⎪⎩⎪⎪⎪⎨⎧=++=++=+++=+++++++)2(1,)2(3)2(3)3(1,3)2(33)2(33)2(1,2)2(23)2(232)1(1,1)1(12)1(121 n n n nn n n n n n n n n n n a x a x a a x a x a a x a x a x a x a x a x (1-3)针对(1—3) 继续消元,重复同样的手段,第k 步所要加工的方程组是:⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎨⎧=++=++=+++=+++=++++-+---+---+-----++)1(1,)1()1()1(1,)1()1()1(1,1)1()1(11)2(1,2)2(23)2(232)1(1,1)1(13)1(132)1(121 k n n n k nn k k nk k n k n k nn k k kk k n k n k kn k k k k n n n n n n a x a x a a x a x a a x a x a x a x a x a x a x a x a x a x设0)1(≠-k kk a ,第k 步先使上述方程组中第k 个方程中x k 的系数化为1:)(1,)()(1,k n k n k kn k k k k k a x a x a x ++=++然后再从其它(n — k )个方程中消x k ,消元公式为:⎪⎪⎪⎩⎪⎪⎪⎨⎧+=++=⋅-=++==----nk i n k j a a a a n k k j a a a k kjk ik k ij k ij k kkk kjk kj ,11,,11,,1,)()1()1()()1()1()( (1—4)按照上述步骤进行n 次后,将原方程组加工成下列形式:⎪⎪⎪⎩⎪⎪⎪⎨⎧==+=+++=+++++-+---++)(1,)1(1,1)1(1)2(1,2)2(23)2(232)1(1,1)1(13)1(132)1(121 n n n n n n n n n nn n n n n n n n a x a x a x a x a x a x a x a x a x a x 回代公式为:⎪⎩⎪⎨⎧-=-==∑+=++1,,11)()(1,)(1, n k x a a x a x nk j j k kjk n k k n n nn (1-5)综上所述,高斯消去法分为消元过程与回代过程,消元过程将所给方程组加工成上三角形方程组,再经回代过程求解。
例子高斯消去法可用來找出下列方程組的解或其解的限制:這個算法的原理是:首先,要將L1以下的等式中的x消除,然後再將L2以下的等式中的y消除。
這樣可使整毎方程組變成一個三角形似的格式。
之後再將已得出的答案一個個地代入已被簡化的等式中的未知數中,就可求出其餘的答案了。
在剛才的例子中,我們將和L2相加,就可以將L2中的x消除了。
然後再將L1和L3相加,就可以將L3中的x消除。
我們可以這樣寫:結果就是:現在將− 4L2和L3相加,就可將L3中的y消除:其結果是:這樣就完成了整個算法的初步,一個三角形的格式(指:變數的格式而言,上例中的變數各為3,2,1個)出現了。
第二步,就是由尾至頭地將已知的答案代入其他等式中的未知數。
第一個答案就是:然後就可以將z代入L2中,立即就可得出第二個答案:之後,將z和y代入L1之中,最後一個答案就出來了:就是這樣,這個方程組就被高斯消去法解決了。
這種算法可以用來解決所有線性方程組。
即使一個方程組不能被化為一個三角形的格式,高斯消去法仍可找出它的解。
例如在第一步化簡後,L2及L3中沒有出現任何y,沒有三角形的格式,照著高斯消去法而產生的格式仍是一個行梯陣式。
這情況之下,這個方程組會有超過一個解,當中會有至少一個變數作為答案。
每當變數被鎖定,就會出現一個解。
通常人或電腦在應用高斯消去法的時候,不會直接寫出方程組的等式來消去未知數,反而會使用矩陣來計算。
以下就是使用矩陣來計算的例子:跟著以上的方法來運算,這個矩陣可以轉變為以下的樣子:這矩陣叫做「行梯陣式」。
最後,可以利用同樣的算法產生以下的矩陣,便可把所得出的解或其限制簡明地表示出來:高斯消去法可以用來找出一個可逆矩陣的逆矩陣。
設A為一個的矩陣,其逆矩陣可被兩個分塊矩陣表示出來。
將一個單位矩陣放在A的右手邊,形成一個的分塊矩陣B = [A,I] 。
經過高斯消去法的計算程序後,矩陣B的左手邊會變成一個單位矩陣I,而逆矩陣A- 1會出現在B的右手邊。
高斯消去法自然界中有各种各样的消去法,而人们对其运用也不计其数。
如:对物理学上的一些问题,大多用了消去法,也是为了得到正确的答案。
在生活中,人们常常会遇到这样那样的数学问题,这时便可以使用“高斯消去法”,通过简单的计算便可得出正确的答案。
下面就来介绍它的具体做法: 1。
我国科学家采用了高斯消去法。
当年他在研究“零点能”时,很少数学家采用高斯消去法,认为太麻烦,只要找到一个零点能比较小的位置,把它消去,其余大部分应该能被保留。
但事实并非如此,后来经过调查,发现原来只要让这些点连续增加,直到与相邻的点相差无几,那么我们所求的零点能将变为零。
于是,人们通过巧妙地构造,终于成功地将零点能消掉了,得到了正确的结果。
2。
4。
其实在数学上,高斯消去法远不止这两个例子,只要我们善于观察、思考、发现和创新,一定还能想到更好的消去方法。
3。
6。
上帝的方法是:当你在生命线上与一些重要人物紧紧相连时,把它消去,把消失的那段砍掉。
以前那人一直不明白,为什么他的生命线总与别人相连,却永远都断不了,后来,他才恍然大悟,原来上帝把他与一些重要人物的紧密关系消去了,而把另一些无关紧要的人物增添上去。
9。
人类有时会受到一些坏人的欺骗。
比如说,两个强盗绑架了许多小孩子。
其中一个强盗见这些小孩个头矮小,便想出一个绝招。
这天晚上,两个强盗把一根又粗又长的绳子捆在一棵树上,在距离村子很远的地方准备好另外一根绳子。
第二天早上,这个绑架了小孩的强盗假装放绳子,那些小孩便拼命地往家跑,而绳子却从那棵树上下来,勒在他们身上。
这时,他们早已跑得精疲力尽,等醒过神来,一切都结束了。
9。
不知道大家有没有看过《哈利·波特》,书中讲述了主人公哈利和他的三个朋友的故事,他们因为意外互换了身份,进入到了魔法学校霍格沃兹学习,在校期间他们为了解开伏地魔的阴谋,跟着导师邓不利多在魔法世界里探险。
在这个过程中,他们遇到了许多困难,像密室逃脱、身份揭穿、幽灵共舞等等,有的时候,凭他们的智慧和勇气,是完全可以战胜这些困难的。
高斯消元法详解高斯消元法是一种线性代数中用于解决线性方程组的方法。
它的基本思想是通过一系列的行变换将一个线性方程组转化为一个上三角矩阵,然后通过回带求解出未知数的值。
高斯消元法的基本步骤如下:1. 将待求解的线性方程组写成增广矩阵形式,即将系数矩阵和常数向量合并成一个矩阵。
2. 选取第一行第一列元素不为零的行作为主元行,通过初等行变换将该行化为主元,即使该行第一列元素为1,其余元素为0。
3. 对于每个未被选中的行,将其第一列元素通过初等行变换化为0。
具体做法是将该行乘以主元所在行第一列的相反数,并加到主元所在行上。
4. 重复步骤2和3直到所有未被选中的行都被化为0或者无法选取主元。
5. 回带求解出未知数的值。
从最后一行开始,依次代入已经求出来的未知数值并计算出当前未知数值。
需要注意的是,在进行高斯消元法时需要注意以下几点:1. 当选择主元时应尽量避免选取小数作为主元,因为小数的精度有限,可能会导致计算误差。
2. 当系数矩阵中存在多个相同的行时,需要将它们合并成一个行,以减少计算量。
3. 在进行回带求解时,应注意未知数的顺序和求解的顺序应该一致。
高斯消元法可以用于求解任意大小的线性方程组,但是当方程组的规模很大时,计算量会非常大。
此外,在某些情况下高斯消元法可能会出现无法选取主元或者主元为0的情况,此时需要采用其他方法进行求解。
总之,高斯消元法是一种简单而有效的线性方程组求解方法,在实际应用中得到了广泛的应用。
熟练掌握高斯消元法可以提高我们在科学计算和工程设计中的能力和水平。
2.3高斯列主元消去法解线性方程组一:问题的提出我们都知道,高斯列主元素消去法是计算机上常用来求解线性方程组的一种直接的方法。
就是在不考虑舍入误差的情况下,经过有限步的四则运算可以得到线性方程组的准确解的一类方法。
实际运算的时候因为只能有限小数去计算,因此只能得到近似值。
在实际运算的时候,我们很多时候也常用高斯消去法。
但是高斯消去法在计算机中运算的时候常会碰到两个问题。
1.一旦遇到某个主元等于0,消元过程便无法进行下去。
2.在长期使用中还发现,即使消元过程能进行下去,但是当某个主元的绝对值很小时,求解出的结果与真实结果相差甚远。
为了避免高斯消去法消元过程中出现的上述两个问题,一般采用所谓的选择主元法。
其中又可以分为列选主元和全面选主元两种方法。
目前计算机上常用的按列选主元的方法。
因此我在这里做的也是列选主元高斯消去法。
二、算法的基本思想大家知道,如果一个线性方程组的系数矩阵是上三角矩阵时,即这种方程组我们称之为上三角方程组,它是很容易求解的。
我们只要把方程组的最下面的一个方程求解出来,在把求得的解带入倒数第二个方程,求出第二个解,依次往上回代求解。
然而,现实中大多数线性方程组都不是上面所说的上三角方程组,所以我们有可以把不是上三角的方程通过一定的算法化成上三角方程组,由此我们可以很方便地求出方程组的解。
高斯消元法的目的就是把一般线性方程组简化成上三角方程组。
于是高斯消元法的基本思想是:通过逐次消元将所给的线性方程组化为上三角形方程组,继而通过回代过程求解线性方程组。
三、算法的描述1、设有n 元线性方程组如下:1111n n nn a a a a ⎛⎫ ⎪ ⎪ ⎪⎝⎭K M OM L1n x x ⎛⎫ ⎪ ⎪ ⎪⎝⎭M =1n b b ⎛⎫ ⎪ ⎪ ⎪⎝⎭M 2、 第一步:如果a 11!=0, 令l i1= ai1/a11, I= 2,3,……,n用(-li1)乘第一个方程加到第i 个方程上,得同解方程组:a (1)11 a (1)12 . . . a (1)1nx 1 b (1)1a (1)21 a (1)22 . . . a (1)2n x 2b (1)2. . . . . . . = .a (1)n-11 a (1)n-12 . . a (1)n-1n x n-1b (1)n-1a (1)n1 a (1)n2 . . . a (1)nn x nb (1)n简记为:A (2) x = b (2)其中a (2)ij = a (1)ij – l i1 * a (1)1j , I ,j = 2,3,..,nb(2)I = b(1)I– l i1 * b(1)1 , I = 2,3,...,n第二步:如果a(2)22 != 0,令l i2= a(2)i2/a(2)22, I= 3,……,n依据同样的原理,对矩阵进行化间(省略),依次下去,直到完成!最后,得到上三角方程组:a(1)11a(1)12 . . . a(1)1n x1b(1)10 a(1)22 . . . a(1)2n x2b(1)2. . . . . . . = .0 0 . . a(n-1)n-1n x n-1b(n-1)n-10 0 . . . a(n)nn x n b(n)n简记为:A(n) x = b(n)最后从方程组的最后一个方程进行回代求解为:X n = b(n) / a(n)nnX i = ( b(k)k - a(k)kj x j ) / a(k)kk以上为高斯消去法的基本过程。
用gauss消去法求解大型稀疏方程组的改进算法高斯消去法是一种用于求解线性方程组的经典方法,但是当方程组很大且稀疏时,高斯消去法的效率会变得非常低。
为了解决这个问题,可以采用一种改进算法,称为稀疏高斯消去法。
稀疏高斯消去法的基本思想是利用方程组的稀疏性质,尽量减少计算的量,以提高求解效率。
在讲解稀疏高斯消去法之前,我先介绍一下稀疏矩阵。
稀疏矩阵是指矩阵中绝大多数元素为零的矩阵。
在实际问题中,很多矩阵都是稀疏的,例如线性方程组的系数矩阵。
稀疏矩阵通常具有以下两个特点:1)非零元素的数量相对于矩阵的总元素数量来说很小;2)非零元素的位置分布比较随机。
在稀疏高斯消去法中,主要有两个改进步骤:1)稀疏高斯消元;2)回代求解。
1)稀疏高斯消元稀疏高斯消去法的第一步是进行稀疏高斯消元。
在传统的高斯消去法中,我们需要对每一行中的所有元素进行高斯消去,这样做的复杂度是O(n^3)。
而在稀疏高斯消去法中,我们只对非零元素所在的行进行高斯消去。
这样可以大大减少计算量。
具体来说,稀疏高斯消元的做法是,首先找到第一个非零元素所在的行,然后对该行进行消去操作,将该行前的元素都变为零。
然后再找到下一个非零元素所在的行,对该行进行消去操作,以此类推,直到所有的非零元素都被消为零。
2)回代求解稀疏高斯消去法的第二步是进行回代求解。
在进行稀疏高斯消元的过程中,我们已经将方程组化简为上三角形式,即矩阵的下半部分都是零。
这样,在进行回代求解时,我们只需要从最后一行开始,逐行求解即可。
而不需要对每一行的所有元素进行回代。
总结一下,稀疏高斯消去法的改进算法可以通过两个步骤来减少计算量:稀疏高斯消元和回代求解。
首先,通过精确地找到非零元素的位置,并只对这些行进行消去操作,减少计算量。
然后,在回代求解时,只处理上三角矩阵的非零元素。
这样一来,可以大大提高求解大型稀疏方程组的效率。
当然,稀疏高斯消去法也有其局限性。
由于稀疏高斯消去法需要寻找非零元素的位置,如果矩阵的非零元素位置分布比较密集,那么稀疏高斯消去法的效率就会降低。