一、增广矩阵

 假设我们要求解方程$Ax=b$,其中矩阵$A$和$b$如下所示:

$A = \left[\begin{array}{llll}{1} & {2} & {2} & {2} \\ {2} & {4} & {6} & {8} \\ {3} & {6} & {8} & {10}\end{array}\right]$

$b = \left[\begin{array}{llll}{b_1}\\ {b_2}\\{b_3}\end{array}\right]$

 我们可以在矩阵$A$右侧加上一列b,得到:

$\left[\begin{array}{llll}{1} & {2} & {2} & {2} & {b_1} \\ {2} & {4} & {6} & {8}& {b_2} \\ {3} & {6} & {8} & {10}& {b_3}\end{array}\right]$

此即为增广矩阵:即A和b一块二考虑

二、可解性

 方程$Ax=b$可解的条件是:当$b$属于$A$的列空间( C(A) )时,也就是$b$是$A$的列向量的线性组合

 换一种说法:如果矩阵$A$各行的线性组合得到零,那么$b$分量执行相同的操作也必须得到零向量(参考上面的矩阵$A$)

 只有$b$满足了上面的条件,方程才有解

三、求$Ax=b$所有解

 第一步:求一个特解

  将所有自由变量设为0

  我们将增广矩阵进行消元后:

$\begin{array}{l}{\left[\begin{array}{}{1} & {2} & {2} & {2} & {b_{1}} \\ {0} & {0} & {2} & {4} & {b_{2}-2 b_{1}} \\ {0} & {0} & {0} & {0} &{b_{3}-b_{2}-b_{1}}\end{array}\right]} \\ {} \end{array}$

  方程有解的条件便是:$O=b_{3}-b_{2}-b_{1}$,假设$b=\left[\begin{array}{l}{1} \\ {5} \\ {6}\end{array}\right]$,则消元矩阵为:

$\begin{array}{l}{\left[\begin{array}{}{1} & {2} & {2} & {2} & {1} \\ {0} & {0} & {2} & {4} & {3} \\ {0} & {0} & {0} & {0} &{0}\end{array}\right]} \\ {}\end{array}$

  然后求出主变量:

   针对上面的例子,$x_2, x_4 = 0$,则求主变量过程简化为:

$x_{1}+2 x_{3}=1$
$2 x_{3}=3$

   于是一个特解为:$x_p = \left[\begin{array}{c}{-2} \\ {0} \\ {3/2} \\ {0}\end{array}\right]$

  还记得07)节中的零空间吗?可以去看看,于是我们的通解为:即特解和零空间(在假设的$b$的情况下)

$X = \left[\begin{array}{c}{-2} \\ {0} \\ {3/2} \\ {0}\end{array}\right]+C_{1}\left[\begin{array}{c}{-2} \\ {1}\\ {0} \\ {0}\end{array}\right]+ C_{2}\left[\begin{array}{c}{2} \\ {0} \\ {-2} \\ {1}\end{array}\right]$

注意:这里的特解是与$b$的值相关的

  那么为什么这样的组合可以组成方程的通解呢?原因如下:

$Ax_p = b$

$Ax_n = 0$

两者相加:$A(x_p + x_n) = b$

其中$x_p$是$b$给定下的特解,$x_n$是零空间,所以通解就是特解加零空间

  也就是:

四、秩(Rank)

 矩阵的秩等于矩阵的主元数。如果矩阵的秩为r,则必有r<=m且r<=n,下面讨论满秩(full rank)的情形:

 列满秩:r=n。每列都有主元,x的每一个分量都是主变量,没有自由变量。零空间N(A)之内只有零向量。方程无解或者有唯一解,如下

  为何列满秩时,零空间N(A)之内只有零向量?因为之前我们讲过零空间定义,该实例中满足$Ax=0$的$x$只有零向量,该实例中的列向量的线性组合无法得到零向量,所以列满秩时,零空间N(A)之内只有零向量。而该实例方程的通解就只剩下特解了,而特解取决于$b$,只有$b$正好是$A$列的线性组合时,方程才有唯一解

$A=\left[\begin{array}{ll}{1} & {3} \\ {2} & {1} \\ {6} & {1} \\ {5} & {1}\end{array}\right] \rightarrow\left[\begin{array}{ll}{1} & {0} \\ {0} & {1} \\ {0} & {0} \\ {0} & {0}\end{array}\right]=R$

 行满秩:r=m。每行都有主元,无论b取何值,方程Ax=b都有解。主变量r个,自由变量n-r个,如下

$A=\left[\begin{array}{llll}{1} & {2} & {6} & {5} \\ {3} & {1} & {1} & {1}\end{array}\right] \rightarrow\left[\begin{array}{llll}{1} & {0} & {*} & {*} \\ {0} & {1} & {*} & {*}\end{array}\right]=R$

 满秩r=m=n,矩阵可逆。零空间只有零向量,无论b取何值,方程$Ax=b$都有唯一解

