MATLAB课程PPT第二章.ppt

上传人:小飞机 文档编号:5439330 上传时间:2023-07-07 格式:PPT 页数:34 大小:263.99KB
返回 下载 相关 举报
MATLAB课程PPT第二章.ppt_第1页
第1页 / 共34页
MATLAB课程PPT第二章.ppt_第2页
第2页 / 共34页
MATLAB课程PPT第二章.ppt_第3页
第3页 / 共34页
MATLAB课程PPT第二章.ppt_第4页
第4页 / 共34页
MATLAB课程PPT第二章.ppt_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《MATLAB课程PPT第二章.ppt》由会员分享,可在线阅读,更多相关《MATLAB课程PPT第二章.ppt(34页珍藏版)》请在三一办公上搜索。

1、第二章 基本数值运算,数值运算是MATLAB最基本、最重要的功能,MATLAB能成为世界上最优秀的数学软件之一,与它的出色的数值运算能力是分不开的。在这章中我们将具体介绍有关MATLAB数值运算方面的知识。,本章的内容分为四节:2.1 创建数值矩阵 2.2 矩阵运算和数组运算 2.3 矩阵函数和数组函数 2.4 矩阵变换,2.1 创建数值矩阵,2.1.1 简单矩阵的生成,在MATLAB 中,可以采用多种不同的方式生成简单矩阵,本节讲述其中最常用的三种:,直接输入矩阵元素 利用用户创建的M文件生成矩阵 生成大矩阵,2.1.1 简单矩阵的生成,从键盘上直接输入矩阵元素,要遵循以下三个原则:(1)矩

2、阵每一行的元素必须用空格或逗号分开:(2)在矩阵中,采用分号或回车表明每一行的结束;(3)整个输入矩阵必须包含在方括号中。,1、直接输入矩阵元素,2.1.1 简单矩阵的生成,2、利用用户创建的M文件生成矩阵 利用创建的M文件生成矩阵的步骤可归纳为:(1)在编辑器窗口输入M文件内容,并将文件保存;(2)运行所创建的文件,即在命令窗口中输入所创建文件的文件名。,在MATLAB中,将小矩阵联接成大矩阵,这就是生成简单矩阵的第三种方法。,2.1.1 简单矩阵的生成,3、生成大矩阵,2.1.2 常用矩阵的生成,常用矩阵生成的命令如下所示:,zeros:生成全0阵ones:生成全1阵eye:生成单位阵ra

