《线性代数实践教师班第二讲幻灯片.ppt》由会员分享,可在线阅读,更多相关《线性代数实践教师班第二讲幻灯片.ppt(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、线性代数实践教师班第二讲第1页,共56页,编辑于2022年,星期一5.1 实验在线性代数中的重要性实验在线性代数中的重要性利用软件工具进行实验有以下的一些好处:好处一:对于低价(三阶及以下)的线性代数问题,MATLAB能提供图形帮助,有利于牢固地掌握概念。好处二:对于高阶的问题,MATLAB能提供计算程序,方便而简捷,节省时间。好处三:由于解题快捷,在课程中可以较多地放进线性代数的应用实例。扩展学生的视野,提高学习的目的性和积极性。第2页,共56页,编辑于2022年,星期一线性代数实践的预期效果所以我们敢于提出本书的标志性特征:所以我们敢于提出本书的标志性特征:线性代数抽象吗?看了本书后,你会
2、知道它线性代数抽象吗?看了本书后,你会知道它的概念都基于空间形象。的概念都基于空间形象。线性代数冗繁吗?学了本书后,你会懂得它线性代数冗繁吗?学了本书后,你会懂得它的计算全可有简明程序。的计算全可有简明程序。线性代数枯燥吗?读了本书后,你会发现它线性代数枯燥吗?读了本书后,你会发现它的应用极其广泛又精彩。的应用极其广泛又精彩。第3页,共56页,编辑于2022年,星期一5.2 解决问题的三种视点线性代数要解的基本方程组是Ax=b其完整矩阵形式为:几百年来,无数数学家和工程师从不同的视点对这个方程进行了研究。归纳起来,根据研究的主要对象为x,A或b,可分成三个方面:第4页,共56页,编辑于2022
3、年,星期一从解联立方程的视点视点1:着重研究解x,即研究线性方程组的解法。中学里做的就是这样,前面介绍的用MATLAB矩阵除法的解也是如此。要点:矩阵的每一行代表一个方程,m行代表m个线性联立方程。n列代表n个变量。如果m是独立方程数,根据mn确定方程是欠定、适定还是超定。对这三种情况都会求解了,研究就完成了。必须剔除非独立方程。行阶梯形式、行列式和秩的概念很大程度上为此目的而建立。本书6,7两章对应于本视点,区别是第6章用行阶梯变换(消元法)而第7章用矩阵运算。第5页,共56页,编辑于2022年,星期一从向量空间中向量合成的视点视点2:把A各列看成n个m维基本向量,线性方程组看成基向量的线性
4、合成要点:解x是这些基向量的系数。它可能是常数(适定方程),也可能成为其中的一个子空间(欠定方程)。要建立其几何概念,并会求解或解空间。第8章对应视点2。第6页,共56页,编辑于2022年,星期一从线性变换(或映射)的视点视点3:把b看成变量看成变量y,着重研究把Rn空间的x变换为Rm空间y 的效果,就是研究线性变换系数矩阵A的特征对变换的影响。要点:就是要找到适当的变换,使研究问题的物理意义最为明晰。特征值问题就是一例。第9章对应于视点3。第7页,共56页,编辑于2022年,星期一学习本课的方法在学习本书之前,对理论结果应已基本掌握。首先着重于对低阶概念的理解,要在二维和三维空间内体会线性代
5、数的定义。结合相应的MATLAB程序,弄清低阶的算法,然后再引伸到高阶方程中去,进一步搞清其算法和程序应有的扩展。对于应用问题,不必全看,可结合自已能理解的问题先看。第8页,共56页,编辑于2022年,星期一5.3 直线和平面的快速绘制程序直线和平面的快速绘制程序平面曲线的快速绘制程序平面曲线的快速绘制程序 ezplot(,a,b)引号中函数可以只有一个自变量,代表显函数ezplot(f(x),a,b)系统将在 a x b的范围内画出 f=f(x)引号中的函数若有两个自变量,那就代表隐函数,其典型格式为ezplot(f(x,y),a,b)系统将在 a x b的范围内画出 f(x,y)=0。a,
6、b的默认值为-2,2第9页,共56页,编辑于2022年,星期一曲线快速绘制举例曲线快速绘制举例(例例5.1)ezplot(x1+0.2*x23+1)画出 在x1=-2,-2的曲线画多条曲线可按下列方法编程s1=x1+0.2*x23+1%方程1s2=3*x1+2*x2+3%方程2ezplot(s1),hold on%画方程1,保持ezplot(s2),grid on%画方程2,加网格x1,x2=solve(s1,s2)%解联立方程1,2第10页,共56页,编辑于2022年,星期一解的结果第11页,共56页,编辑于2022年,星期一解的说明在线性代数中,遇到的都是一次函数,所以不会出现曲线。我们故
7、意用一个三次曲线来说明ezplot的用法,是为了使读者知道,这个命令不限于画直线。MATLAB用solve命令解题是采用了符号运算工具葙,它的数字精度是32位十进制,而不是一般数值计算时的16位十进制。尽管在本题中有两有效数字就够了 第12页,共56页,编辑于2022年,星期一平面的快速绘制命令平面的快速绘制命令ezmeshezmesh(f(x,y),a,b,c,d)可以绘制很多函数的曲面。其第一输入变元可以直接输入用MATLAB语句写出函数的形式,引号中的函数只能是显函数z=f(x,y)中的f(x,y)。它应该有两个自变量,注意要用单引号括起来。第二输入变元为自变量的取值范围,默认情况下其x
8、,y的取值范围都是-2,2。第13页,共56页,编辑于2022年,星期一用用ezmesh快速绘制平面举例快速绘制平面举例可以用以下的程序ag501在一张图内画两个平面clear,clfezmesh(3*x1+2*x2+3)hold onezmesh(x1-2*x2+1)第14页,共56页,编辑于2022年,星期一用隐函数的绘制平面程序用隐函数的绘制平面程序用ezmesh画平面必须要解出z=f(x,y)的显函数形式,有时就觉得不太方便,容易发生移项正负号或系数除法的错误。为此,我们开发了画平面的ezplplot程序。在一张图上画两个平面的ezplplot2程序和画三个平面的ezplplot3程序
9、。这个程序还能画出诸平面的交线,根据abs(z1-z2)tol 的条件画出一个点的符号,tol的默认值为1。第15页,共56页,编辑于2022年,星期一隐函数绘制平面举例隐函数绘制平面举例(例例5.3)键入ezplplot后,按提示依次键入隐函数方程:x+y-z=52*x-3*y+z=3-5*x+2*y-2*z=0得到这三个平面的图形如图,该程序中还包括一句解方程的程序(s1=x+y-z=5,)x,y,z=solve(s1,s2,s3)故最后还可得到这三个方程的解,即其交点的坐标x=10/7,y=-13/7,z=-38/7第16页,共56页,编辑于2022年,星期一Ezplplot3的运行结果
10、第17页,共56页,编辑于2022年,星期一5.4 随机整数矩阵的生成程序随机整数矩阵的生成程序A=round(9*rand(2,4)生成24的一位正整数随机矩阵。A=round(19*(rand(2,4)-0.5)生成24的带正负系数的一位整数随机矩阵。装有ATLAST程序集时,可用A=randintr(3,4,9,2)生成mn(34)随机矩阵,q=9是正负整数系数的最大模,而r=2则是此矩阵的秩。显然输入变元时必须保证rmin(n,m),否则系统将会显示出错警告。第18页,共56页,编辑于2022年,星期一5.5 特殊矩阵的生成程序特殊矩阵的生成程序除了最常用的全零zeros(m,n)、全
11、么ones(m,n)、单位矩阵eye(n)等矩阵外,MATLAB提供了一些特殊矩阵的生成程序,见本书表2.1中的特殊矩阵栏。ATLAST 手册中也提供了19个特殊矩阵的生成程序(见本书附录B)。在本书的子程序集中,也提供了几个初等变换矩阵的生成程序。第19页,共56页,编辑于2022年,星期一5.6 线性代数建模与应用概述线性代数建模与应用概述本节介绍一些大的系统工程中使用线性代数的情况,使读者知道为什么线性代数在近几十年来变得如此的重要。首先要介绍Leontief教授把美国的经济用500个变量的500个线性方程来描述,在1949年利用当时的计算机解出了4242的简化模型,使他于1973年获得
12、诺贝尔经济奖,从而大大推动了线性代数的发展。第20页,共56页,编辑于2022年,星期一现代飞行器外形设计例现代飞行器外形设计例 把飞行器的外形分成若干大的部件,每个部件沿着其表面又用三维的细网格划分出许多立方体,这些立方体包括了机身表面以及此表面内外的空气。对每个立方体列写出空气动力学方程,其中包括了与它相邻的立方体的共同边界变量,这些方程通常都已经简化为线性方程。对一个飞行器,小立方体的数目可以多达400,000个,而要解的联立方程可能多达2,000,000个。第21页,共56页,编辑于2022年,星期一飞行器控制的例飞行器的运动要用三个转动和三个平移共六个变量来表示(像在第九章中介绍的那
13、样)。除此以外,为了控制飞行器的三维转动,需要三个控制面,即方向舵(垂直尾翼)、升降舵(水平尾翼)和副翼,它们的偏转角又构成了三个变量。描述飞行器的运动就需要12个变量的组合。而且这已经不单是代数方程,而是微分方程了。第22页,共56页,编辑于2022年,星期一卫星遥感图象处理的例 卫星上用三种可见光和四种红外光进行摄像,对每一个区域,可以获得七张遥感图象。利用多通道的遥感图可以获取尽可能多的地面信息,因为各种地貌、作物和气象特征可能对不同波段的光敏感。而在实用上应该寻找每一个地方的主因素,成为一张实用的图象。每一个象素上有七个数据,形成一个多元的变量数组,在其中合成并求取主因素的问题,就与线
14、性代数中要讨论的特征值问题有关。第23页,共56页,编辑于2022年,星期一国家地理信息系统的例 在全国设立几十万个观察点,把每一点的经度、纬度和高度三个坐标建立起来。现在对于经度纬度的测量精度要求,已经提高到了若干厘米,对于高度的精度要求更高。在一些边远地区,对于一些特征点的测量,要耗费很大的人力物力。例如对珠穆朗玛峰顶高度的测量,要经过多种方法,取得多种数据,并且用最小二乘法进行误差的处理。第24页,共56页,编辑于2022年,星期一6.1 方程的MATLAB表示方法其中:等价于第25页,共56页,编辑于2022年,星期一行号、列号和变量名可以看出,变量后圆括号中的第一个数是行号,第二个数
15、是列号,不加下标的变量A自身代表一个矩阵。除了把下标放入圆括号中之外,MATLAB的表述与原来的算式是完全一致的,非常好记。不过在MATLAB中变量名和元素名是一致的,式(6.3)中的矩阵A应该是a。但是为了使叙述文与一般的矩阵书籍相一致,我们还是把矩阵用大写字母表示,数组和元素则用小写字母,希望读者注意。第26页,共56页,编辑于2022年,星期一欠定、适定和超定方程如果n是未知数的数目,m是独立方程的数目,那么当nm时,未知数比独立方程数目多,此方程组有无数个解,称为欠定方程;当nm时,未知数比独立方程数目少,此方程组无解,称为超定方程;只有当nm时,未知数与独立方程数目相等,因而有惟一的
16、解x,称为适定方程。所以,不能简单地看形式上的m和n,还必须要剔除其中非独立方程的虚假成分。本章和下一章中将讨论的行阶梯形式、行列式和秩等概念,很大程度上就是为了找到独立方程的数目。第27页,共56页,编辑于2022年,星期一几种二元线性方程的解例6.1 求解下列四个线性方程组(a)(b)(c)(d)第28页,共56页,编辑于2022年,星期一用图解法解例6.1(a,b,c)用ezplot(s1),hold on,ezplot(s2),命令可以解出结果如下图其中s1和s2分别为方程的字符串表达式第29页,共56页,编辑于2022年,星期一用图解法解例6.1(d)第30页,共56页,编辑于202
17、2年,星期一用解析法解例6.1.1用代入法或消去法等中学方法求解;用矩阵求解的方法用MATLAB符号工具箱求解x1a,x2a=solve(s1,s2)其结果当然是相同的:(a)解为x1a=3,x2a=2(b)解为x1b=,x2b=,表示无解(c)解为x1c=2*x2-1,x2c=x2,表示有无数解(d)解为x1d=,x2d=,表示无解第31页,共56页,编辑于2022年,星期一求解三元线性方程组的例 再由两式联立解得:x=1.4286 y=-1.8571 z=-5.4286用图解方法ezplplot3画此三个方程的平面,用的就是例5.3的程序,得到:第32页,共56页,编辑于2022年,星期一
18、按例6.2画出的三个平面第33页,共56页,编辑于2022年,星期一三元一次方程的几何意义这三个方程的几何意义为空间的三个平面,两两消去z,意味着求两者的交线,得到的两个二元一次方程对应于求得的两根交线,最后由交线得到交点,该交点就是方程的解(见图6.3)。当两个平面平行,没有交线,或者两根交线平行,没有交点时,方程组就不相容,因而无解;同样也可能有无穷个解的情况,读者可自行思考想象。第34页,共56页,编辑于2022年,星期一6.2 初等行变换和高斯消元子程序初等行变换和高斯消元子程序执行以下三种行运算不会影响方程的相等关系,故不会影响方程组的解。矩阵C的行初等变换的MATLAB表示式为:(
19、1)。行交换:c(i,j,:)=c(j,i,:)(2)。行乘数:c(i,:)=k*c(i,:)(3)。行相加:c(j,:)=c(j,:)+k*c(i,:)第35页,共56页,编辑于2022年,星期一消元法的要点利用上述初等变换,在保持矩阵等价性和其它各行不变的前提下,把矩阵第j行中第q列的元素a(j,q)变换为零。做法:采用第三种变换,并取k=-a(j,q)/a(i,q)。此时第j行的数组将成为:a(j,:)=a(j,:)+-a(j,q)/a(i,q)*a(i,:)(6.9)而其中的第q个元素的取值将成为:a(j,q)=a(j,q)+-a(j,q)/a(i,q)*a(i,q)=0(6.10)其
20、中的冒号:意味着要对全行的所有元素都做一次乘法和一次加法,相当繁琐。第36页,共56页,编辑于2022年,星期一消元子程序消元子程序gauss.m。function B=gauss(A,i,j,q)%-%A为输入矩阵,B为变换后的输出矩阵%i为基准行的行号%j为待变换行的行号%q为基准元的列号,即A(i,q)为基准元,A(j,q)为待消元%x=A(i,:);y=A(j,:);%取出A的第i,j两行命名为x,y,z=y-y(q)/x(q)*x;%实现(6.2.5)式的运算A(j,:)=z;%把结果赋值给A第j行,B=A;%将A作为输出变元B第37页,共56页,编辑于2022年,星期一6.3 行阶
21、梯形式行阶梯形式具有以下三个特点的矩阵称为行阶梯形式:1。所有非零行都处在全零行的上方;2。行首非零(枢轴)元素的列号比它的上方所有各行的枢轴元素的列号都要大;3。各枢轴元素所处的列中,在枢轴元素下方的所有元素均为零。如果此矩阵还满足以下两个额外特点,4。各行枢轴元素是其列中的唯一非零元素;5。这些枢轴元素都等于1。则称之为简化行阶梯形式。第38页,共56页,编辑于2022年,星期一例例6.3 行阶梯方程组的解法行阶梯方程组的解法用逐次回代法,可以由下而上依次求得x4=2,x3=2+x4/2=3,x2=-4-8x3=-28,x1=3x2-5x3+2x4=-39。第39页,共56页,编辑于202
22、2年,星期一消元法生成行阶梯形式消元法生成行阶梯形式步骤1 把主对角线下方第一列元素消为零连续(n-1)次调用gauss子程序来实现。即用a1=gauss(a,1,2,1)a1=gauss(a1,1,3,1).a1=gauss(a1,1,n,1)步骤2 把主对角线下方第二列元素消为零a2=gauss(a1,2,3,2)a2=gauss(a2,2,4,2).步骤n-1第40页,共56页,编辑于2022年,星期一消元法生成简化行阶梯形式消元法生成简化行阶梯形式与行阶梯形式反向进行步骤1 把主对角线上方第n列元素消为零a1=gauss(a1,n,n-1,n).a1=gauss(a1,n,1,n)步骤
23、2 把主对角线上方第n-1列元素消为零a1=gauss(a1,n-1,n-2,n-1).把各行均除以主对角元素之值第41页,共56页,编辑于2022年,星期一例例6.4 用行阶梯求方程组的解用行阶梯求方程组的解逐步消元得到行阶梯形式:第42页,共56页,编辑于2022年,星期一简化行阶梯形式例再变为简化行阶梯形式它对应的方程为:也就是得出了方程的解。第43页,共56页,编辑于2022年,星期一6.4 MATLAB的行阶梯解的行阶梯解 上节所介绍的方法比起一个一个元素地计算,效率是高多了。但仍然很麻烦,头脑中要记各个步骤中的很多细节,而实际上这些步骤仍然是刻板而有规律的,容易机械化。MATLAB
24、已经把简化行阶梯形式(reduced row echelon form)的计算过程集成为一个子程序rref.它的输入变元是线性方程组的增广矩阵,键入U0=rref(A,B),输出的结果就是增广矩阵C的精简行阶梯形式。上例的计算程序可以简化为:A=1,4,7;8,5,2,;3,6,-2;B=1;3;5;C=A,B;U0=rref(C)第44页,共56页,编辑于2022年,星期一更高阶的情况举例更高阶的情况举例6.6ag606 输入矩阵A,B后,键入U0=rref(A,B),可得可见只要方程是适定的,用rref函数就能解出方程。第45页,共56页,编辑于2022年,星期一6.5 用用rref求解欠
25、定方程组求解欠定方程组当mn时,方程数小于未知数数,属于欠定方程,方程将有无数解,需要找出其解的一般形式。即使m=n,也有可能是假象。用行阶梯形式就可以分清真假。欠定方程的行阶梯形式如下 第46页,共56页,编辑于2022年,星期一欠定方程的行阶梯形式系数矩阵的下方出现全零行,原来的 m行中只有r行有效,即系数矩阵成为rn阶的。原来的m个方程中有(m-r)个是相依的。部分行的最左端元素(称为枢轴元素)处于主对角线的右方,枢轴行和枢轴列都是r个。等式右端的常数列应该也只有r个非零元素。非枢轴列的变量为自由变量,任设它们为零,则剩下的矩阵成为rr阶的适定方程,可解出r个枢轴变量作为一组特解。其下标
26、ip由rref函数的第2输出变元给出U0,ip=rref(A)第47页,共56页,编辑于2022年,星期一用rref函数求欠定方程的通解把rref函数生成的系数矩阵恢复为方程,并将自由变量移至等式右端,求出枢轴变量的解,解中应包含括自由变量。在解的变量列中补上非枢轴变量的恒等式x(is)=x(is),其中is是非枢轴变量的列号。将左端解写成列向量形式,其右端整理成常数列向量加各自由变量乘以常数列向量的形式。也可以用程序ag607a来实现,但不提倡。第48页,共56页,编辑于2022年,星期一例例6.7 求线性方程组的解求线性方程组的解用ag607输入方程系数A和b,然后键入B=A,b,UB,i
27、p=rref(B);U0=UB(1:5,1:5),d=UB(:,6)第49页,共56页,编辑于2022年,星期一ag607运行的结果运行的结果恢复为方程形式,移项求解 ip=1,2,4 第50页,共56页,编辑于2022年,星期一例6.7解的最后形式可以把x3和x5写成任意常数c1和c2,使其意义更加明确。第51页,共56页,编辑于2022年,星期一自动求欠定方程解的程序ag607asyms c1 c2 c3 c4 c5 m,nsize(A);isother(ip,n),cc1;c2;c3;c4;c5x(is,1)c(1:length(is)lplength(ip)x(ip,1)-U0(1:l
28、p,ip1:n)*x(ip1:n)U0(1:lp,end)第52页,共56页,编辑于2022年,星期一6.6.1 平板稳态温度的计算平板稳态温度的计算 整理为第53页,共56页,编辑于2022年,星期一6.6.2 化学方程的配平化学方程的配平确定x1,x2,x3,x4,使两边原子数相等称为配平,方程为写成矩阵方程第54页,共56页,编辑于2022年,星期一6.6.3 电阻电路的计算电阻电路的计算 设定三个回路电流ia,ib,ic,回路压降的方程为:第55页,共56页,编辑于2022年,星期一6.6.4 交通流的分析 节点A:x1+450 x2+610节点B:x2+520 x3+480节点C:x3+390 x4+600节点D:x4+640 x2+310矩阵方程为:第56页,共56页,编辑于2022年,星期一