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

简介:        上一篇文章讲述了Ax=0的解和矩阵A的零空间,这里我们讨论Ax=b的解以及矩阵A的列空间。        Ax=0是肯定有解的,因为总存在x为全零向量,使得方程组成立。
        上一篇文章讲述了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





目录
相关文章
|
4月前
|
开发工具 开发者
HarmonyOS NEXT实战:接入微信SDK
本教程介绍如何在HarmonyOS Next中集成微信开放SDK,实现微信登录与数据交互功能。内容涵盖应用配置、SDK依赖设置、模块与构建修改、工具类添加及常见问题处理,适用于教育场景下的开发者学习与实践。
225 0
|
机器学习/深度学习 数据可视化 计算机视觉
轻量化Backbone | 如何改进MobileViT-v1与MobileViT-v2?MobileViT-v3带你实验
轻量化Backbone | 如何改进MobileViT-v1与MobileViT-v2?MobileViT-v3带你实验
1106 0
轻量化Backbone | 如何改进MobileViT-v1与MobileViT-v2?MobileViT-v3带你实验
|
机器学习/深度学习 编解码 计算机视觉
YOLOv8改进 | 主干篇 | SwinTransformer替换Backbone(附代码 + 详细修改步骤 +原理介绍)
YOLOv8改进 | 主干篇 | SwinTransformer替换Backbone(附代码 + 详细修改步骤 +原理介绍)
1356 0
|
12月前
|
Java 数据库连接 Maven
springBoot:项目建立&配置修改&yaml的使用&resource 文件夹(二)
本文档介绍了如何创建一个基于Maven的项目,并配置阿里云仓库、数据库连接、端口号、自定义启动横幅及多环境配置等。同时,详细说明了如何使用YAML格式进行配置,以及如何处理静态资源和模板文件。文档还涵盖了Spring Boot项目的`application.properties`和`application.yaml`文件的配置方法,包括设置数据库驱动、URL、用户名、密码等关键信息,以及如何通过配置文件管理不同环境下的应用设置。
891 1
|
算法 5G
什么是大规模 MIMO?
【8月更文挑战第24天】
741 0
|
人工智能 自然语言处理 机器人
AI心语:智能时代的情感纽带
本文旨在探索人工智能在情感计算领域的应用,以及这些技术如何帮助我们更好地理解和模拟人类情感。通过分析当前的技术进展和面临的伦理挑战,文章为读者提供了一个关于AI与情感结合世界的全面视角。
934 6
|
12月前
|
存储 数据采集 监控
CDGA\如何建立实现数据治理的效率价值框架:实践案例解析
数据治理是一个持续优化的过程。组织应建立健全的监督与评估机制,定期对数据治理工作进行评估,发现问题及时整改。广东药科大学通过数据全景图和数据监控大屏,实现了对数据治理成果的动态、多维度呈现与监控,为科学管理决策提供了有力支撑。
|
C++ 索引
C++数组、vector求最大值最小值及其下标
C++数组、vector求最大值最小值及其下标
528 0
|
存储 ice 索引
经验大分享:PJSUA2开发文档
经验大分享:PJSUA2开发文档
567 0