首页 > 代码库 > 【线性代数】线性方程组的求解

【线性代数】线性方程组的求解

       上一篇文章讲述了Ax=0的解和矩阵A的零空间,这里我们讨论Ax=b的解以及矩阵A的列空间。

       Ax=0是肯定有解的,因为总存在x为全零向量,使得方程组成立。而Ax=b是不一定有解的,我们需要高斯消元来确定。我们还是利用上一篇讲述了Ax=0的解的矩阵A来举例说明:


我们可以得到上述方程组的增广矩阵(等式右侧不是全零向量,消元时值会改变,所以需要用增广矩阵)如下:


然后我们进行高斯消元可以得到:


从上面的矩阵可以看出,等式成立必须有


我们假设一个满足上面条件的b向量,例如:b=[1 5 1+5];并且令两个自由变量x2=0,x4=0,则我们将消元后的矩阵写成方程组的形式如下:


得到的解为:



Xc是这个方程组的一个特解,因为当X2,X4取不同的值时,会得到不同的特解。那么我们如何得到方程的同解呢?即怎样用一般形式来表示所有的特解?
求解Ax=b的过程:
1、求解特解Xc
2、求解Ax=0的解Xn
Ax=b的解就是特解Xc+Xn,证明如下:

Xc我们上面已经得到,Xn在上一篇文章中得到,则通解可以表示为:


至此,我们就得到了Ax=b的解。
通过上面的分析求解,我们知道当b满足下式时,方程组有解:

实际上,方程有解的条件是向量b属于矩阵A的列空间,即向量b可以表示为矩阵A的各列的线性组合。例如上面的例子:


方程的解就是矩阵A中各列前面的系数。


下面推广到更一般的情况,我们以矩阵A的不同情况来看解的结构(假设矩阵A为m*n的矩阵,秩为r):
1、r=n<m,即列满秩(所有列都有主元)
     由于所有列都有主元,则自由变量的个数为0,矩阵A的零空间中只有零向量。Ax=b的解的个数为0个或者1个.
     举例说明:

  当b=[4 3 6 7]时,Ax=b的唯一解为x=[1 1]。

2、r=m<n,即行满秩(所有行都有主元)
     由于所有行都有主元,消元后不会出现全为0的行,则Ax=b有无穷多解。且自由变量的个数为n-r,矩阵A的零空间中不只有零向量。
     例如:

3、r=m=n,即列、行都满秩(矩阵可逆)
     由于列、行都满秩,则具有列满秩,行满秩的一些性质:零空间只有零向量,方程总有解且解唯一。

4、r<m,r<n,非满秩矩阵


Ax=b有无穷多解或则没有解。

从上面的四种情况的讨论,我们可以总结如下:
如果想看一个线性方程组的解的情况,我们可以通过高斯消元法得到矩阵A的最简形式R,R的可能情况如下:

这四种情况分别对应的解的情况为:
1、唯一解或无解
2、无穷多解
3、唯一解
4、无解或无穷多解

原文:http://blog.csdn.net/tengweitw/article/details/40921003

作者:nineheadedbird





【线性代数】线性方程组的求解