[线代笔记]第一章 线性方程组解法

第一章 线性方程组解法

  • 代数学起源于解方程(代数方程)

    • 一元一次、一元二次、一元三次、一元四次都有求根公式(通过系数进行有限次加、减、乘、除、乘方、开方得到解),一元五次以上方程就不再有求根公式了(近世代数)
    • 二元一次方程组、三元一次方程组、……、n元一次方程组(线性代数研究对象)
    • 高等代数——线性代数+多项式理论

1. 线性方程组的同解变形、线性组合、初等变换、消去法

  • 例1

  1. 同解变形:用3种同解变形必可化方程组为阶梯型

    1. 交换两个方程位置
    2. 用非0的数c乘某个方程两边
    3. 用某个方程的k倍加到另一个方程
  2. 线性组合:设是一些方程,称的一个线性组合。(由组成的方程组与同解)
    • 例2

      由于 ,故第个方程是多余的。
  3. 一般,
    m个方程n个未知数的线性方程组,系数是第个方程第个未知数的系数。(数域),此时解也在中。
  • 数域:复数的子集对加、减、乘、除(分母不为0)封闭,称为数域。如

2. 矩阵的有关概念

  1. 上述方程组完全由表决定,

    • 列的数()组成的表,用圆括号(或方括号)限定,称为数域上一个矩阵。
    • 矩阵中各行称为向量行向量),如是一个向量,可看作一行的矩阵。同样的,各列称为列向量
    • 0向量
  2. 矩阵的初等变换必可由初等变换化为阶梯形矩阵,称为方程组的矩阵消元法
    1. 交换两行
    2. 乘某行
    3. 某行k倍加到另一行

3. 解线性方程组的矩阵消元法

  1. 考虑方程组

    系数矩阵增广矩阵

    • 方程组与它的增广矩阵互相唯一决定。
    • 进行初等变换化为阶梯形,再解相应的阶梯形方程组。


    • 解:

      可见阶梯形可以不规则
      改写为
      自由取值为,得解

      其中,称为自由未知量,的原方程的无穷多组解。
    • 命题:设方程组的增广矩阵化为阶梯形后,含个非0行,且最后一个非0行,则方程组有个自由未知量,从而有无穷组解。(称为矩阵:化为阶梯形后的非0行数)
    • 定理1:用初等行变换把增广矩阵化为阶梯形后,记为系数矩阵的秩,为增广矩阵的秩(有),则
      A. 时方程组无解
      此时最后一行无解,表现为的阶梯形中最后一行为
      方程组有解
      B. 时方程组有解
      a. (未知数个数),有无穷组解,此时有个自由未知量
      b. 时有唯一一组解
  2. 通解:设方程组有无穷组解,则有个自由未知量,令
    其中称为方程组的通解
    通解也可写成向量式
  3. 特解:通解中的某个具体的解。
  4. 解集合

4. 齐次线性方程组(右边常数项全为0)

这里只考虑一次齐次方程组

  1. 系数矩阵的秩时必有非0解,时只有0解
  2. 若齐次线性方程组的方程个数(未知数个数),必有非0解。(此时的必有非0解)

?

时间: 2024-12-23 19:07:38

[线代笔记]第一章 线性方程组解法的相关文章

编程之美笔记--第一章游戏之乐--1.2中国象棋将帅问题

