高斯消元法解方程

来源:互联网 发布:中国周边外交战略优化 编辑:程序博客网 时间:2024/06/02 23:19

  高斯消元法可用来找出下列方程组的解或其解的限制:  2x + y - z = 8 (L1)  -3x - y + 2z = -11 (L2)  -2x + y + 2z = -3 (L3)  这个算法的原理是:  首先,要将L1 以下的等式中的x 消除,然后再将L2 以下的等式中的y 消除。这样可使整毎方程组变成一个三角形似的格式。之后再将已得出的答案一个个地代入已被简化的等式中的未知数中,就可求出其余的答案了。  在刚才的例子中,我们将3/2 L1和L2相加,就可以将L2 中的x 消除了。然后再将L1 和L3相加,就可以将L3 中的x 消除。  我们可以这样写:  L2 + 3/2 L1 -> L2  L3 + L1 -> L3  结果就是:  2x + y - z = 8  1/2 y + 1/2 z = 1  2y + z = 5  现在将 − 4L2 和L3 相加,就可将L3 中的y 消除:  L3 + -4 L2 -> L3  其结果是:  2x + y - z = 8  1/2y + 1/2z = 1  -z = 1  这样就完成了整个算法的初步,一个三角形的格式(指:变量的格式而言,上例中的变量各为3,2,1个)出现了。  第二步,就是由尾至头地将已知的答案代入其他等式中的未知数。第一个答案就是:  z = -1  然后就可以将z 代入L2 中,立即就可得出第二个答案:  y = 3  之后,将z 和y 代入L1 之中,最后一个答案就出来了:  x = 2  就是这样,这个方程组就被高斯消元法解决了。  这种算法可以用来解决所有线性方程组。即使一个方程组不能被化为一个三角形的格式,高斯消元法仍可找出它的解。例如在第一步化简后,L2 及L3 中没有出现任何y ,没有三角形的格式,照着高斯消元法而产生的格式仍是一个行梯阵式。这情况之下,这个方程组会有超过一个解,当中会有至少一个变量作为答案。每当变量被锁定,就会出现一个解。  通常人或电脑在应用高斯消元法的时候,不会直接写出方程组的等式来消去未知数,反而会使用矩阵来计算。以下就是使用矩阵来计算的例子:  2 1 -1 8  -3 -1 2 -11  -2 1 2 -3  跟着以上的方法来运算,这个矩阵可以转变为以下的样子:  2 1 -1 8  0 1/2 1/2 1  0 0 -1 1  这矩阵叫做“行梯阵式”。  最后,可以利用同样的算法产生以下的矩阵,便可把所得出的解或其限制简明地表示出来:  1 0 0 2  0 1 0 3  0 0 1 -1

  最后这矩阵叫做“简化行梯阵式”,亦是高斯-约当消元法指定的步骤。

 

 

 

以上是解释(由百度提供),下面是跟好理解的(自己创造):

 

1.记忆高斯消元的基本定律时,可以结合以前的解方程方法,以便理解。

2.注意高斯消元和阶行列式的区别(好像区别也不大)

3.高斯消元的步骤(自我理解的):

  1.找到第i列中不为零的那一行j,要求j>=i

  2.交换第i行和第j行。

  3.将第i行以下的每一行k的第l个数都减去f[i,l]*(a[i,j]/a[k,j])

  4.此时已经形成下三角,可以用hyc的比较差的方法迭代求解,或者如果没有自由元的话,可以用行列比求解,d/d[i]即为x[i]的解。

 

 

自认为比较清晰,程序太多了,就发不上来了。

原创粉丝点击