第2讲Matlab程序设计.ppt

上传人:p** 文档编号:182971 上传时间:2023-03-30 格式:PPT 页数:67 大小:729.50KB
下载 相关 举报
第2讲Matlab程序设计.ppt_第1页
第1页 / 共67页
第2讲Matlab程序设计.ppt_第2页
第2页 / 共67页
第2讲Matlab程序设计.ppt_第3页
第3页 / 共67页
第2讲Matlab程序设计.ppt_第4页
第4页 / 共67页
第2讲Matlab程序设计.ppt_第5页
第5页 / 共67页
第2讲Matlab程序设计.ppt_第6页
第6页 / 共67页
第2讲Matlab程序设计.ppt_第7页
第7页 / 共67页
第2讲Matlab程序设计.ppt_第8页
第8页 / 共67页
第2讲Matlab程序设计.ppt_第9页
第9页 / 共67页
第2讲Matlab程序设计.ppt_第10页
第10页 / 共67页
亲,该文档总共67页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第2讲Matlab程序设计.ppt》由会员分享,可在线阅读,更多相关《第2讲Matlab程序设计.ppt(67页珍藏版)》请在第壹文秘上搜索。

1、第第2 2讲讲 MATLABMATLAB程序设计程序设计第第4章章 MATLAB程序设计(掌握)程序设计(掌握)4.1 M文件文件4.2 程序控制结构程序控制结构4.3 函数文件函数文件4.4 程序调试程序调试第第3章章 MATLAB矩阵分析与处理(掌握)矩阵分析与处理(掌握)3.1 特殊矩阵特殊矩阵 3.3 矩阵求逆与线性方程组求解矩阵求逆与线性方程组求解3.4 矩阵求值矩阵求值 3.5 矩阵的特征值与特征向量矩阵的特征值与特征向量内容提要内容提要 3.1 特殊矩阵特殊矩阵3.1.1 通用的特殊矩阵通用的特殊矩阵zeros:产生全:产生全0矩阵矩阵(零矩阵零矩阵)。ones:产生全:产生全1