3、nd:生成在0,1区间内均匀分布的随机阵randn:生成在-1,1区间内正态分布的随机阵,2.1.2 常用矩阵的生成,1、zeros:生成全0阵 zeros命令的调用格式如下:Y=zeros(n):生成n*n的全0矩阵Y=zeros(m,n):生成m*n的全0矩阵Y=zeros(m n):生成m*n的全0矩阵Y=zeros(d1,d2,d3,):生成d1*d2*d3*的全0矩阵Y=zeros(d1 d2 d3):生成d1*d2*d3*的全0矩阵Y=zeros(size(a):生成一个与矩阵a大小相同的全0矩阵,2.1.2 常用矩阵的生成,2、ones:生成全1阵 ones命令的调用格式如下:Y

4、=ones(n):生成n*n的全1矩阵Y=ones(m,n):生成m*n的全1矩阵Y=ones(m n):生成m*n的全1矩阵Y=ones(d1,d2,d3,):生成d1*d2*d3*的全1矩阵Y=ones(d1 d2 d3):生成d1*d2*d3*的全1矩阵Y=ones(size(a):生成一个与矩阵a大小相同的全1矩阵,2.1.2 常用矩阵的生成,Y=eye(n):生成n*n的单位阵Y=eye(m,n):生成m*n的矩阵,其中对角线元素为1,其它元素为0 Y=eye(m n):生成m*n的矩阵,其中对角线元素为1,其它元素为0Y=eye(size(a):生成一个与矩阵a大小相同的单位阵,3

5、、eye:生成单位阵 eye命令的调用格式如下:,2.1.2 常用矩阵的生成,4、rand:生成一个在区间0,1内均匀分布的随机阵 rand命令的调用格式如下:Y=rand(n):生成一个n*n的随机阵Y=rand(m,n):生成一个m*n的随机阵Y=rand(m n):生成一个m*n的随机阵Y=rand(d1,d2,d3,):生成d1*d2*d3*的随机阵Y=rand(d1 d2 d3):生成d1*d2*d3*的随机阵Y=rand(size(a):生成一个与矩阵a大小相同的随机阵rand:不带任何参数,将产生一个随机数,2.1.2 常用矩阵的生成,5、randn:生成一个在区间-1,1内正态

6、分布的随机阵 randn命令的调用格式如下:Y=randn(n):生成一个n*n的随机阵Y=randn(m,n):生成一个m*n的随机阵Y=randn(m n):生成一个m*n的随机阵Y=randn(d1,d2,d3,):生成d1*d2*d3*的随机阵Y=randn(d1 d2 d3):生成d1*d2*d3*的随机阵Y=randn(size(a):生成一个与矩阵a大小相同的随机阵randn:不带任何参数,将产生一个随机数,2.1.3 向量的生成,在MATLAB中,有多种方法可以生成向量,这里只介绍其中的三种方法:,1、利用“:”冒号生成向量2、利用linspace函数生成向量3、利用logsp

7、ace函数生成向量,2.1.4 向量的生成,1、利用“:”冒号生成向量(均匀等分)利用冒号生成向量的格式有:(1)x=j:k 如果jk,则x为空向量。(2)x=j:i:k 如果i0 且jk,则生成向量 x=j,j+i,j+2i,k;如果i0且jk或i0且jk,则x为空向量.,2.1.4 向量的生成,2、利用linspace函数生成向量(线性等分)linspace函数的调用格式为:(1)x=linspace(a,b)生成有100个元素的行向量x,它的元素在a和b之间线性分布;(2)x=linspace(a,b,n)生成有n个元素的行向量x,它的元素在a和b之间线性分布。,2.1.4 向量的生成,

8、3、利用函数logspace生成向量(对数等分)函数logspace生成对数等分向量,用法如下:(1)x=logspace(a,b)生成有50个元素的对数等分行向量x,且 x(1)=10a,x(50)=10b(2)x=logspace(a,b,n)生成有n个元素的对数等分行向量x,且x(1)=10a,x(n)=10b(3)x=logspace(a,pi)生成有50个元素的对数等分行向量x,且x(1)=10a,x(50)=pi.,2.2.1 矩阵和数组的算术运算 在MATLAB语言中,算数运算即可以使用运算符,也可以使用等效的算数函数。,2.2 矩阵运算和数组运算,算术运算符及其相应的函数表,2

9、.2.1 矩阵和数组的算数运算,算术运算符及其相应的函数表(续),2.2.1 矩阵和数组的算数运算,对于矩阵运算和数组运算来说,加法和减法是相同的,加、减法的执行指令如下:C=A+B 或 C=plus(A,B)C=A-B 或 C=minus(A,B)其中,A和B大小必须相同,因为加减运算是把A和B的对应元素相加减。若A和B的大小不同,MATLAB将自动给出错误信息。若A和B中有一个是标量,MATLAB允许标量和任意大小的矩阵相加减,结果把矩阵中的每一个元素和这个标量相加减。在MATLAB中算术运算符+和-可以作为一元运算符使用,+A就是取A,而-A则是对A中的每个元素取负。(例如:),1、加法

10、和减法运算,2.2.1 矩阵和数组的算数运算,矩阵乘:C=A*B 或 C=mtimes(A,B)数组乘:C=A.*B 或 C=times(A,B)矩阵乘A*B是矩阵A和B的线性代数乘,对于非标量的A和B,矩阵A的列数必须等于矩阵B的行数;标量可以和任意大小的矩阵相乘。数组乘A.*B是数组A和B的对应元素相乘,除非其中一个是标量,否则A和B必须有相同大小。,2、乘法运算 矩阵乘和数组乘的运算命令分别是:,2.2.1 矩阵和数组的算数运算,3、矩阵求逆 只有方阵才有逆矩阵,方阵的求逆函数为:b=inv(a)该函数返回方阵a的逆阵,若a是接近奇异的,则回给出警告信息。4、除法运算 MATLAB中定义

11、了两种除法命令:左除和右除,而且两者不相等。(1)矩阵除法,2.2.1 矩阵和数组的算数运算,(1)矩阵除法 矩阵除法的运算命令是:矩阵左除:C=AB 或 C=mldivide(A,B)矩阵右除:C=A/B 或 C=mrdivide(A,B)(2)数组除法 数组除法的运算命令是:数组左除:C=A.B 或 C=ldivide(A,B)数组右除:C=A./B 或 C=rdivide(A,B)数组左除A.B是数组B和A中对应元素相除,即B(i,j)/A(i,j);数组右除A./B是数组A和B中对应元素相除,即A(i,j)/B(i,j)。,2.2.1 矩阵和数组的算数运算,5、乘方运算 矩阵乘方和数组

12、乘方运算的命令分别是:矩阵乘方:C=Ap 或 C=mpower(A,p)数组乘方:C=A.B 或 C=power(A,B)要求:A是一个方阵,p是一个标量。Ap的意思是矩阵A的p次方,若p是整数,则Ap是矩阵A自乘p次;若p是负整数,则先对A求逆,然后将其逆自乘p次。若p不是整数,则涉及到特征值和特征向量的求解问题。例如:若已知矩阵A的特征值矩阵D,特征向量矩阵V,则:Ap=V*D.p/V(D是对角阵,D.p是数组的乘方),2.2.1 矩阵和数组的算数运算,数组的乘方A.B是矩阵A和B对应元素的乘方,即A(i,j)的B(i,j)次方。如果是p标量,A是矩阵,p.A 是p的A(i,j)次方,而A

13、.p 则是矩阵A每个元素A(i,j)的p次方。,5、乘方运算,2.2.2 数组的关系运算和逻辑运算,在MATLAB中关系运算、逻辑运算和算术运算的优先权顺序是:算术运算 关系运算 逻辑运算 MATLAB中关系运算符有:,MATLAB中逻辑运算符有:&:与|:或:非,2.3 矩阵函数和数组函数,2.3.1 基本矩阵函数,norm(A):矩阵或向量的范数rank(A):矩阵A的秩det(A):矩阵A的行列式的值trace(A):矩阵A的迹(即对角元素之和)dot(A,B):矩阵A和B的点积inv(A):矩阵A的逆cond(A):矩阵A的条件数eig(A):矩阵A的特征值poly(A):矩阵A的特征

14、多项式的系数polyeig(A):矩阵A的特征值对应的特征向量,基本矩阵函数指令如下所示:,2.3.1 基本矩阵函数,expm(A):矩阵A的指数logm(A):矩阵A的对数X=sqrtm(A):X是矩阵A的平方根,即X*X=A的解funm 函数,它的调用格式是:F=funm(A,function)其中,A必须是方阵,function是按数组运算规则进行运算的函数名。例:funm(A,sqrt)等同于sqrtm(A)。若有专用的矩阵函数,一般不必用函数进行计算。,2.3.2 基本数组函数,(1)三角和超越函数:(函数及其功能见下表),2.3.2 基本数组函数,(2)指数和对数函数,指数和对数函

15、数及其功能见下表:,2.3.2 基本数组函数,(3)复数函数,复数运算函数及其功能见下表:,2.3.2 基本数组函数,(4)数值处理函数,数值处理函数及其功能见下表:,2.4 矩阵变换,常用的矩阵变换函数包括矩阵结构变换函数和矩阵的产生和提取函数。2.4.1 矩阵的结构变换函数,矩阵的结构变换有转置、翻转和变维等,下面是有关这方面的函数:矩阵转置:指令是矩阵翻转:函数 fliplr(A)和 flipud(A)矩阵旋转:函数rot(A)和 rot(A,n)矩阵变维:函数reshape(A,m,n),2.4.2 矩阵的产生和提取函数,(1)diag函数,diag函数用于产生对角矩阵或提取对角线元素

16、,其用法为:,X=diag(v,k):当v是有n个元素的向量时,返回方阵X,它的大小为n+abs(k),向量v的元素位于X的第k条对角线上。X=diag(v):将向量v的元素放在矩阵X的主对角线上;V=diag(X,k):对于矩阵X,返回列向量v,它的元素由X的第k条对角线的元素构成。V=diag(X):返回X的主对角线元素;,2.4.2 矩阵的产生和提取函数,(2)提取上下三角阵的函数:,函数tril 用于提取下三角矩阵,其用法如下:,L=tril(X):返回矩阵X的下三角部分元素,其余部分用“0”补齐。L=tril(X,k):返回矩阵X的第k条对角线以下的元素,其余部分用“0”补齐。函数triu用于提取上三角矩阵,其用法如下:U=triu(X):返回矩阵X的上三角部分元素,其余部分用“0”补齐。U=triu(X,k):返回矩阵X的第k条对角线以上的元素,其余部分用“0”补齐。,2.5 小结,创建数值矩阵矩阵运算和数组运算矩阵函数和数组函数矩阵变换,本章内容包括:,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号