《Linear Algebra and Its Application》-chaper1-行化简法解决线性方程组
在实际生产生活中,需要我们解大量的线性方程组,例如是有探测、线性规划、电路等,这里我们便从理论角度建立一套解决线性方程组的体系。
线性方程组:
形如下面形式的方程组称为线性方程组。

回想起解决二元线性方程组我们的处理方法,本质上就是高斯消元法的个例,在解决多元线性方程组的时候,我们使用的便是高斯消元法.
探求线性方程组的解情况以及解线性方程组是线性代数核心要解决的问题。
然而为了更好的简化运算过程,我们确定每个方程中xi的位置,仅仅关注线性方程组的系数,因此这里自然的引入的矩阵:

这里我们便完成了一步简单但是非常重要的工作,系数矩阵的引入将线性方程组的运算放在了矩阵运算,于是研究线性方程组的解法就和矩阵的一系列性质变得密不可分。

矩阵的行初等变换是高斯消元算法的基础。结合上文关于矩阵的引入,我们要时刻关注另外的一个视角看矩阵——它表征一个线性方程组。容易看到,对于线性方程组做出上述的三个变化,线性方程组的解空间是没有发生变化的,因此矩阵本身表征的意义就没有发生变化。
既然引入了工具,就应该更好的为我们用高斯消元解线性方程组做出更好的铺垫。我们再来看几个概念:

(注:这里的先导元素指的是每一行第一个非零元素。)
依然从线性方程组的角度审视这个阶梯型矩阵,我们看到,再次将其转化成线性方程组的时候,线性方程组变得非常容易解,对于有解的情况,我们能够从最下面一行确定1个变量,然后依次向上确定其余变量值,不仅如此,在阶梯型矩阵的基础上,判断是否有解也十分方便,具体如何判断将在后面详细给出。

最简阶梯型矩阵的意义与阶梯型矩阵一致,但计算上会带来一定的便捷,因此在后面处理线性方程组的时候,采取的策略都是将线性方程组的增广矩阵通过行初等变换变成最简阶梯型矩阵。
上文我们说对于一个线性方程组的增广矩阵,基于它的最简阶梯型形式,非常容易得到解集,因此下面很有必要做的工作就是,如何将一个矩阵化简成最简行阶梯型矩阵。
为了论述的方便,首先给出下面关于主元位置、主元列的定义:

这是我们再以线性方程组的角度审视最简阶梯型矩阵,将主元位置的变量视为基本变量,其余位置的变量视为自由变量,我们就可以将线性方程组的解系表达出来。

基于最简阶梯型矩阵,容易得到如下的关于线性方程组的解情况的定理。

不谈严谨的充要性证明我们简单的理解,依然用线性方程组的角度去审视最简阶梯型矩阵,如果最右侧是主元列,则出现0=1的情况,显然无解。而对于有解的两种情况,其正确性也很显然。
综合一下上面论述的内容,我们得到了下面应用行化简算法解线性方程组的算法:
Step1:写出方程组的增广矩阵。
Step2:应用航化简算法把增广矩阵化为阶梯型,确定方程组是否有解,如果没有解则停止,否则进行Step3.
Step3:继续行化简算法得到它的简化阶梯型。
Step4:写出Step3所得到的矩形所对应的方程组。
Step5:把Step4所得的每个方程改写为用自由变量表示基本变量的形式。
至此,我们较为初级的解决了线性方程组的求解问题,在后面随着对矩阵认识的深入,对于判断线性方程组的解情况,会有一种基于矩阵的秩的方法。
《Linear Algebra and Its Application》-chaper1-行化简法解决线性方程组的更多相关文章
- 「2020-2021 集训队作业」Yet Another Linear Algebra Problem(行列式,Binet-Cauchy 公式)
题面 出题人:T L Y \tt TLY TLY 太阳神:Tiw_Air_OAO 「 2020 - 2021 集 训 队 作 业 」 Y e t A n o t h e r L i n e a r A ...
- 《Linear Algebra and Its Applications》-chaper1-向量方程、矩阵方程和线性方程组
向量: 向量的基本运算:向量的运算最基本的一件事情,就是基于它n个分量上进行,即对于两个分量的向量a = <a1,a2>,b = <b1,b2>,有a + b = <a1 ...
- 线性代数导论 | Linear Algebra 课程
搞统计的线性代数和概率论必须精通,最好要能锻炼出直觉,再学机器学习才会事半功倍. 线性代数只推荐Prof. Gilbert Strang的MIT课程,有视频,有教材,有习题,有考试,一套学下来基本就入 ...
- 个案排秩 Rank (linear algebra) 秩 (线性代数)
非叫“秩”不可,有秩才有解_王治祥_新浪博客http://blog.sina.com.cn/s/blog_8e7bc4f801012c23.html 我在一个大学当督导的时候,一次我听一位老师给学生讲 ...
- PYTHON替代MATLAB在线性代数学习中的应用(使用Python辅助MIT 18.06 Linear Algebra学习)
前言 MATLAB一向是理工科学生的必备神器,但随着中美贸易冲突的一再升级,禁售与禁用的阴云也持续笼罩在高等学院的头顶.也许我们都应当考虑更多的途径,来辅助我们的学习和研究工作. 虽然PYTHON和众 ...
- 线性代数 -- Linear Algebra with Applications
@.如果线性方程组无解,则称该方程组是不相容的(inconsistent). @.如果线性方程组至少存在一个解,则称该方程组是相容的(consistent). @.等价方程组(equivalent s ...
- Here’s just a fraction of what you can do with linear algebra
Here’s just a fraction of what you can do with linear algebra The next time someone wonders what the ...
- MFC用串行化实现文档存储和读取功能
在面向对象的程序设计中,一般都是用二进制文件来保存文档资料.在VC++中控制和使用文件流的方法很多,MFC程序设计中常用的有两种方法:用CFile对象存储和读取文件:利用串行化存取文件.其中用CFil ...
- Codeforces Gym101502 B.Linear Algebra Test-STL(map)
B. Linear Algebra Test time limit per test 3.0 s memory limit per test 256 MB input standard input ...
随机推荐
- php 链式操作的实现 学习记录
php 面向对象中实现链式操作的关键部分:调用的方法中返回当前对象 ,从而实现链式操作: <?php namespace commom; class db { public function w ...
- php模拟HTTP协议发送post请求方法
今天用到php模拟http发送post请求记录 代码如下: <?php $url = 'xxxx.com'; $data = 'a=one&b=two'; $data = urlenco ...
- Verilog之event的用法
编写verilog的testbench时,可使用event变量触发事件. event变量声明为: event var; event触发为: ->var; 捕获触发为: @(var); 在mode ...
- Day3 - Python基础3 函数、递归、内置函数
Python之路,Day3 - Python基础3 本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8. ...
- Traceview 性能分析工具
简介 TraceView 是 Android 平台配备一个很好的性能分析的工具.它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到 method.详细内容参考:http://deve ...
- css.day04
1. box 盒子模型 <p> <span> <hr/> <div> css+ div p span css+ xhtml b ...
- js求字符长度
</script> <!DOCTYPE html> <html lang="en"> <head> <meta charset ...
- javaee后台适合用的编辑器插件
http://pan.baidu.com/s/1bn7D9sr 这个适合用在后台
- css标签选择器
/*标签选择器*/ input[type="text"] { width: 60%; } </style>
- 关于java中Double类型的运算精度问题(转)
Java Java double:浮点数:精确计算 public class Test{ public static void main(String args[]){ Syst ...