$A=\left[\begin{array}{ll}{1} & {2} \\ {3} & {1}\end{array}\right] \rightarrow\left[\begin{array}{ll}{1} & {0} \\ {0} & {1}\end{array}\right]=R$

 综上:秩决定了方程组解的数量

08-求解Ax=b:可解性和解的结构的更多相关文章

  1. 介绍求解AX=b:可解性与解的结构

    前面用高斯消元法或矩阵LU分解求解线性方程组的解,主要是针对有唯一解(矩阵A可逆)的情况,下面进一步介绍线性方程组有多个解的情况下,解的求解.

  2. 求解Ax=b

    一 线性方程组 Ax=b 的解释 线性方程组 Ax=b,其中矩阵 A 尺寸为 m*n, 当 A 为方正时,可使用消元法判断解是否存在并求解.当 A 为长方形矩阵时,同样可使用消元法判断解存在情况并求解 ...

  3. 2021.08.09 P5658 括号树(树形结构)

    2021.08.09 P5658 括号树(树形结构) [P5658 CSP-S2019] 括号树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 太长,在链接中. 分析及代码 ...

  4. 2021.08.09 P5018 对称二叉树(树形结构)

    2021.08.09 P5018 对称二叉树(树形结构) [P5018 NOIP2018 普及组] 对称二叉树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 求一棵子树,关 ...

  5. 2021.08.06 P2441 角色属性树(树形结构)

    2021.08.06 P2441 角色属性树(树形结构) P2441 角色属性树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 求离x最近的祖先y且(x,y)>1. ...

  6. MIT线性代数:8.求解Ax=b,可解性和结构

  7. matlab 求解 Ax=B 时所用算法

    x = A\B; x = mldivide(A, B); matlab 在这里的求解与严格的数学意义是不同的, 如果 A 接近奇异,matlab 仍会给出合理的结果,但也会提示警告信息: 如果 A 为 ...

  8. python求解ax² + bx + c = 0

    系数需满足条件: a,b不能同时为0 b2-4ac≠0 代码如下def quadratic(a, b, c): """ 返回ax² + bx + c = 0的 " ...

  9. MIT线性代数:7.主变量,特解,求解AX=0

随机推荐

  1. (42)嵌入式项目中常用到的C语言技能总结

    嵌入式项目中常用到的C语言技能 1.指针 .结构体. 枚举. 联合.数组.字符串.链表七个专题 2.结构体指针.结构体的多重嵌套[结构体中嵌套结构体.结构体中嵌套枚举.联合体.结构体中嵌套函数指针.一 ...

  2. [洛谷P5106]dkw的lcm:欧拉函数+容斥原理+扩展欧拉定理

    分析 考虑使用欧拉函数的计算公式化简原式,因为有: \[lcm(i_1,i_2,...,i_k)=p_1^{q_{1\ max}} \times p_2^{q_{2\ max}} \times ... ...

  3. Oracle Fetch子句

    Oracle Fetch子句 作者:初生不惑 Oracle基础 评论:0 条 Oracle技术QQ群:175248146 在本教程中,将学习如何使用Oracle FETCH子句来限制查询返回的行数. ...

  4. 使用@Test报java.lang.NullPointerException at org.eclipse.jdt.internal.junit4.runner.SubForestFilter.shouldRun(SubForestFilter.java:81)异常

    对公司的项目进行二次开发时,在调试过程中用到@Test注解,运行使发现控制台报空指针异常,如图: 参考网上相应资料后,删除项目中自带的Junit4.jar,然后使用eclipse开发工具自带的Juni ...

  5. SQL字串截取函数编写及应用

    SQL里面一种用来截取字符串的方法,用的是表函数实现字符串截取并应用的SQL操作语句中. .截取字符串表函数 ALTER FUNCTION [dbo].[SplitToTable] ( -- Add ...

  6. [Codeforces 274E]:Mirror Room(模拟)

    题目传送门 题目描述 有一个$n\times m$的格子图,其中有一些是黑色的,另一些为白色.从某个白色格子的中心点向左上($NW$),左下($SW$),右上($NE$),右下($SE$)四个方向中的 ...

  7. wap开发tips

    1.overflow-x 这真的是一个大坑,一旦你在body或者html上用了这个属性,对不起,如果你的页面出现滚动条的话,那就会出现莫名其妙的bug,滑动页面的时候fix在顶部或者底部的会挡住. 解 ...

  8. rime 同文输入法 安卓系统

    下载安装APP 从google play下载同文输入法 默认安装完只有3个输入法, 没有五笔和拼音 [官网][https://rime.im/download/] 获取五笔拼音方案 然后找到 /sdc ...

  9. C\C++语言中的宏多重展开和递归展开

    宏定义中的#,## 1. 宏中的参数前面使用一个#,预处理器会把这个参数转换为一个字符数组     2.记号粘贴操作符(token paste operator): ##            “## ...

  10. VUE Right-hand side of ‘instanceof’ is not an object 解决方案

    这里要注意一下, props之前没注意写成了   props: {     wrd: '',       sname:'zs'   },   这样是不能被解析成object的,所以一定要写的更具体一点 ...