版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2020/12/19,第二章 数值计算功能,1,第二章 数值计算功能,教学目标 教学重点 教学过程,2020/12/19,第二章 数值计算功能,2,教学目标,本章将介绍MATLAB 7的数值计算功能,包括MATLAB 7的向量和数组,并介绍它们之间的运算。 通过对本章的学习,可以编写简单且功能完善的MATLAB 7程序,从而解决各类基本问题,用户可以通过本章逐步掌握MATLAB 7的数值计算方法。,2020/12/19,第二章 数值计算功能,3,教学重点,向量的运算方法 多项式的运算 关系和逻辑运算,2020/12/19,第二章 数值计算功能,4,教学过程,向量及其运算方法 数组及其运算方法
2、多项式的创建和运算方法 关系和逻辑运算,2020/12/19,第二章 数值计算功能,5,1.向量及其运算,向量的生成 在命令窗口中直接输入向量。 等差元素向量的生成 。,2020/12/19,第二章 数值计算功能,6,1.1 在命令窗口中直接输入向量,在MATLAB 7中,生成向量最简单的方法就是在命令窗口中按一定格式直接输入。 输入的格式要求:向量元素用“ ”括起来,元素之间用空格、逗号或者分号相隔。 需要注意的是,用空格或逗号生成行向量;用分号生成列向量。,例:输入以下三个向量,比较结果,判断那个是行向量,那个是列向量?。 a1=15,21,27,93,101 a2=15 21 27 93
3、 101 a3=15;21;27;93;101,2020/12/19,第二章 数值计算功能,7,1.1 在命令窗口中直接输入向量,行、列向量转置 使用命令“”,可以对向量进行转置操作。如: a1, a2, a3,2020/12/19,第二章 数值计算功能,8,1.2 等差元素向量的生成,当向量的元素过多,同时向量各元素有等差的规律,此时采用直接输入法将过于繁琐。 针对该种情况 ,可以使用冒号(:) 和linspace函数来生成等差元素向量。,2020/12/19,第二章 数值计算功能,9,1.2 等差元素向量的生成,冒号(:)生成法:基本格式为Vec=Vec0:n:Vecn,其中Vec表示生成
4、的向量,Vec0表示第一个元素,n表示步长,Vecn表示最后一个元素。 例:输入如下命令,并按Enter键确认。 vec1=3:3:15 vec2=30:-5:10 思考:命令 a=3:10的计算结果?,提示:Matlab 默认的步长n为1。,2020/12/19,第二章 数值计算功能,10,1.2 等差元素向量的生成,使用linspace 函数:基本格式为Vec=linspace(Vec0, Vecn,n),其中Vec表示生成的向量,Vec0表示第一个元素,Vecn表示最后一个元素,n表示生成向量元素的个数。 例:输入如下命令,并按Enter键确认。 vec1= linspace(3, 15
5、,5) 思考:命令vec2= linspace(1, 100)的计算结果?,提示: Matlab 默认的向量元素个数n为100。,2020/12/19,第二章 数值计算功能,11,2 向量的基本运算,向量与数的四则运算 向量与向量之间的加减运算,2020/12/19,第二章 数值计算功能,12,2.1 向量与数的四则运算,向量与数的加法(减法):向量中的每个元素与数的加法(减法)运算。 例:输入以下命令。 vec1=80:-9:10,vec1+101,2020/12/19,第二章 数值计算功能,13,2.1 向量与数的四则运算,向量与数的乘法(除法):向量中的每个元素与数的乘法(除法)运算。
6、例:输入以下命令。 vec1=linspace(1,50,5), vec1*5,进行除法运算时,向量只能作为被除数,数只能作为除数。 比较 vec1/2 2/vec1,2020/12/19,第二章 数值计算功能,14,2.2 向量与向量之间的加减运算,向量与向量的加法(减法)运算:向量中的每个元素与另一个向量中相对应的元素的加法(减法)运算。 例:输入以下命令。 vec1=linspace(200,500,7) vec2=linspace(900,600,7) vec3=vec1+vec2,2020/12/19,第二章 数值计算功能,15,3 数组及其运算,在Matlab中数组可以看作是行向量
7、。 数组运算无论对于哪种运算操作都是对元素逐个进行的。,2020/12/19,第二章 数值计算功能,16,3.1 数组寻址,通过对数组下表的访问来实现数组寻址。 如 A= (1:5:26),A(1),A(4) %访问单个元素 若一次访问一块数据,可使用冒号(:),如访问A中的第2到第6个元素,可采用如下格式: A (2:6) 思考:命令 A(6:-2:1) 选择了数组A中哪几个数据?,2020/12/19,第二章 数值计算功能,17,3.1 数组寻址,如要访问多个不连续的元素,可以使用中括号进行操作,如访问A中1、3、4和5号元素,可以使用如下操作: A(1 3 4 5) 此外,还可使用end
8、参数来表示数组的结尾。如 A(4:end),2020/12/19,第二章 数值计算功能,18,3.2 数组的基本数值运算,包括数组的加法(减法) ,数组的乘法(除法),数组的乘方。 简单来说,数组运算符由矩阵运算符前面增加一点“.”表示,如“.*”, “./”, “.”。,2020/12/19,第二章 数值计算功能,19,数组运算举例,加减法 X=1 4 7; Y=2 5 8; Z=X-Y Z = -1 -1 -1 V=X+Y V = 3 9 15,乘方 X=1 4 7; Y=2 5 8; Z=X.Y Z = 1 1024 5764801,乘法(除法) X=1 4 7; Y=2 5 8; Z=
9、X.*Y V=X./Y Z = 2 20 56 V = 0.5 0.8 0.875,数组运算无论对于哪种运算操作都是对元素逐个进行的。 数组间要有相同的维数。,2020/12/19,第二章 数值计算功能,20,数组运算举例,思考:x=3 6 9;z=x.3 计算结果。 思考:x=1 2 3;z=3.x 计算结果。,2020/12/19,第二章 数值计算功能,21,4 多项式,多项式的创建 多项式的运算 关系和逻辑运算,2020/12/19,第二章 数值计算功能,22,4.1 多项式的创建,在Matlab中,对于多项式 P=a0 xn+a1xn-1+a2xn-2+an 约定可以用向量P=a0,
10、a1, a2, an 表示。 可以使用直接输入系数向量法创建多项式。,2020/12/19,第二章 数值计算功能,23,直接输入系数向量创建多项式,直接输入向量,MATLAB 7将按降幂自动把向量的元素分配给多项式各项的系数。而该向量可以是行向量,也可以是列向量 。,例:创建多项式3x5+5x4+x2+12 P=3 5 0 1 0 12; y=poly2sym(P) disp(y),创建步骤:首先创建系数向量,注意缺少的各项在向量中以0代替;然后使用poly2sym函数将该向量转换为多项式。,2020/12/19,第二章 数值计算功能,24,直接输入系数向量创建多项式,例:创建多项式3x4+4
11、x2+x P=3 0 4 1 0; y=poly2sym(P) disp(y),2020/12/19,第二章 数值计算功能,25,4.2 多项式的运算,多项式的求值 求多项式的根 多项式的四则运算,2020/12/19,第二章 数值计算功能,26,多项式的求值,MATLAB 7提供函数polyval来对多项式进行求值,以数组为计算单位。 Y=polyval(P,X)命令计算以向量P为系数的多项式在点X的值。即计算,2020/12/19,第二章 数值计算功能,27,多项式的求值,例:计算多项式x4-20 x3-16x2+480 x+98 在x=4时的值。 p=1 -20 -16 480 98 x
12、=4 polyval(p,x),2020/12/19,第二章 数值计算功能,28,求多项式的根,使用roots函数可以求出该多项式的根。其使用格式为roots(p)。 例:使用roots函数求多项式x4+3x2+12x-7的根 。,解:p=1 0 3 12 -7; roots(p),2020/12/19,第二章 数值计算功能,29,多项式的四则运算,加法和减法 如果两个多项式的向量阶数相同,标准的数组加法有效。 例:用命令表示多项式8x3+2x2+2x+8与多项式6x3+x2+6x+1相加。,解: a=8 2 2 8,b=6 1 6 1 c=a+b Y3=poly2sym(c) Y3 = 14
13、*x3+3*x2+8*x+9,2020/12/19,第二章 数值计算功能,30,多项式的四则运算,当两个多项式的向量阶数不同时,需要在低阶多项式的前边补0,使得它与相加的高阶多项式有相同的阶数。 例:用命令表示多项式8x3+2x2+2x+8与多项式6x2+6x+1相加。,解: a=8 2 2 8,b=6 6 1 c=a+0 b Y3=poly2sym(c),2020/12/19,第二章 数值计算功能,31,多项式的四则运算,乘法 使用conv函数对多项式进行乘法运算。 格式为c=conv(a,b),其中a和b为两个多项式的系数向量,c为相乘所生成的多项式的系数向量。, a=1 2 3 4,b=
14、5 6 7 8; Y1=poly2sym(a) Y2=poly2sym(b) c=conv(a,b); Y=poly2sym(c),2020/12/19,第二章 数值计算功能,32,多项式的四则运算,除法 在MATLAB 7语言中,使用deconv函数来完成该项功能。 调用格式 q=deconv(a,b) q,r=deconv(a,b) q,r 分别表示商多项式和余多项式;a,b分别表示被除多项式和除多项式。, a=1 2 3 4,b=5 6 7 8; c=conv(a,b) d=deconv(c,a) d,e=deconv(c,a) f=deconv(c,b) Y=poly2sym(f),2
15、020/12/19,第二章 数值计算功能,33,多项式的四则运算,求导和积分 在MATLAB 7语言中,分别使用polyder函数和polyint函数来求多项式的导数与积分。 -命令格式: polyder(p) %求p的微分 polyder(a,b) %求多项式a,b乘积的微分 polyint(p,k) %求多项式p的积分,以K为积分常数项 polyint(p) %求多项式p的积分,以K=0为积分常数项,2020/12/19,第二章 数值计算功能,34,多项式的四则运算,例: p=3 1 8 8, a=9 4 9 4, b=8 4 6 7, q=polyder(p) %对多项式求导 p1=po
16、lyint(q) %对多项式积分 w=polyder(a,b) %求多项式a,b乘积的微分 t=polyint(q,1) %对多项式q积分,积分常数项等于1,2020/12/19,第二章 数值计算功能,35,5 关系和逻辑运算,除了传统的数值运算,Matlab 还支持关系和逻辑运算。 作为所有关系和逻辑表达式的输入,MATLAB把任何非零数值当作真,而只把零当作假。 所有关系和逻辑表达式的输出,当结果为真时输出为1;当结果为假时输出为0。,2020/12/19,第二章 数值计算功能,36,5 关系和逻辑运算,关系操作符 逻辑操作符 各种运算符的优先级,2020/12/19,第二章 数值计算功能
17、,37,关系操作符,关系操作符用来比较两个同样大小的数组,或用来比较一个数组和一个标量。,2020/12/19,第二章 数值计算功能,38,关系运算符运用,例:判断以下命令的结果。 A=linspace(1,10,10);B=linspace(10,1,10); C=AB % 比较A和B D=A=6 % 比较A和6 E=A=B % 比较A和B是否有相等的元素,思考:“=”与“=”的不同作用? 如命令a=3 与a=3,a=4 的不同结果?,2020/12/19,第二章 数值计算功能,39,逻辑操作符,逻辑操作符的功能在于使用“与”或者是“或”的功能将多个表达式组合在一起,或是对关系表达式取反。,
18、2020/12/19,第二章 数值计算功能,40,逻辑操作符应用,例:判断以下命令的结果。 A=linspace(1,10,10);B=linspace(10,1,10); C=A4 2 2 2; 3 3 3, matrix+2, matrix-2, matrix*2,matrix/2,2020/12/19,第二章 数值计算功能,49,矩阵的基本数值运算,矩阵与矩阵的加法(减法):即是指矩阵内对应各元素之间的加法(减法)运算。 矩阵必须具有相同的阶数。,2020/12/19,第二章 数值计算功能,50,矩阵的基本数值运算,例:已知matrix=1 2 1 2; 3 4 3 4; 5 6 5 6
19、; 7 8 7 8,m1= 2 3 4 5; 3 4 5 6; 5 6 7 8; 7 8 9 10, m2= 3 4 5; 4 5 6; 6 7 8。试计算matrix+ m1和matrix- m2。,解: matrix=1 2 1 2; 3 4 3 4; 5 6 5 6; 7 8 7 8;m1= 2 3 4 5; 3 4 5 6; 5 6 7 8; 7 8 9 10; m2= 3 4 5; 4 5 6; 6 7 8; matrix+m1, matrix-m2,2020/12/19,第二章 数值计算功能,51,矩阵的基本数值运算,矩阵与矩阵乘法使用运算符“*”。如果A是一个ms阶矩阵,B是一个
20、sn矩阵,那么矩阵A与矩阵B的乘积是一个mn矩阵。 即只有第一个矩阵(左矩阵)的列数等于第二个矩阵(右矩阵)的行数时,两个矩阵的乘积才有意义。,2020/12/19,第二章 数值计算功能,52,矩阵的基本数值运算,例 矩阵乘法运算 已知矩阵A=1 2 1; 3 4 3; 5 6 5; 7 8 7, B=4 4 4 4; 2 2 2 2; 3 3 3 3,计算C=A*B。 C=A*B C = 11 11 11 11 29 29 29 29 47 47 47 47 65 65 65 65,2020/12/19,第二章 数值计算功能,53,矩阵的基本数值运算,例 矩阵乘法运算 已知矩阵A=1 2;
21、3 4; 5 6; 7 8, B=4 4 4; 2 2 2; 3 3 3,计算C=A*B。 C=A*B ? Error using = * Inner matrix dimensions must agree.,2020/12/19,第二章 数值计算功能,54,特殊矩阵的生成,2020/12/19,第二章 数值计算功能,55,特殊矩阵的生成,零矩阵和全1矩阵 A=zeros(m,n),生成m行和n列的零矩阵。 如果存在已知矩阵B,A=zeros(size(B),生成与B维数相同的零矩阵。 A=zeros(m),生成m行和m列的零方阵。 全1矩阵的生产与零矩阵类似。 例:如命令A=zeros(3
22、,4), B=zeros(3), C=ones(3,4) D=ones(3),2020/12/19,第二章 数值计算功能,56,特殊矩阵的生成,随机矩阵生成 随机矩阵指矩阵元素由随机数构成的矩阵。 rand(N)命令生成NN阶随机矩阵,生产矩阵的元素值在(0,1)之间。 rand(M,N)命令生成MN阶随机矩阵,生产矩阵的元素值在(0,1)之间。 例:如命令A=rand(3,4), B=rand (3),2020/12/19,第二章 数值计算功能,57,特殊矩阵的生成,魔术矩阵生成 魔术矩阵是一个方阵,并且方阵的每一行、每一列以及每条主对角线的元素之和都相同(2阶方阵除外)。 magic(N)
23、生成NN阶的魔术矩阵。N0且N=2除外。 例:如命令A=magic (3) A = 8 1 6 3 5 7 4 9 2,2020/12/19,第二章 数值计算功能,58,矩阵的结构操作,矩阵的标识 矩阵的扩充 矩阵的部分删除 矩阵的修改 矩阵的旋转和翻转,2020/12/19,第二章 数值计算功能,59,矩阵的标识,单个元素的标识 对矩阵A,要标识其第i行、第j列的元素,可以直接使用命令A(i,j)进行操作。 A=magic(4) A(2,4) %提取矩阵A中第2行第4列的元素,2020/12/19,第二章 数值计算功能,60,矩阵的标识,向量的标识方式 要标识矩阵中某些行或列,或是标识行和列
24、中的一些元素,可以用A(vr,vc)命令进行操作,具体格式: A(i:j,:)表示向量的第i行到第j行。 A(:,i:j)表示向量的第i列到第j列。 A(i:j,m1,m2)表示向量的第i行到第j行中的m1、m2列的元素。 A(m1,m2, i:j)表示向量的第i列到第j列中的m1、m2行的元素。,2020/12/19,第二章 数值计算功能,61,矩阵的标识,例: A=magic(5) A(2:4,:) %提取矩阵中第2行到第4行的元素 A(:,1 3) %提取矩阵中第1列和第3列的元素 A(1:2,2 4) %提取矩阵中第1行到第2行中第2列和第4列的元素 思考:命令 A(2 4,1:3)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 粉末冶金模具工操作知识能力考核试卷含答案
- 循环冷却水操作工岗前安全生产规范考核试卷含答案
- 民族拉弦弹拨乐器制作工持续改进竞赛考核试卷含答案
- 自动相关监视系统机务员班组评比竞赛考核试卷含答案
- 排土机司机复试能力考核试卷含答案
- 贵金属精炼工操作技能测试考核试卷含答案
- 美容美发器具制作工岗前安全实操考核试卷含答案
- 2024年甘南县招教考试备考题库附答案
- 2024年随州市特岗教师招聘真题题库附答案
- 航空运输服务规范与操作手册(标准版)
- 新媒体数据分析与应用学习通课后章节答案期末考试题库2023年
- 老年人综合能力评估实施过程-评估工作文档及填写规范
- cobas-h-232心肌标志物床边检测仪操作培训
- 第六讲通量观测方法与原理
- 林规发防护林造林工程投资估算指标
- GB/T 23821-2022机械安全防止上下肢触及危险区的安全距离
- GB/T 5563-2013橡胶和塑料软管及软管组合件静液压试验方法
- GB/T 16895.6-2014低压电气装置第5-52部分:电气设备的选择和安装布线系统
- GB/T 11018.1-2008丝包铜绕组线第1部分:丝包单线
- GA/T 765-2020人血红蛋白检测金标试剂条法
- 武汉市空调工程毕业设计说明书正文
评论
0/150
提交评论