2、矩阵矩阵(幺矩阵幺矩阵)。eye:产生单位矩阵。:产生单位矩阵。rand:产生:产生01间均匀分布的随机矩阵。间均匀分布的随机矩阵。randn:产生均值为:产生均值为0,方差为,方差为1的标准正态分布随机矩阵。的标准正态分布随机矩阵。调用格式都是调用格式都是(以以zeros为例为例):zeros(m):产生产生m*m方阵方阵zeros(m,n):产生产生m*n矩阵矩阵zeros(size(A):产生与矩阵:产生与矩阵A同样大小的矩阵同样大小的矩阵例例3.1 分别建立分别建立33、32和与矩阵和与矩阵A同样大小的零矩阵。同样大小的零矩阵。(1) 建立一个建立一个33零矩阵。零矩阵。zeros(3

3、) (2) 建立一个建立一个32零矩阵。零矩阵。zeros(3,2) (3) 设设A为为23矩阵,则可以用矩阵,则可以用zeros(size(A)建立一个与矩建立一个与矩阵阵A同样大小零矩阵。同样大小零矩阵。A=1 2 3;4 5 6; %产生一个产生一个23阶矩阵阶矩阵Azeros(size(A) %产生一个与矩阵产生一个与矩阵A同样大小的零矩阵同样大小的零矩阵 例例3.2 3.2 建立随机矩阵:建立随机矩阵:(1) (1) 在区间在区间20,5020,50内均匀分布的内均匀分布的5 5阶随机矩阵。阶随机矩阵。说明:说明: randrand函数产生函数产生(0,1)(0,1)区间均匀分布的随

4、机矩区间均匀分布的随机矩阵。假设得到了一组满足(阵。假设得到了一组满足(0 0,1 1)区间均匀分布的)区间均匀分布的随机数随机数 x xi i, ,则若想得到在任意则若想得到在任意a,ba,b区间上均匀分布区间上均匀分布的随机数,用公式的随机数,用公式a+(b-a)iiyx所以,该题命令为:x=20+(50-20)*rand(5) 例例3.2 3.2 建立随机矩阵:建立随机矩阵:(2) (2) 均值为均值为0.60.6、方差为、方差为0.10.1的的5 5阶正态分布随机矩阵。阶正态分布随机矩阵。说明:说明:randnrandn函数是产生均值为函数是产生均值为0 0,方差为,方差为1 1的标准

5、正的标准正态分布随机矩阵;假设已经得到了一组标准正态分布态分布随机矩阵;假设已经得到了一组标准正态分布随机数随机数x xi i,如果想得到均值为,如果想得到均值为 方差为方差为 的随机数,的随机数,可用可用iiyx2命令如下: y=0.6+sqrt(0.1)*randn(5)3.2 3.2 矩阵结构变换矩阵结构变换3.2.1 3.2.1 对角阵与三角阵对角阵与三角阵1.1.对角阵对角阵 只有对角线上有非0元素的矩阵称为对角矩阵。对角线上的元素都为1的对角矩阵称为单位矩阵。 (1) (1) 提取提取矩阵的对角线元素矩阵的对角线元素 设设A A为为m mn n矩阵,矩阵,diag(A)diag(A

6、)函数用于提取矩阵函数用于提取矩阵A A主对角线主对角线元素,产生一个具有元素,产生一个具有min(m,n)min(m,n)个元素的列向量。个元素的列向量。 A=1,2,3;4,5,6; D=diag(A)3.2 3.2 矩阵结构变换矩阵结构变换 diag(A) diag(A)函数还有一种形式函数还有一种形式diag(A,k)diag(A,k),其功能,其功能是提取第是提取第k k条对角线条对角线( (主对角线为第主对角线为第0 0条,与其平行条,与其平行往上为第往上为第1 1条,第条,第2 2条条.,往下为第,往下为第-1,-2.-1,-2.条条) )的元素。的元素。 A=1,2,3;4,5

7、,6;D=diag(A,1) A=1,2,3;4,5,6;D=diag(A,-1)(2) (2) 构造构造对角矩阵对角矩阵 设设V V为具有为具有m m个元素的向量,个元素的向量,diag(V)diag(V)将产生一将产生一个个m mm m对角矩阵,其主对角线元素即为向量对角矩阵,其主对角线元素即为向量V V的的元素。元素。diag(1,2,-1,4) diag(V)diag(V)函数也有另一种形式函数也有另一种形式didiag(V,k)ag(V,k),其,其功能是产生一个功能是产生一个n nn(n=m+|k|n(n=m+|k|,m m为向量的个数为向量的个数) )对角阵,其第对角阵,其第k

8、k条对角线的元素即为向量条对角线的元素即为向量V V的元素。的元素。diag(1:3,-1) 例例3.6 3.6 先建立先建立5 55 5矩阵矩阵A A,然后将,然后将A A的第一行元素的第一行元素乘以乘以1 1,第二行乘以,第二行乘以2 2,第五行乘以,第五行乘以5 5。 思考过程:思考过程:用一个对角阵用一个对角阵左乘左乘一个矩阵时,相一个矩阵时,相当于用对角阵的第一个元素乘以该矩阵的第一行,当于用对角阵的第一个元素乘以该矩阵的第一行,用对角阵的第二个元素乘以该矩阵的第二行,用对角阵的第二个元素乘以该矩阵的第二行, .以此类推。因此,只要构造一个对角矩阵以此类推。因此,只要构造一个对角矩阵

9、D D,然,然后用后用D D左乘左乘A A即可。即可。 A=ones(5); D=diag(1:5); D*A注意:注意:如果要对如果要对A A的每列元素乘以同一个数,可以用的每列元素乘以同一个数,可以用一个对角阵右乘矩阵一个对角阵右乘矩阵A A2三角阵 分为上三角阵和下三角阵;所谓上三角阵,即分为上三角阵和下三角阵;所谓上三角阵,即矩阵的对角线以下的元素全为矩阵的对角线以下的元素全为0 0的一种矩阵,而下的一种矩阵,而下三角阵则是对角线以上的元素全为三角阵则是对角线以上的元素全为0 0的一种矩阵。的一种矩阵。 (1) (1) 上三角矩阵上三角矩阵 矩阵矩阵A A的上三角阵的上三角阵B B是与

10、是与A A同型的矩阵,其对角线以上(含同型的矩阵,其对角线以上(含对角线)的元素和对角线)的元素和A A对应相等,而对角线以下的元素等于对应相等,而对角线以下的元素等于0 0。求。求矩阵矩阵A A的上三角阵的的上三角阵的MATLABMATLAB函数是函数是triu(A)triu(A)。 A=7,13,-28;2,-9,8;0,34,5; B=triu(A) 函数也有另一种形式函数也有另一种形式triu(A,k)triu(A,k),其功能是求矩阵,其功能是求矩阵A A的第的第k k条对角线以上的元素。例如,提取矩阵条对角线以上的元素。例如,提取矩阵A A的第的第2 2条对角线以上条对角线以上的元

11、素,形成新的矩阵的元素,形成新的矩阵B B。 (1) (1) 上三角矩阵上三角矩阵 求矩阵求矩阵A A的上三角阵的的上三角阵的MATLABMATLAB函数是函数是triu(A)triu(A)。triu(A)triu(A)函数也有另一种形式函数也有另一种形式triu(A,k)triu(A,k),其功能是求矩阵,其功能是求矩阵A A的第的第k k条对角线以上的元素。例如,提取矩阵条对角线以上的元素。例如,提取矩阵A A的第的第2 2条对角条对角线以上的元素,形成新的矩阵线以上的元素,形成新的矩阵B B。(2) (2) 下三角矩阵下三角矩阵在在MATLABMATLAB中,提取矩阵中,提取矩阵A A的

12、下三角矩阵的函数是的下三角矩阵的函数是tril(A)tril(A)和和tril(A,k)tril(A,k),其用法与提取上三角矩阵的函数,其用法与提取上三角矩阵的函数triu(A)triu(A)和和triu(A,k)triu(A,k)完全相同。完全相同。v1.矩阵的转置矩阵的转置v转置运算符是单撇号转置运算符是单撇号 3.3 3.3 矩阵求逆与线性方程组求解矩阵求逆与线性方程组求解3.3.1 3.3.1 矩阵的逆与伪逆矩阵的逆与伪逆对于一个方阵对于一个方阵A A,如果存在一个与其同阶的方阵,如果存在一个与其同阶的方阵B B,使得:,使得:A AB=BB=BA=I (IA=I (I为单位矩阵为单

13、位矩阵) )则称则称B B为为A A的逆矩阵,当然,的逆矩阵,当然,A A也是也是B B的逆矩阵。的逆矩阵。求一个矩阵的逆是一件非常烦琐的工作,容易出错,但求一个矩阵的逆是一件非常烦琐的工作,容易出错,但在在MATLABMATLAB中,求一个矩阵的逆非常容易。中,求一个矩阵的逆非常容易。求方阵求方阵A A的逆的逆矩阵可调用函数矩阵可调用函数inv(A)inv(A)。3.3.2 3.3.2 用矩阵求逆方法求解线性方程组用矩阵求逆方法求解线性方程组在线性方程组在线性方程组Ax=bAx=b两边各左乘两边各左乘A A-1-1,有,有A A-1-1Ax=AAx=A-1-1b b由于由于A A-1-1A=

14、IA=I,故得,故得x=Ax=A-1-1b b例例3.8 3.8 用求逆矩阵的方法解线性方程组用求逆矩阵的方法解线性方程组A=1,2,3;1,4,9;1,8,27; A=1,2,3;1,4,9;1,8,27; b=5,-2,6; b=5,-2,6; x=inv(A)x=inv(A)* *b b也可以运用左除运算符也可以运用左除运算符“”求解线性代数方程组。求解线性代数方程组。6278294532zyxzyxzyx3.4 3.4 矩阵求值矩阵求值 3.4.1 3.4.1 方阵的行列式方阵的行列式把一个方阵看作一个行列式,并对其按行列式的规则把一个方阵看作一个行列式,并对其按行列式的规则求值,这个

15、值就称为所对应的行列式的值。在求值,这个值就称为所对应的行列式的值。在MATLABMATLAB中,求方阵中,求方阵A A所对应的行列式的值的函数是所对应的行列式的值的函数是det(A)det(A)。 3.4.2 3.4.2 矩阵的秩与迹矩阵的秩与迹1 1矩阵的秩矩阵的秩矩阵线性无关的行数与列数称为矩阵的秩。在矩阵线性无关的行数与列数称为矩阵的秩。在MATLABMATLAB中,中,求矩阵秩的函数是求矩阵秩的函数是rank(A)rank(A)。2 2矩阵的迹矩阵的迹矩阵的迹等于矩阵的对角线元素之和,也等于矩阵的特矩阵的迹等于矩阵的对角线元素之和,也等于矩阵的特征值之和。在征值之和。在MATLABM

16、ATLAB中,求矩阵的迹的函数是中,求矩阵的迹的函数是trace(A)trace(A)。 3.5 3.5 矩阵的特征值与特征向量矩阵的特征值与特征向量在在MATLABMATLAB中,计算矩阵中,计算矩阵A A的特征值和特征向量的函数是的特征值和特征向量的函数是eig(A)eig(A),常用的调用格式有,常用的调用格式有3 3种:种:(1) E=eig(A)(1) E=eig(A):求矩阵:求矩阵A A的全部特征值,构成向量的全部特征值,构成向量E E。(2) V,D=eig(A)(2) V,D=eig(A):求矩阵:求矩阵A A的全部特征值,构成对角的全部特征值,构成对角阵阵D D,并求,并求A A的特征向量构成的特征向量构成V V的列向量。的列向量。 (3) V,D=eig(A,(3) V,D=eig(A,nobalancenobalance) ):与第:与第2 2种格式类似,种格式类似,但第但第2 2种格式中先对种格式中先对A A作相似变换后求矩阵作相似变换后求矩阵A A的特征值和的特征值和特征向量,而格式特征向量,而格式3 3直接求矩阵直接求矩阵A A的特征值和特征向量。的特征值

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > C/C++资料

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!