两个方程叠加一般可以消去一个元。类似的,对于一个N*N线性方程组,N个方程叠加,理应存在N个叠加系数,使得叠加后消去N-1个元,那么这些系数是怎么样的呢?如果能得到这些系数,就可以直接叠加N个方程,得到只含一个元的一次方程(因已消去N-1个元),这样,对每个未知元,都可以通过这个叠加变成仅含该元的一次方程,从而获得解。下面讨论这些叠加系数应满足的条件。设N*N的方程如下:
a(1,1)*x(1)+a(1,2)*x(2)+…+a(1,n)*x(n)=b(1) (1)
a(2,1)*x(1)+a(2,2)*x(2)+…+a(2,n)*x(n)=b(2) (2)
…………………………………………………………
a(n,1)*x(1)+a(n,2)*x(2)+…+a(n,n)*x(n)=b(n) (n)
我们假设消去N-1个元后剩下的未知数为x(i),叠加系数分别为c(i,1),c(i,2),…,c(i,n)。那么叠加后的方程为:c(i,1)*(1)
+c(i,2)*(2) +…+c(i,n)*(n)。即:
[c(i,1)*a(1,1)+c(i,2)*a(2,1)+…+c(i,n)*a(n,1)]x(1)
+[c(i,1)*a(1,2)+c(i,2)*a(2,2)+…+c(i,n)*a(n,2)]x(2)
+……………………………………………………
+[c(i,1)*a(1,i)+c(i,2)*a(2,i)+…+c(i,n)*a(n,i)]x(i)
+…………………………………………………
+[c(i,1)*a(1,n)+c(i,2)*a(2,n)+…+c(i,n)*a(n,n)]x(n)
=c(i,1)*b(1) +c(i,2)*b(2) +…+c(i,n)*b(n)
按要求,除x(i)的系数不为零之外,其他未知数的系数应该为零,另外,考虑到叠加系数全部乘上一个非零常数之后的效果一样,于是可假设x(i)的系数为1,于是:
c(i,1)*a(1,1)+c(i,2)*a(2,1)+…+c(i,n)*a(n,1)=0
c(i,1)*a(1,2)+c(i,2)*a(2,2)+…+c(i,n)*a(n,2)=0
…………………………………………………
c(i,1)*a(1,i)+c(i,2)*a(2,i)+…+c(i,n)*a(n,i)=1
…………………………………………………
c(i,1)*a(1,n)+c(i,2)*a(2,n)+…+c(i,n)*a(n,n)=0
这样相当于一个N*N的线性方程组,它仅跟原方程的系数矩阵A={a(i,j)}有关,对每个i,都对应于这样一个向量{c(i,j),j从1到n},这些向量(共N个)可以组成一个新的矩阵C={c(i,j)},不难知道,C的第i行乘以A的第j列刚好是delta符号:δ(i,j)(i等于j时为1,i不等于j时为0),其实就是说:CA=E为单位矩阵。于是,C就是A的逆矩阵。
从上面的分析指导,求叠加系数的结果归结为求系数矩阵的逆。求出叠加系数后,很容易写出:x(i)=c(i,1)*b(1)
+c(i,2)*b(2)
+…+c(i,n)*b(n)。Gauss-Jordan消去法就是用来求C,即系数矩阵的逆的一种方法,由于求C相当于解N个线性方程组,而且这些方程组的系数矩阵都一样,于是可以Gauss消去法变系数矩阵为上三角阵之后,继续消元,变成对角阵,再分别求解即可,右端的N个向量可以同时计算。
Gauss-Jordan消去法原理:为若[A E]可以通过初等行变换变为[E
C],则C与A互逆。证明是很简单的,注意到矩阵的初等行变换相当于左乘一个初等矩阵P,所以P[A E]=[E
C],即PA=E,PE=C,于是CA=E,即C与A互逆。