后来一版作者又将最后一句改为:”要求在代码中只能使用一个字节存储变量“. 我的解法: package android.zlb.java; /** * * @author zhanglibin * */ public class TestXiangqi { public static void main(String[] args) { for(int i = 11; i < 100; i++) { if(i / 10 % 3 == 1 && (i % 10 == 1 || i % 1

Camel In Action 阅读笔记 第一章 认识Camel 1.1 Camel 介绍

1.1 Camel 介绍 Camel 是一个为了您的项目集成变得高效有趣的集成框架,Camel 项目在2007年初开始的,相对来说它还比较年轻,但它已然是一个非常成熟的开源项目,它所使用的是Apache 2开源License, 其背后的社区非常强大. Camel主要目的就是简化集成,当您用心读完本书以后,您会很感谢Camel并把它做为您的一个必需技能. Apache Camel这个项目之所以命名为Camel的主要原因是因为简单好记,有一个小道说法是项目创建者之一在吸了一个叫"骆驼"牌的

《Hadoop权威指南》笔记 第一章&第二章

? ? ? ? ? ? ? ? ? ? ? ? ? ? 使用MapReduce ? ? ? ? ? ? ? ? import java.io.IOException; // 是hadoop针对流处理优化的类型 import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; // 会继承这个基类 import org.apache

iOS 读书笔记 第一章

1.确定某个实例或类方法是否可用. 1)使用NSObject的类方法instancesRespondToSelector:来确定是否在该类的一个实例中存在一个特定的选择器. NSArray *array = @[@"1",@"2"]; if ([NSArray instancesRespondToSelector:@selector(sortUsingComparator:)]) { //do something use sortUsingComparator: }

深入理解 C 指针阅读笔记 -- 第一章

上周末,我在图书馆看到了这本很薄的书 -- <深入理解 C 指针>       这本书中写的内容,个人感觉适合一个初学者,内容不是很难.我也读了下,对每一章都做了笔记,笔记都是用代码的形式贴出来. Chapter1.h #ifndef __CHAPTER_1_ #define __CHAPTER_1_ /*<深入理解C指针>学习笔记 -- 第一章*/ /*一个数如果是无符号的,那么尽量去选用 size_t 类型*/ /*使用 size_t 类型的时候一定要用对了输出格式*/ voi

《Hadoop权威指南》笔记 第一章&第二章 MapReduce初探

? ? ? ? ? ? ? ? ? ? ? ? ? ? 使用MapReduce ? ? ? ? ? ? ? ? import java.io.IOException; // 是hadoop针对流处理优化的类型 import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; // 会继承这个基类 import org.apache

《Linux Shell脚本攻略》 笔记 第一章:Shell起步基础

<Linux Shell脚本攻略> 笔记 第一章:Shell起步基础 1.变量:在bash中,每一个变量的值都是字符串.无论你给变量赋值时,有没有使用引号,值都会以字符串的形式存储. 2.var=value; //赋值操作 var = value: //相等操作 3.获取字符串的长度 [[email protected] ~]$ var=yang [[email protected] ~]$ length=${#var} [[email protected] ~]$ echo $length

《Java并发变成实践》读书笔记---第一章 简介

<Java并发编程实战>深入浅出地介绍了Java线程和并发,是一本完美的Java并发参考手册.书中从并发性和线程安全性的基本概念出发,介绍了如何使用类库提供的基本并发构建块,用于避免并发危险.构造线程安全的类及验证线程安全的规则,如何将小的线程安全类组合成更大的线程安全类,如何利用线程来提高并发应用程序的吞吐量,如何识别可并行执行的任务,如何提高单线程子系统的响应性,如何确保并发程序执行预期任务,如何提高并发代码的性能和可伸缩性等内容,最后介绍了一些高级主题,如显式锁.原子变量.非阻塞算法以及

《深入理解Java虚拟机》读书笔记---第一章 走进Java

一.为什么要读此书 <深入理解Java虚拟机>这本书读了很多次,每次读都会有不一样的感受.首先说一下为什么要读这本书,如果把Java比喻成乾坤大挪移,那了解虚拟机的工作原理就是练习九阳神功,java语言是招式,对虚拟机的认识是内功心法,只有内功心法强大,所使的招式才强大,这就是为什么阳顶天只能把乾坤大挪移练到第四层,而张无忌能练到第七层.由于java虚拟机的强大,把很多功能都隐藏了,例如内容管理,垃圾回收机制等,使得很多java程序猿对这一块的知识所有缺失,编码的时候也是似懂非懂的,以至于遇到