6.1-6.3 线性系统 & 消元法 & 高斯消元法 & 高斯-约旦消元法
线性系统
什么是线性系统?
==> 方程组
==> 未知数只能是一次方项
非线性方程 ==>
绘制函数图像 ==>
解析几何 ==>
多未知数 绘制三维图形 ==>
消元法
实例 二元一次线性方程组 ==>
实例 三元一次线性方程组 ==>
第二个方程 - 第一个方程的 3倍 ; 第三个方程 - 第一个方程的 两倍==>
解决二元线性系统 ==>
得到z 带入 z ==>
消元法 ==>
- 让一个方程的左右两边同时乘以一个常数
- 让一个方程去加(减)另一个方程
- 交换两个方程的位置
高斯消元法
将线性方程组 ==> 矩阵
丢掉未知数,将系数与结果合为一个矩阵 ==>
因为,其实xyz列向量并没有提供任何有意义的信息。唯一有用的信息,其实只有表示了在这个线性方程组中有几个未知数。
但其实,未知数的数量可以从矩阵的列数来表达。行数则可以表达有几个线性方程。
==> 通过这个 系数矩阵 + 结果矩阵 组成的一个矩阵 就可以表达一个 线性方程。
==> 这个矩阵 称为 增广矩阵。
==> 通过增广矩阵 去还原 之前所作的消元法
==> 1. 将第二行中的第一个元素3 变为 0
==>
==> 2. 将第三行中的第一个元素2 变为 0
==>
==> 3. 将第三行 第二个元素-1 变为 0
==>
==> 4. 将第三行 左右两边同时除以 -15
==>
==> 5. 使用回代法依次解出其他未知数
综上,消元法在矩阵中的运用就变为 ==>
- 矩阵的某一行乘以一个常数
- 矩阵的一行加(减)另一行
- 交换矩阵的两行
有n个未知数就至少有n个方程。
在第一行的第一个元素,第二行的第二个元素,…,第n行的第n个元素 称为 主元Pivot。
消元的过程 ==> 确定主元是谁
举例 二元一次方程 ==> 增广矩阵 ==> 采用高斯消元法
==> 1. 将第一个行的元素化为1 确定主元
==> 2. 将第二行的主元化为 1
==>
举例 三元一次方程 ==> 增广矩阵 ==> 采用高斯消元法
==> 在主元为0的情况下 怎么操作? ==> 交换矩阵的两行
==> 具体交换哪一行呢? ==> 其实都可以,但是在计算机中,计算机会倾向于交换 主元值较大的一行为第一行,从而去尽量避免误差,数值分析。
==>
后续计算同理。
约旦消元法
举例 三元一次方程 ==> 增广矩阵 ==> 采用高斯消元法
==>
==> 在计算到最后一行的主元为1时,高斯消元法就结束了,后续只需要执行依次回代就可以解出。
但依次回代这个过程,在多未知数的过程中是相当繁琐的,那有什么办法可以简化这个过程吗? ==> 约旦消元法
==> 将除了主元之外的其他系数都化为0
==> 与高斯消元法不同,反过来,从最后一行开始,以最后一行的主元为基础,逐步向上去操作 化0
==> 1. 让第二行 + 第三行乘以10
==>
==> 2. 让第一行 - 第三行乘以4
==>
==> 对应的线性方程组
==> 3. 让第一行 - 第二行乘以2
==>
==> 对应的线性方程组
在高斯消元法的基础上,再做一次逆序消元,逐渐将最后一行前面的方程中除了主元之外的其他位置 消去化为0 ==> 高斯-约旦消元法。
前向过程 (从上到下)
- 选择最上行的主元,化为1
- 主元下面的所有行 减去 主元所在行的某个倍数,重复执行这个过程,直到主元下面的所有元素都为0。
反向过程(从下到上)
- 选择最下行的主元
- 主元上面所有行 减去 主元所在行的某个倍数,重复执行这个过程,直到主元上面的所有元素都为0。