上一期链接:https://blog.youkuaiyun.com/axehead/article/details/105626675
参考资料:
数值分析教程 刘长安 西北工业大学出版社
数值计算方法 黄云清 科学出版社
数值分析简明教程 王能超 高等教育出版社 第二版
高斯消元
高斯消元的思想其实 我们在中小学的时候就已经接触过,比如给出一个二元一次方程组,我们先将某一个方程乘以一个数,使得这个方程与剩下的方程相加后能消去某一个元,从而得解。
对于一般的方阵而言(我们下面只讨论方阵,对于其它类型的系数矩阵以后讨论),设有n阶方阵A=(aij)A=(a_{ij})A=(aij),和n维列向量b=(bk),x=(xk)b=(b_{k}),x=(x_{k})b=(bk),x=(xk)组成线性方程组Ax=bAx=bAx=b(x是未知量).下面进行消元,总共分为n-1个步骤,但每一步都是类似的,即第k(1≤k≤1\le k\le1≤k≤ n-1)步就是将第k行的−ajkkakk\frac {-a_{jk}^{k}}{a_{kk}}akk−ajkk倍加到第j(k+1≤j≤nk+1\le j\le nk+1≤j≤n)行,其中ajkka_{jk}^{k}ajkk表示的是第k步消元之前系数矩阵A的a(kj)a_(kj)a(kj)元素(之所以加一个上标是为了区分每一步中对应的矩阵,因为每步消元矩阵A中的元素都会变化,同时每一步消元后系数矩阵A对角线上元素除anna_{nn}ann外均不为零).注意!向量b要和A做同步的处理.
这样一来,第k步消元之前的方程组就可以表示为如下形式:
a111x1+a121x2+...+a1n1xn=b11a_{11}^{1}x_1+a_{12}^{1}x_2+\qquad ...+a_{1n}^{1}x_n=b_1^{1}a111x1+a121x2+...+a1n1xn=b11
a222x2+...+a2n2xn=b22\qquad\ \ \ \ \ \ a_{22}^{2}x_2+\qquad ...+a_{2n}^{2}x_n=b_2^{2} a222x2+...+a