高斯消元法(一):简介

来源:互联网 发布:centos 6.8安装cacti 编辑:程序博客网 时间:2024/06/03 05:16

高斯消去法

       高斯消去法主要用于求解线性方程组的解,但由于算法相对复杂,因此常用于低阶稠密方程组(个人理解稠密即为方程组中的系数项为0的个数少,也就是系数矩阵A零元素的个数少,反之则为稀疏方程组)。

如已知一个n元n次的方程组,代数形式即可写成如下形式:


 

我们可以将其转化为矩阵形式(Ax=b),其中A为系数矩阵,如下:


 

基本思想:

       首先通过逐次消元法将Ax=b化为等价的上三角形方程组(即系数矩阵A中对角线以下的元素都为0),再求解这个上三角的方程组。(个人认为这个高斯消去法最大的好处是可以在计算机上实现,方便编程。)


STEP1: 首先通过消元过程将上面这个矩阵方程转换为下面这个形式的上三角方程组(此过程称为消元过程):



这样的话,第n个方程就变为了,从而计算机只需要一步除法即可求出x(n)的值。

而在它上一行方程(第n-1个方程)为:


将上一步求出的Xn带入此式,即可求出x(n-1),

再将x(n)和x(n-1)带入第n-2个式子,即可求出x(n-2),照此方法即可一路求到x1,最终求出方程组的所有解。

此过程称为“回代过程”。



这里,回代过程并没有什么可说的,只需要从下至上一步一步赋值计算即可,代码部分也很好实现。

而高斯消去法的主要过程在消去过程部分,即将方程转化为等价的上三角方程组,在这个过程中不同的运算方法可能会导致不同的结果,一方面要考虑最终求解的误差,另一方面又要考虑代码实现的可行性及复杂度,从而会衍生出很多改进型的高斯消去算法。常见有:列(行)主元法、全主元法、LU分解法、平方根法、追赶法等......




原创粉丝点击