- 1.1.1]--1.0序言
- [1.1.2]--1.1概述
- [1.1.3]--1.2线性方程组解的几何意义
- [1.2.1]--1.3高斯消元法与阶梯形方程组
- [1.2.2]--1.4矩阵及矩阵的初等变换
- [2.1.1]--1.MATLAB初步
- [2.1.2]--2.MATLAB赋值(A)
- [2.1.3]--3.MATLAB赋值(B)
- [2.2.1]--1.5用MATLAB解方程组(A)
- [2.2.2]--1.5用MATLAB解方程组(B)
- [2.2.3]--1.6应用实例(1)
- [2.2.4]--1.6应用实例(2)
- [3.1.1]--2.1.1-2矩阵的加法与数乘
- [3.2.1]--2.1.3矩阵的乘法(1)
- [3.2.2]--2.1.3矩阵的乘法(2)
- [3.2.3]--2.1.3矩阵的乘法(3)
- [3.3.1]--2.2矩阵的逆
- [4.1.1]--2.3矩阵的转置和分块
- [4.2.1]--2.4初等矩阵(1)
- [4.2.2]--2.4初等矩阵(2)
- [4.2.3]--2.4.2用初等行变换求逆矩阵
- [4.3.1]--2.5.2LU分解
- [4.3.2]--2.6.1成本核算问题
- [4.3.3]--2.6.2特殊矩阵的生成
- [4.3.4]--2.6.4图及其矩阵标述
- [5.1.1]--1.用MATLAB实现矩阵运算
- [5.1.2]--2.MATLAB元素群运算
- [5.1.3]--3.用MATLAB实现行阶梯变换
- [5.2.1]--1.二阶行列式
- [5.2.2]--2.三阶行列式
- [5.2.3]--3.高阶行列式
- [5.2.4]--4.三种行列式定义的比较
- [6.1.1]--1.行列式的性质
- [6.1.2]--2.行列式的其他性质
- [6.2.1]--1.行列式的计算机算法
- [6.2.2]--2.行列式的应用实例
- [6.3.1]--1.MATLAB的绘图(A)
- [6.3.2]--2.MATLAB的绘图(B)
- [6.3.3]--3.MATLAB的程序文件
- [7.1.1]--1.电路中的应用
- [7.1.2]--2.力学中的应用
- [7.2.1]--1.用线性代数解简单的信号流图
- [7.2.2]--2.用线性代数计算数字滤波器系统函数
- [7.2.3]--3.用线性代数化简控制系统结构图(参看本慕课介绍页中的视频)
- [7.3.1]--矩阵建模法三步骤
- [8.1.1]--1.替代算信号流图的梅森公式1
- [8.1.2]--2.计算复杂滤波器及MIMO控制系统
- [9.1.1]--1.向量的类型
- [9.1.2]--2.向量及其线性组合
- [9.1.3]--3.向量的几何长度和方向余弦
- [9.2.1]--1.数量积及其应用
- [9.2.2]--2.向量积及混合积
- [9.3.1]--1.向量组的线性相关性的理解与定义
- [9.3.2]--2.向量组线性相关性与方程组解的关系
- [9.3.3]--3.向量组线性相关性的几何意义
- [9.3.4]--4.线性无关向量组与向量空间
- [9.3.5]--5.判断向量组线性相关性的方法
- [10.1.1]--1.从向量空间看适定和欠定方程组的解
- [10.1.2]--2、超定方程组及最小二乘解的几何意义
- [10.1.3]--3、最小二乘解的计算例
- [10.1.4]--4、用MATLAB解线性方程组综述
- [10.2.1]--4.6.1三维空间中的平面方程
- [10.2.2]--4.6.4.混凝土配料中的应用
- [10.2.3]--4.6.5行星轨道参数的估值
- [11.1.1]--1.线性变换的几何意义
- [11.1.2]--2.线性变换与形变
- [11.2.1]--1.用线性变换描述刚体运动
- [11.2.2]--2.基向量改变后的坐标值变化
- [11.3.1]--1.正交坐标系
- [11.3.2]--2.与数据矩阵相连的坐标系
- [12.1.1]--1.qr分解
- [12.2.1]--1.特征值与特征向量
- [12.2.2]--2.方阵高次幂的计算
- [12.2.3]--3.对称方阵及二次型
- [12.3.1]--5.6.1字母阴影投影的生成
- [12.3.2]--5.6.3人口迁徙模型
- [12.3.3]--5.6.5单自由度机械振动
- [13.1.1]--6.5空间解析几何中的应用(A)
- [13.1.2]--6.5空间解析几何中的应用(B)
- [13.1.3]--6.6.测量学中的应用
- [13.2.1]--6.7动漫技术中的应用
- [13.2.2]--6.9.机器人运动学中的应用
- [13.2.3]--6.10文献管理中的应用
- [13.2.4]--6.11经济管理中的应用
- [14.1.1]--1.结束语(1)
- [14.1.2]--2.结束语(2)
- [14.1.3]--3.结束语(3)
线性代数是一门应用性很强,但又在理论上进行了高度抽象的数学学科。它的重要性主要体现在其应用扩大到了愈来愈多的新领域,这种“需求牵引”使它的重要性大大提高;而几十年来计算机软硬件的飞速发展,作为“技术推动”,给以应用作为改革方向的线性代数提供了空前的机遇。美国在1990年提出了线性代数改革的五条建议:(i) 线性代数课程要面向应用,满足非数学专业的需要;(ii) 它应该是面向矩阵的;(iii) 它应该是根据学生的水平和需要来组织的;(iv) 它应该利用新的计算技术;(v) 抽象内容应另设后续课程来讲。1992—1997年他们在大学教师中实施了“用软件工具加强线性代数教学”的ATLAST计划,MIT的G.Strang教授提出了“让线性代数向世界开放”的口号,听他的视频讲座的人数已超过一百万。在中国科技和经济高速发展的今天,普及线性代数也具备了更好的条件。本书就是为从事应用层面的技术人员和高校学生所编写的。
本书的书名反映了它的特色—“实用化”、“现代化”和“大众化”。“实用化”指的是本书以工科的后续课程及未来工程的需求为标准安排内容,附录B和C中列出的60个应用实例表明了本书的实用价值;“现代化”指的是用MATLAB来解决问题,不依靠笔算;“大众化”指的是书中采用了最少、最浅而又足够的理论,使推理能力不太强的学生和有实践经验但多年不接触数学的工程师都能接受,便于向大众普及。
二、改革方向和内容
作者不是数学教师,从1953年起,在机械、控制、电子领域执教了六十多年。1994年退居二线以后,致力于在大学本科教学中推动MATLAB的机算应用。到2004年,作者编写了多本教材[12-14],涉及本科十多门课程数百道例题。作者发现其中三分之一以上是用矩阵模型求解的线性代数问题,而学生对此类模型不熟悉,原因就是线性代数没学好。于是从2005年开始,作者对现有的国内外线性代数大纲和教材进行分析,提出了改革的思路。
传统线性代数的最大弱点是“片面强调理论,脱离机算实践”,作者2005年编写的《线性代数实践及MATLAB入门》[5],主要就是针对这一点进行改革,读者对象是教师。2007年作者与高淑萍、杨威合编了《工程线性代数(MATLAB版)》[6],读者对象是学生。虽然以强化建模和实践为主,但是考虑到学生考研,理论一点也不敢动。2009年高教司指定由作者牵头,19所大学参与,实施了“用MATLAB及建模实践改造工科线性代数”子项,上述两本书就是项目思想的载体。两年中,共有200多名教师、45 000名学生在这项改革中受益,虽然在线性代数中使用计算机已是师生的共识,但传统大纲中的理论占了很多学时,使学生实践受到很大限制,一些学时少的学校的线性代数课处于半取消状态。
为了达到本书编写的目的,在现代化方面主要引进MATLAB软件并贯穿于全书;在实用化方面采用了约50个能覆盖各种应用的实例;在大众化方面做了简化理论的工作,这是最难和最具争议的部分。
想简化理论,就要弄清哪些理论是工科学生必学的。线性代数理论博大精深,一个工科教师犹如井底之蛙,不可能从顶向下地梳理清楚,但可以采用逆向思考的方法,把见过的后续课程和工程中的问题加以归纳,找到其最低限度所需要的理论。凡是后续课程需要的,就讲透;凡是找不到直接需求的,即予删除;凡是能找到简明证法的,均予采纳;有些牵扯太广的就不证了,毕竟工科(特别是应用型、技能型)人才是用数学的,与研究数学的要有区别。
从这些命题中归纳出对理论的需求,反映在本书中,为四方面的重大改革:
(1) 关于行列式的讲法。我们发现,在所有的应用命题中,除了求面积、体积和求特征方程的问题外,没有一个要计算行列式的,这是因为在用消元法解方程时,已经在不知不觉中使用了行列式。用主元连乘法同样可以容易地证明行列式的各种有用的性质,也是软件编程的依据。因此,本书对行列式的其他定义,只用低阶矩阵简述,摆脱了逆序数、代数余子式、伴随矩阵、行列式按行展开等繁琐的数学术语和推导,大大压缩了篇幅,避开了许多“拦路虎”。不讲这些概念,水平就低吗?那要看用不用。对于搞理论的,也许可以练练推公式,但对于搞应用的,水平和创新要体现在建模上。还可以举出两个佐证:一是国际领先的矩阵软件MATLAB中就没有这些术语及其子程序,全世界有几百万用户却都在用它求解大规模、高难度的线性代数问题,说明应用中确实不需要这些概念;二是美国MIT的教材[3]也只通过二、三阶矩阵对此作了简介,深度与本书相当。
(2) 向量空间要讲透三维,减缩n维。帮助大学低年级学生建立立体概念是大学教学计划中的重要一环,为此有制图、画法几何、多变量微积分、物理中场的演示、数学中的场论、电工中的复信号、电机中的旋转磁场等多门课程。线性代数本应该有责任帮助学生建立空间概念,但现有教法却弱化三维,过分强调n维空间。全是公式,没法画图,不利于学生接受。国外的各种面向工科的线性代数的优秀教材,都是以三维空间为主,并且有大量的立体图辅助。本书强调二、三维,使例子形象化,并使图形作为建立概念的重要工具。不是说n维不重要,而是要循序渐进,先感性积累,后理性抽象,一年级学n维太
早了。
(3) 弱化欠定,加强超定。欠定方程组是由于命题条件不足造成的,工程师可以拒绝处理,在强调解的唯一性的数学入门阶段,拿不出基础解的工程实例,学生很难理解其意义,也许只有研究生的数学规划课程才有用,在此让大学新生花很多学时是太超前了。超定方程则是工程上常见的问题,它来源于实践中不可避免的干扰和测量误差,而且正是数学家高斯提出的极漂亮的最小二乘解法,其证明又可加强向量空间概念,国外的教材都讲,只有我国的教材不讲,这是我国线性代数教学脱离工程的表现之一。
(4) 特征根和特征向量对大一学生就有些超前,只有两阶的好懂些,所以只讲到两阶为止,但实数和复数根都要讲。实际上三阶及以上的特征根,手工解是不行的,只有依靠计算机。高阶实二次型不但计算有难度,而且找不到工程应用。而复数特征根却是工程中很有用的,它是理解振动问题的基础,也是学生在日常经验中能够接受的。
用最小的学习成本获得最大的应用效果,这是本书取材的准则。这四项改革是针对以机电信控专业应用为目标的非数学系大学生和工程师提出的理论上的最低要求,不包括线性代数在更深层次和更高水平上的应用。此外,本书力图用工程语言来叙述概念,从具体到抽象,尽量少用数学定义,多用图形等来证明,不过分强调严密。微积分教材有两百年了,有不少适合工科的版本;线性代数历史短,与工科远未磨合好,教材基本上都还是数学系的模式,很难适应非数学系的需求和口味。
钱学森先生在1989年写道:“今后对一个问题求解可以全部让电子计算机去干,不需要人去一点一点算。而直到今天,工科理科大学一二年级的数学课是构筑在人自己去算这一要求上的。……所以理工科的数学课必须改革,数学课不是为了学生学会自己去求解,而是为了学生学会让电子计算机去求解,学会理解电子计算机给出的答案……”。线性代数是数值计算的基础,是最该率先使用计算机的,本书也在朝这个方面努力。希望与读者互动,在学习本书时最好手边有装了MATLAB的计算机。
三、不同类型读者该如何使用本书
(1) 本书的对象首先是在职工程师。三十年前的大学是没有线性代数课的,近三十年来虽然开了课,因不用计算机,多数毕业生没有用过线性代数。对于这上千万的不知道如何用线性代数的庞大群体,需要的是从实用出发来补修。读者可以先翻翻第6章,看看和自己的领域相近的问题,线性代数是怎么用计算机来解决的,觉得有意思了,再下决心把本书从头看起。因为书中讲理论只有前5章,篇幅和难度都不大。
(2) 不以考研为目标的普通大学本科生可以拿本书作为教材,连附录A中“MATLAB的矩阵代数和作图初步”,30学时应该可以拿下来,注意多加一些上机实践。对于学时更少的高专、高职专业,第4、5两章的部分内容也可省略,重点学会用计算机解线性方程组和坐标变换,就能解决后续课及工程中大量的常见实际问题。我国高等教育正面临向职业教育转型的问题,要更多培养应用型、技能型的人才,其关键是课程改革问题,本书希望能为这一转型铺路。
