【线性代数】线性方程组的求解「建议收藏」

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

大家好,又见面了,我是全栈君。

       
上一篇文章讲述了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


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115720.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jenkins怎么配置JVM(java exception)

    简单来说,java.lang.OutOfMemoryError:GCoverheadlimitexceeded发生的原因是,当前已经没有可用内存,经过多次GC之后仍然没能有效释放内存。

    2022年4月12日
    326
  • vue文件上传功能_vue如何自定义组件

    vue文件上传功能_vue如何自定义组件vue的文件上传组件upload,拥有支持多种格式文件上传,单文件多文件等都支持,许多项目现在都少不了文件上传功能,但是vue的upload组件如果直接引用,肯定也有一些不方便之处,有的时候需要传参数,需要手动触发上传方法,而不是选择了文件就上传,所以结合我项目实例,写一vue自定义文件上传的实现,包括前端和后台的处理以及参数的接收。一、先认识一下vue的upload组件,官网链接ht…

    2022年8月15日
    7
  • CLion 激活码 2021 8月(JetBrains全家桶)「建议收藏」

    (CLion 激活码 2021 8月)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~1STL5S9V8F-eyJsaWNlbnNlSWQiOi…

    2022年3月27日
    99
  • 黑客编程入门 之 网络编程入门

    黑客编程入门 之 网络编程入门网络编程入门前言Socket技术详细介绍Socket编程所需函数前言  “任何职业都可以成为黑客。你可以是一个木匠黑客。不一定是高科技。只要与技能有关,并且倾心专注于你正在做的事情,你就可能成为黑客。”——引自《黑客伦理与信息时代精神》  在这里引入黑客定义就是想提醒自己和大家,真正的黑客精神:Open,Free,Share,热衷共享最新研究。时刻谨记黑客精神,不要现在盛行的”ScriptKid”(专指只会使用现成软件进行攻击以取得满足感的,危害网络空间安全的人)。希望大家都能够为网络环境贡献自

    2022年6月18日
    39
  • C++进制转换模板

    C++进制转换模板do{ num[i++]=n%radix; n/=radix;}while(n!=0);

    2022年7月19日
    18
  • Python创建容器和集合之源码分析

    _collections_abc.py文件中提供了许多抽象基类,这些类将集合分解成许多互相独立的属性集__all__=["Awaitable","Coroutin

    2021年12月19日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号