课件4-MATLAB在高等数学中的应用



《课件4-MATLAB在高等数学中的应用》由会员分享,可在线阅读,更多相关《课件4-MATLAB在高等数学中的应用(42页珍藏版)》请在装配图网上搜索。
1、单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,*,电子信息学院,*,第三章,MATLAB在高等数学中的应用,10/2/2024,电子信息学院,3.1,矩阵分析,3.1.1,对角阵与三角阵,1,.对角阵只有对角线上有非,0,元素的矩阵称为对角矩阵,对角线上的元素相等的对角矩阵称为数量矩阵,对角线上的元素都为,1,的对角矩阵称为单位矩阵。,10/2/2024,电子信息学院,,,(1),提取矩阵的对角线元素设,A,为,m×n,矩阵,,diag(A,),函数用于提取矩阵,A,主对角线元素,产生一个具有,min(m,n,),个元素的列向量。,diag
2、(A,),函数还有一种形式,diag(A,k,),,其功能是提取第,k,条对角线的元素。,(2),构造对角矩阵设,V,为具有,m,个元素的向量,,diag(V,),将产生一个,m×m,对角矩阵,其主对角线元素即为向量,V,的元素。,diag(V,),函数也有另一种形式,diag(V,k,),,其功能是产生一个,n×n(n,=m+),对角阵,其第,k,条对角线的元素即为向量,V,的元素。,10/2/2024,电子信息学院,例,1.,先建立,5×5,矩阵,A,,然后将,A,的第一行元素乘以,1,,第二行乘以,2,,,…,,第五行乘以,5,。,A=[17,0,1,0,15;23,5,7,14,16
3、;4,0,13,0,22;10,12,19,21,3;...11,18,25,2,19];,D=diag(1:5); D*A %,用,D,左乘,A,,对,A,的每行乘以一个指定常数,10/2/2024,电子信息学院,2,.三角阵三角阵又进一步分为上三角阵和下三角阵,所谓上三角阵,即矩阵的对角线以下的元素全为,0,的一种矩阵,而下三角阵则是对角线以上的元素全为,0,的一种矩阵。,10/2/2024,电子信息学院,上三角矩阵求矩阵,A,的上三角阵的,MATLAB,函数是,triu(A,),。,triu(A,),函数也有另一种形式,triu(A,k,),,其功能是求矩阵,A,的第,k,条对角
4、线以上的元素。例如,提取矩阵,A,的第,2,条对角线以上的元素,形成新的矩阵,B,。,,下三角矩阵在,MATLAB,中,提取矩阵,A,的下三角矩阵的函数是,tril(A,),和,tril(A,k,),,其用法与提取上三角矩阵的函数,triu(A,),和,triu(A,k,),完全相同。,10/2/2024,电子信息学院,3.1.2,矩阵的转置与旋转,1,.矩阵的转置转置运算符是单撇号,(‘),。,2,.矩阵的旋转利用函数,rot90(A,k),将矩阵,A,旋转,90º,的,k,倍,当,k,为,1,时可省略。,10/2/2024,电子信息学院,3,.矩阵的左右翻转对矩阵实施左右翻转是将原
5、矩阵的第一列和最后一列调换,第二列和倒数第二列调换,,…,,依次类推。,MATLAB,对矩阵,A,实施左右翻转的函数是,fliplr(A,),。,4,.矩阵的上下翻转,MATLAB,对矩阵,A,实施上下翻转的函数是,flipud(A,),。,10/2/2024,电子信息学院,3.1.3,矩阵的逆与伪逆,1,.矩阵的逆对于一个方阵,A,,如果存在一个与其同阶的方阵,B,,使得:,A·B=B·A=I (I,为单位矩阵,),则称,B,为,A,的逆矩阵,当然,,A,也是,B,的逆矩阵。求一个矩阵的逆是一件非常烦琐的工作,容易出错,但在,MATLAB,中,求一个矩阵的逆非常容易。求方阵,A,的逆矩阵
6、可调用函数,inv(A,),。例,2.,用求逆矩阵的方法解线性方程组。,Ax=b,其解为:,x=A,-1,b,10/2/2024,电子信息学院,2,.矩阵的伪逆如果矩阵,A,不是一个方阵时,矩阵,A,没有逆矩阵,但可以找到一个与,A,的转置矩阵,A‘,同型的矩阵,B,,使得:,A·B·A=AB·A·B=B,此时称矩阵,B,为矩阵,A,的伪逆,也称为广义逆矩阵。在,MATLAB,中,求一个矩阵伪逆的函数是,pinv(A,),。,10/2/2024,电子信息学院,3.1.4,方阵的行列式把一个方阵看作一个行列式,并对其按行列式的规则求值,这个值就称为矩阵所对应的行列式的值。在,MATLAB
7、,中,求方阵,A,所对应的行列式的值的函数是,det(A,),。,10/2/2024,电子信息学院,3.1.5,线性方程组求解,,1,.利用左除运算符的直接解法,,对于线性方程组,Ax,=,b,,可以利用左除运算符“,\,”,求解:,,,x=A,\,b,,例,3.,。 用直接解法求解下列线性方程组。,,命令如下:,,A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4];,,b=[13,-9,6,0]';,,x=A\,b%(inv(A,)*b),10/2/2024,电子信息学院,3.1.6,矩阵的秩与迹,1,.矩阵的秩矩阵线性无关的行数与列数称为矩阵的秩。在,MAT
8、LAB,中,求矩阵秩的函数是,rank(A,),。,2,.矩阵的迹矩阵的迹等于矩阵的对角线元素之和,也等于矩阵的特征值之和。在,MATLAB,中,求矩阵的迹的函数是,trace(A,),。,10/2/2024,电子信息学院,3.1.7,向量和矩阵的范数矩阵或向量的范数用来度量矩阵或向量在某种意义下的长度。范数有多种方法定义,其定义不同,范数值也就不同。,10/2/2024,电子信息学院,1,.向量的,3,种常用范数及其计算函数在,MATLAB,中,求向量范数的函数为:,(1),norm(V,),或,norm(V,2),:计算向量,V,的,2—,范数。,(2) norm(V,1),:计算向
9、量,V,的,1—,范数。,(3),norm(V,inf,),:计算向量,V,的,∞,—,范数。,,2,.矩阵的范数及其计算函数,MATLAB,提供了求,3,种矩阵范数的函数,其函数调用格式与求向量的范数的函数完全相同。,10/2/2024,电子信息学院,3.1.8,矩阵的条件数在,MATLAB,中,计算矩阵,A,的,3,种条件数的函数是:,(1) cond(A,1),计算,A,的,1—,范数下的条件数。,(2),cond(A,),或,cond(A,2),计算,A,的,2—,范数数下的条件数。,(3),cond(A,inf,),计算,A,的,∞,—,范数下的条件数。,10/2/2024,电子信
10、息学院,3.1.9,矩阵的特征值与特征向量在,MATLAB,中,计算矩阵,A,的特征值和特征向量的函数是,eig(A,),,常用的调用格式有,2,种:,(1) E=,eig(A,),:求矩阵,A,的全部特征值,构成向量,E,。,(2) [V,D]=,eig(A,),:求矩阵,A,的全部特征值,构成对角阵,D,,并求,A,的特征向量构成,V,的列向量。,,,10/2/2024,电子信息学院,3.2,多项式计算,,1,.多项式的加减运算(详见课本,p87,),,2,.多项式乘法运算,,函数,conv(P1,P2),用于求多项式,P1,和,P2,的乘积。这里,,P1,、,P2,是两个多项式系数向量
11、。,10/2/2024,电子信息学院,3,.多项式除法,,函数,[,Q,r,]=deconv(P1,P2),用于对多项式,P1,和,P2,作除法运算。其中,Q,返回多项式,P1,除以,P2,的商式,,r,返回,P1,除以,P2,的余式。这里,,Q,和,r,仍是多项式系数向量。,,deconv,是,conv,的逆函数,即有,P1=conv(P2,Q)+r,。,10/2/2024,电子信息学院,4,多项式求根,,n,次多项式具有,n,个根,当然这些根可能是实根,也可能含有若干对共轭复根。,MATLAB,提供的,roots,函数用于求多项式的全部根,其调用格式为:,,x=,roots(P,),,其中
12、,P,为多项式的系数向量,求得的根赋给向量,x,,即,x(1),x(2),…,,x(n,),分别代表多项式的,n,个根。,10/2/2024,电子信息学院,例,4.,求多项式,x,4,+8x,3,-10,的根。,,命令如下:,,A=[1,8,0,0,-10];,,x=,roots(A,),,若已知多项式的全部根,则可以用,poly,函数建立起该多项式,其调用格式为:,,P=,poly(x,),,若,x,为具有,n,个元素的向量,则,poly(x,),建立以,x,为其根的多项式,且将该多项式的系数赋给向量,P,。,10/2/2024,电子信息学院,例,5.,已知,f(x,),,(1),计算,f(
13、x,)=0,的全部根。,,(2),由方程,f(x,)=0,的根构造一个多项式,g(x,),,并与,f(x,),进行对比。,,命令如下:,,P=[3,0,4,-5,-7.2,5];,,X=,roots(P,) %,求方程,f(x,)=0,的根,,G=,poly(X,) %,求多项式,g(x,),,10/2/2024,电子信息学院,3.3,数据插值,,3.3.1,一维数据插值,,在,MATLAB,中,实现这些插值的函数是,interp1,,其调用格式为:,,Y1=interp1(X,Y,X1,'method'),,函数根据,X,Y,的值,计算函数在,X1
14、,处的值。,X,Y,是两个等长的已知向量,分别描述采样点和样本值,,X1,是一个向量或标量,描述欲插值的点,,Y1,是一个与,X1,等长的插值结果。,method,是插值方法,允许的取值有,‘,linear’,、,‘,nearest’,、,‘,cubic’,、,‘,spline,’,。,10/2/2024,电子信息学院,注意:,X1,的取值范围不能超出,X,的给定范围,否则,会给出“,NaN,”,错误。,,例,6.,用不同的插值方法计算在,π/2,点的值。,,MATLAB,中有一个专门的,3,次样条插值函数,Y1=spline(X,Y,X1),,其功能及使用方法与函数,Y1=interp1(X
15、,Y,X1,‘spline’),完全相同。,10/2/2024,电子信息学院,例,7.,某观测站测得某日,6:00,时至,18:00,时之间每隔,2,小时的室内外温度,(℃),,用,3,次样条插值分别求得该日室内外,6:30,至,17:30,时之间每隔,2,小时各点的近似温度,(℃),。,,设时间变量,h,为一行向量,温度变量,t,为一个两列矩阵,其中第一列存放室内温度,第二列储存室外温度。命令如下:,,h =6:2:18;,,t=[18,20,22,25,30,28,24;15,19,24,28,34,32,30]';,,XI =6.5:2:17.5,,YI=interp1(h,t,XI,,
16、',spline,',) %,用,3,次样条插值计算,10/2/2024,电子信息学院,3.3.2,二维数据插值,,在,MATLAB,中,提供了解决二维插值问题的函数,interp2,,其调用格式为:,,Z1=interp2(X,Y,Z,X1,Y1,'method'),,其中,X,Y,是两个向量,分别描述两个参数的采样,,点,,Z,是与参数采样点对应的函数值,,X1,Y1,是,,两个向量或标量,描述欲插值的点。,Z1,是根据相,,应的插值方法得到的插值结果。,method,的取值,,与一维插值函数相同。,X,Y,Z,也可以是矩阵形式。,,同样,,X1,Y1,的取值范围不能超出
17、,X,Y,的给定范,,围,否则,会给出“,NaN,”,错误。,10/2/2024,电子信息学院,例,8.,某实验对一根长,10,米的钢轨进行热源的温度传播测试。用,x,表示测量点,0:2.5:10(,米,),,用,h,表示测量时间,0:30:60(,秒,),,用,T,表示测试所得各点的温度,(℃),。试用线性插值求出在一分钟内每隔,20,秒、钢轨每隔,1,米处的温度,TI,。,,命令如下:,,x=0:2.5:10;,,h=[0:30:60]';,,T=[95,14,0,0,0;88,48,32,12,6;67,64,54,48,41];,,xi=[0:10];,,hi=[0:20:60]';,
18、,TI=interp2(x,h,T,xi,hi),10/2/2024,电子信息学院,3.4,数据统计处理,,3.4.1,最大值和最小值,,MATLAB,提供的求数据序列的最大值和最小值的函数分别为,max,和,min,,两个函数的调用格式和操作过程类似。,,1,.求向量的最大值和最小值,,求一个向量,X,的最大值的函数有两种调用格式,分别是:,,(1) y=,max(X,),:返回向量,X,的最大值存入,y,,如果,X,中包含复数元素,则按模取最大值。,10/2/2024,电子信息学院,(2) [,y,I,]=,max(X,),:返回向量,X,的最大值存入,y,,最大值的序号存入,I,,如果,
19、X,中包含复数元素,则按模取最大值。,,求向量,X,的最小值的函数是,min(X,),,用法和,max(X,),完全相同。,,例,9.,求向量,x,的最大值。,,命令如下:,,x=[-43,72,9,16,23,47];,,y=,max(x,) %,求向量,x,中的最大值,,[,y,l,]=,max(x,) %,求向量,x,中的最大值及其该元素的位置,10/2/2024,电子信息学院,2,.求矩阵的最大值和最小值,,求矩阵,A,的最大值的函数有,3,种调用格式,分别是:,,(1),max(A,),:返回一个行向量,向量的第,i,个元素是矩阵,A,的第,
20、i,列上的最大值。,,(2) [Y,U]=,max(A,),:返回行向量,Y,和,U,,,Y,向量记录,A,的每列的最大值,,U,向量记录每列最大值的行号。,10/2/2024,电子信息学院,(3),max(A,[],dim,),:,dim,取,1,或,2,。,dim,取,1,时,该函数和,max(A,),完全相同;,dim,取,2,时,该函数返回一个列向量,其第,i,个元素是,A,矩阵的第,i,行上的最大值。,,求最小值的函数是,min,,其用法和,max,完全相同。,,例,10.,分别求,3×4,矩阵,x,中各列和各行元素中的最大值,并求整个矩阵的最大值和最小值。,10/2/2024,电子
21、信息学院,3,.两个向量或矩阵对应元素的比较,,函数,max,和,min,还能对两个同型的向量或矩阵进行比较,调用格式为:,,(1) U=,max(A,B,),:,A,B,是两个同型的向量或矩阵,结果,U,是与,A,B,同型的向量或矩阵,,U,的每个元素等于,A,B,对应元素的较大者。,,(2) U=,max(A,n,),:,n,是一个标量,结果,U,是与,A,同型的向量或矩阵,,U,的每个元素等于,A,对应元素和,n,中的较大者。,,min,函数的用法和,max,完全相同。,,例,11.,求两个,2×3,矩阵,x, y,所有同一位置上的较大元素构成的新矩阵,p,。,10/2/2024,电子信
22、息学院,3.3.2,求和与求积,,数据序列求和与求积的函数是,sum,和,prod,,其使用方法类似。设,X,是一个向量,,A,是一个矩阵,函数的调用格式为:,,sum(X,),:返回向量,X,各元素的和。,,prod(X,),:返回向量,X,各元素的乘积。,,sum(A,),:返回一个行向量,其第,i,个元素是,A,的第,i,列的元素和。,10/2/2024,电子信息学院,prod(A,),:返回一个行向量,其第,i,个元素是,A,的第,i,列的元素乘积。,,sum(A,dim,),:当,dim,为,1,时,该函数等同于,sum(A,),;当,dim,为,2,时,返回一个列向量,其第,i,个
23、元素是,A,的第,i,行的各元素之和。,,prod(A,dim,),:当,dim,为,1,时,该函数等同于,prod(A,),;当,dim,为,2,时,返回一个列向量,其第,i,个元素是,A,的第,i,行的各元素乘积。,,例,12.,求矩阵,A,的每行元素的乘积和全部元素的乘积。,10/2/2024,电子信息学院,3.3.3,平均值和中值,,求数据序列平均值的函数是,mean,,求数据序列中值的函数是,median,。两,,个函数的调用格式为:,,mean(X,),:返回向量,X,的算术平均值。,,median(X,),:返回向量,X,的中值。,,mean(A,),:,,返回一个行向量,其第,
24、i,个元素是,A,的第,i,列的算术平均值。,,median(A,),:,,返回一个行向量,其第,i,个元素是,A,的第,i,列的中值。,,mean(A,dim,),:,,当,dim,为,1,时,该函数等同于,mean(A,),;当,dim,为,2,时,返回一个列向量,其第,i,个元素是,A,的第,i,行的算术平均值。,,median(A,dim,),:,,当,dim,为,1,时,该函数等同于,median(A,),;当,dim,为,2,时,返回一个列向量,其第,i,个元素是,A,的第,i,行的中值。,,例,13.,分别求向量,x,与,y,的平均值和中值。,10/2/2024,电子信息学院,3
25、.3.4,累加和与累乘积,,在,MATLAB,中,使用,cumsum,和,cumprod,函数能方便地求得向量和矩阵元素的累加和与累乘积向量,函数的调用格式为:,,cumsum(X,),:返回向量,X,累加和向量。,,cumprod(X,),:返回向量,X,累乘积向量。,,cumsum(A,),:返回一个矩阵,其第,i,列是,A,的第,i,列的累加和向量。,,cumprod(A,),:返回一个矩阵,其第,i,列是,A,的第,i,列的累乘积向量。,,cumsum(A,dim,),:当,dim,为,1,时,该函数等同于,cumsum(A,),;当,dim,为,2,时,返回一个矩阵,其第,i,行是,
26、A,的第,i,行的累加和向量。,,cumprod(A,dim,),:当,dim,为,1,时,该函数等同于,cumprod(A,),;当,dim,为,2,时,返回一个向量,其第,i,行是,A,的第,i,行的累乘积向量。,10/2/2024,电子信息学院,3.3.5,标准方差与相关系数,,1,.求标准方差,,在,MATLAB,中,提供了计算数据序列的标准方差的函数,std,。对于向量,X,,,std(X,),返回一个标准方差。对于矩阵,A,,,std(A,),返回一个行向量,它的各个元素便是矩阵,A,各列或各行的标准方差。,std,函数的一般调用格式为:,,Y=,std(A,flag,dim,),
27、,其中,dim,取,1,或,2,。当,dim=1,时,求各列元素的标准方差;当,dim=2,时,则求各行元素的标准方差。,flag,取,0,或,1,,当,flag=0,时,按,σ1,所列公式计算标准方差,当,flag=1,时,按,σ2,所列公式计算标准方差。缺省,flag=0,,,dim=1,。,,例,14.,对二维矩阵,x,,从不同维方向求出其标准方差。,10/2/2024,电子信息学院,2,.相关系数,,MATLAB,提供了,corrcoef,函数,可以求出数据的相关系数矩阵。,corrcoef,函数的调用格式为:,,corrcoef(X,),:返回从矩阵,X,形成的一个相关系数矩阵。此相
28、关系数矩阵的大小与矩阵,X,一样。它把矩阵,X,的每列作为一个变量,然后求它们的相关系数。,,cov(X,)= E((x1-m(x1))*(x2-m(x2)),,corrcoef(X,Y,),:在这里,,X,Y,是向量,它们,,与,corrcoef([X,Y,]),的作用一样。,10/2/2024,电子信息学院,例,15.,生成满足正态分布的,10000×5,随机矩阵,然后求各列元素的均值和标准方差,再求这,5,列随机数据的相关系数矩阵。,,命令如下:,,X=randn(10000,5);,,M=,mean(X,),,D=,std(X,),,R=,corrcoef(X,),10/2/2024,
29、电子信息学院,3.3.6,排序,,MATLAB,中对向量,X,是排序函数是,sort(X,),,函数返回一个对,X,中的元素按升序排列的新向量。,,sort,函数也可以对矩阵,A,的各列或各行重新排序,其调用格式为:,,[Y,I]=,sort(A,dim,),,其中,dim,指明对,A,的列还是行进行排序。若,dim=1,,则按列排;若,dim=2,,则按行排。,Y,是排序后的矩阵,而,I,记录,Y,中的元素在,A,中位置。,,例,16.,对二维矩阵做各种排序。,10/2/2024,电子信息学院,3.4.2,函数极值,,,MATLAB,提供了基于单纯形算法求解函数极值的函数,fmin,和,fm
30、ins,,它们分别用于单变量函数和多变量函数的最小值,其调用格式为:,,,x=fmin('fname',x1,x2),,x=fmins('fname',x0),,这两个函数的调用格式相似。其中,fmin,函数用于求单变量函数的最小值点。,fname,是被最小化的目标函数名,,x1,和,x2,限定自变量的取值范围。,fmins,函数用于求多变量函数的最小值点,,x0,是求解的初始值向量。,10/2/2024,电子信息学院,MATLAB,没有专门提供求函数最大值的函数,但只要注意到,-,f(x,),在区间,(,a,b,),上的最小值就是,f(x,),在,(,a,b,),的最大值,所以,fmin(f,x1,x2),返回函数,f(x,),在区间,(x1,x2),上的最大值。,,例,17.,求,f(x,)=x,3,-2x-5,在,[0,5],内的最小值点。,,,(1),建立函数文件,mymin.m,。,,function,fx,=,mymin(x,),,fx,=x.^3-2*x-5;,,(2),调用,fmin,函数求最小值点。,,x=fmin('mymin',0,5),,x=,,0.8165,,10/2/2024,电子信息学院,
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。