(精品)第二讲 基本运算.ppt

上传人:s****8 文档编号:69827431 上传时间:2023-01-09 格式:PPT 页数:136 大小:606KB
返回 下载 相关 举报
(精品)第二讲 基本运算.ppt_第1页
第1页 / 共136页
(精品)第二讲 基本运算.ppt_第2页
第2页 / 共136页
点击查看更多>>
资源描述

《(精品)第二讲 基本运算.ppt》由会员分享,可在线阅读,更多相关《(精品)第二讲 基本运算.ppt(136页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 第二讲 MATLAB的基本运算 matlab 具有出色的数值计算能力,占据世界上数值计算软件的主导地位数据类型n nMATLAB 7.3MATLAB 7.3定义了定义了1515种基本的数据类型,包括整型、浮种基本的数据类型,包括整型、浮点型、字符型和逻辑型等,用户甚至可以定义自己的数据点型、字符型和逻辑型等,用户甚至可以定义自己的数据类型。类型。矩阵和数组矩阵和数组MATLABMATLAB提供了不同类型的数据提供了不同类型的数据MATLABMATLAB专门以矩阵作为基本的运算单位专门以矩阵作为基本的运算单位MATLABMATLAB提供了关于数组和矩阵不同的运算方法提供了关于数组和矩阵不同的运

2、算方法MATLABMATLAB提供了一种计算机高级编程语言提供了一种计算机高级编程语言MM语语言言在M语言中最常用的数据类型表现手段和形式就是变量和常量M语言的基本处理单位是数值矩阵或者数值向量有关概念变量和常量变量和常量数组数组向量向量矩阵矩阵常数和变量n n1.常数n n2.变量n nMATLABMATLAB的变量命名规则如下:的变量命名规则如下:n n变量名区分字母的大小写。例如,变量名区分字母的大小写。例如,“a”a”和和“A”A”是不同的变量。是不同的变量。n n变量名不能超过变量名不能超过6363个字符,第个字符,第6363个字符后的字符个字符后的字符被忽略。被忽略。n n变量名必

3、须以字母开头,变量名的组成可以是任变量名必须以字母开头,变量名的组成可以是任意字母、数字或者下划线,但不能含有空格和标意字母、数字或者下划线,但不能含有空格和标点符号(如,。点符号(如,。%等)。等)。n n关键字(如关键字(如if if、whilewhile等)不能作为变量名。等)不能作为变量名。变量和常量变量和常量变量:程序运行过程中需要改变数值的量变量:程序运行过程中需要改变数值的量每一个变量都具有一个名字每一个变量都具有一个名字变量在内存中占据一定的空间变量在内存中占据一定的空间变量必须以字母开头,后面可以是字母、数字变量必须以字母开头,后面可以是字母、数字或者下划线的组合或者下划线的

4、组合MATLABMATLAB仅识别前面仅识别前面N N个字符,在不同的操作个字符,在不同的操作系统下可以识别的字符个数不同系统下可以识别的字符个数不同常量:在程序运行的过程中不需要改变数值的量常量:在程序运行的过程中不需要改变数值的量常量具有名字常量具有名字在在MM语言中不存在常量的定义,只在语言中不存在常量的定义,只在MATLABMATLAB中提供一些常用的常数作为常量中提供一些常用的常数作为常量 MATLAB的常量的常量常常 量量说说 明明ansans最近运算的结果最近运算的结果epseps浮点数相对精度,定义为浮点数相对精度,定义为1.01.0到最近浮点数的距离到最近浮点数的距离real

5、maxrealmaxMATLABMATLAB能表示的实数的最大绝对值能表示的实数的最大绝对值realminrealminMATLABMATLAB能表示的实数的最小绝对值能表示的实数的最小绝对值pipi圆周率圆周率 的近似值的近似值3.14159263.1415926i i,j j复数的虚部数据最小单位复数的虚部数据最小单位infinf 或或 InfInf表示正无大表示正无大,定义为定义为1/01/0NaNNaN或或nannan非数,它产生于非数,它产生于0 0 ,0/00/0,/等运算等运算数组是有序数据的集合数组的每一个成员(元素)都属于同一种数据类型,它们使用同一个数组名称和不同的下标来唯

6、一确定数组中的成员(元素)。在MATLAB中元胞数组比较特殊,数组中的元素可以是不同的数据类型。向量向量从编程语言的角度上看,向量其实就是一维数组从编程语言的角度上看,向量其实就是一维数组从数学的角度上看,向量就是从数学的角度上看,向量就是1N1N或者或者N1N1的矩的矩阵,即行向量或列向量阵,即行向量或列向量 b b1 1,1 1 b b2 2,1 1 B=b B=b3 3,1 1 和和B=B=b b1 1,1 1 b b1 1,2 2 b b1 1,3 3 b b1 1,n n b bn n,1 1矩阵矩阵是用一对圆括号或方括号括起来,符合一是用一对圆括号或方括号括起来,符合一定规则的数学

7、对象定规则的数学对象 b b11 11 b b12 12 b b1313 B=b B=b21 21 b b22 22 b b23 23 b b31 31 b b32 32 b b3333对于编程语言,矩阵就是二维的数组对于编程语言,矩阵就是二维的数组创建向量创建向量1.1.在命令窗口逐个输入元素在命令窗口逐个输入元素 例例1 1:X=1 3 pi 3+5i X=1 3 pi 3+5i 2.2.利用冒号运算符创建向量利用冒号运算符创建向量X=J:INC:KX=J:INC:KJ J为为向量的第一个元素,向量的第一个元素,K K为向量的最后一个元素为向量的最后一个元素,INCINC为向量元素递增的步

8、长为向量元素递增的步长J J、INCINC、K K之间必须用之间必须用“:”:”间隔间隔若忽略若忽略INCINC,则默认的递增步长为则默认的递增步长为1 1INCINC可以为正数,也可以为负数可以为正数,也可以为负数 例例2 2:X=1:10X=1:10 例例3 3:X=1:0.01:1.1X=1:0.01:1.1创建向量(续)创建向量(续)3.3.定数线性采样法:在设定的定数线性采样法:在设定的“总点数总点数”下,均匀采下,均匀采 样生成向量(一维样生成向量(一维“行行”数组)数组)使用函数使用函数linspacelinspace 和和logspacelogspacelinspacelins

9、pace是用来创建线性间隔向量的函数是用来创建线性间隔向量的函数 linspacelinspace 的的基本语法基本语法 X=linespace(X1X=linespace(X1,X2X2,n)n)X1 X1为向量的第一个元素,为向量的第一个元素,X2X2为向量的最后一个元素,为向量的最后一个元素,n n为向量具有的元素个数,函数将根据为向量具有的元素个数,函数将根据n n的数值平均的数值平均计算元素之间的间隔,间隔计算公式为计算元素之间的间隔,间隔计算公式为 若在表达式中忽略参数若在表达式中忽略参数n n,则系统默认地将向量设置则系统默认地将向量设置为为100100个元素个元素创建向量(续)

10、创建向量(续)例例4 4 使用使用linspacelinspace函数创建向量函数创建向量X=linspace(1X=linspace(1,2 2,5)5)X=X=1.0000 1.2500 1.5000 1.7500 1.0000 1.2500 1.5000 1.7500 2.00002.0000创建向量(续)创建向量(续)logspacelogspace是用来创建对数空间的向量是用来创建对数空间的向量logspacelogspace 的的基本语法基本语法 X=logspace(X1X=logspace(X1,X2X2,n)n)该函数创建的向量第一个元素值为该函数创建的向量第一个元素值为10

11、10X1X1,而,而最后一个元素的数值为最后一个元素的数值为1010X2X2,n n为向量的元为向量的元素个数,元素彼此之间的间隔按照对数空间素个数,元素彼此之间的间隔按照对数空间的间隔设置的间隔设置若在表达式中忽略参数若在表达式中忽略参数n n,则系统默认地将则系统默认地将向量设置为向量设置为5050个元素个元素创建向量(续)创建向量(续)例例5 5 使用使用logspacelogspace函数创建向量函数创建向量X=logspace(1X=logspace(1,3 3,3)3)X=X=10 100 1000 10 100 1000创建向量(续创建向量(续)创建列向量创建列向量使用分号作为元

12、素与元素之间的间隔使用分号作为元素与元素之间的间隔使用转置运算符使用转置运算符“”例例6 6:A=1A=1;2 2;3 3;4 4;5 5;66或或A=(1:6)A=(1:6)创建矩阵创建矩阵n n矩阵的元素可以为任意矩阵的元素可以为任意MATLABMATLAB数据类型数据类型的数值或对象的数值或对象n n创建矩阵的方法创建矩阵的方法 直接输入法直接输入法 使用数组编辑器使用数组编辑器 直接输入法直接输入法规则:规则:整个矩阵的元素必须用整个矩阵的元素必须用 括住括住同一行的矩阵元素之间必须用逗号或空格分隔同一行的矩阵元素之间必须用逗号或空格分隔在在 内矩阵的行与行之间必须用分号分隔,也可以内

13、矩阵的行与行之间必须用分号分隔,也可以在需要分行的地方用回车键间隔在需要分行的地方用回车键间隔矩阵元素可以是任何矩阵元素可以是任何MATLABMATLAB表达式表达式 ,可以是实数,可以是实数 ,也可以是复数,复数用也可以是复数,复数用i i,j j 输入输入 例例2-72-7:A=1A=1,2 2,3 3;4 4,5 5,6 6;7 7,8 8,9 9 X=2 pi/2 X=2 pi/2;sqrt(3)3+5i sqrt(3)3+5i n n逗号和分号的作用逗号和分号的作用逗号和分号可作为指令间的分隔符,逗号和分号可作为指令间的分隔符,MATLABMATLAB允允许多条语句在同一行出现。许多

14、条语句在同一行出现。分号如果出现在指令后,屏幕上将不显示结果。分号如果出现在指令后,屏幕上将不显示结果。只要是赋过值的变量,不管是否在屏幕上显示过,只要是赋过值的变量,不管是否在屏幕上显示过,都会存储在工作空间中,以后可随时显示或调用。都会存储在工作空间中,以后可随时显示或调用。变量名尽可能不要重复,否则会覆盖变量名尽可能不要重复,否则会覆盖 。直接输入法(续)直接输入法(续)例例8 8:A=1,2,3;4,5,6;7,8,9,X=2 A=1,2,3;4,5,6;7,8,9,X=2 pi/2;sqrt(3)3+5ipi/2;sqrt(3)3+5iA=A=1 2 3 1 2 3 4 5 6 4

15、5 6 7 8 9 7 8 9X=X=2.0000 1.5708 2.0000 1.5708 1.7321 3.0000+5.0000i 1.7321 3.0000+5.0000i A=1,2,3;4,5,6;7,8,9;X=2 pi/2;sqrt(3)A=1,2,3;4,5,6;7,8,9;X=2 pi/2;sqrt(3)3+5i3+5iX=X=2.0000 1.5708 2.0000 1.5708 1.7321 3.0000+5.0000i 1.7321 3.0000+5.0000i直接输入法(续)直接输入法(续)n n冒号的作用冒号的作用 用于生成等间隔的向量,默认间隔为用于生成等间隔的

16、向量,默认间隔为1 1。例例9 9:y=1:3y=1:3;4:64:6;7:97:9直接输入法(续)直接输入法(续)数组编辑器n调用数组编辑器的方法n选择工作空间浏览器中的变量,然后单击工作栏中的按钮n在工作空间浏览器中直接双击变量n选择工作空间浏览器中的变量,然后单击快捷菜单命令Openn在MATLAB命令行窗口中键入指令“openvar 变量名”数组编辑器仅能编辑、修改向量或矩阵,对于多维数组,数组编辑器只能察看数组的内容,不能修改多维数组的元素数组编辑器(续)n利用数组编辑器完成矩阵的编辑步骤n在命令行窗口中创建一个新的变量,为其赋任意数值 如:A=1n打开数组编辑器,在数组编辑器中加载

17、相应的变量n在数组编辑器的工具栏中,修改矩阵的行数和列数,双击任意元素修改矩阵的元素值 矩阵的修改矩阵的修改直接修改直接修改 在命令行窗口中,可用在命令行窗口中,可用键找到所要修改的矩阵,用键找到所要修改的矩阵,用键移键移动到要修改的矩阵元素上即可修改动到要修改的矩阵元素上即可修改。在数组编辑器中,可用在数组编辑器中,可用、键找到所要修改的矩键找到所要修改的矩阵元素进行修改阵元素进行修改。指令修改:用指令修改:用A(A(,)=)=来修改。来修改。例例1010:A=1 2 0;3 0 5;7 8 9 A=1 2 0;3 0 5;7 8 9 A=1 2 0 A=1 2 0 3 0 5 3 0 5

18、7 8 9 7 8 9A(3,3)=0A(3,3)=0 A=1 2 0 A=1 2 0 3 0 5 3 0 5 7 8 7 8 0 0 矩阵元素的访问矩阵元素的访问访问矩阵的元素需要使用矩阵元素的索引使用矩阵元素的行列全下标形式A(*,*)使用全下标形式访问矩阵元素的方法简单、直接,同线性代数的矩阵元素的概念一一 对应使用矩阵元素的单下标形式A(*)矩阵元素的单下标是矩阵元素在内存中存储 的序列号,一般地,同一个矩阵的元素在连 续的内存单元中(元素的排列以列元素优先)矩阵元素的访问(续)矩阵元素的访问(续)4 1 110 5 51 9 96 13132 17178 2 22 6 69 1010

19、4 14147 18187 3 35 7 77 11111 15155 19190 4 43 8 84 12125 16168 2020A(1:4,5)A(:,5)A(:,end)A(17:20)A(2:4,2:3)A(2 3 4,2 3)A(1,2)A(5)例13 A=矩阵元素的访问(续)矩阵元素的访问(续)使用索引访问矩阵元素的方法矩阵元素的访问矩阵元素的访问说说 明明A(i,j)A(i,j)访问矩阵访问矩阵A A的第的第i i行第行第j j列上的元素,其中列上的元素,其中i i和和j j为标为标量量A(I,J)A(I,J)访问由向量访问由向量I I和和J J指定的矩阵指定的矩阵A A中的

20、元素中的元素A(i,:)A(i,:)访问矩阵访问矩阵A A中第中第i i行的所有元素行的所有元素A(:,j)A(:,j)访问矩阵访问矩阵A A中第中第j j列的所有元素列的所有元素A(A(:):)访问矩阵访问矩阵A A中的所有元素,将矩阵看成一个向量中的所有元素,将矩阵看成一个向量A(l)A(l)使用单下标的方式访问矩阵元素,其中使用单下标的方式访问矩阵元素,其中l l为标量为标量A(L)A(L)访问由向量访问由向量L L指定的矩阵指定的矩阵A A的元素,向量的元素,向量L L中的元中的元素为矩阵元素的单下标数值素为矩阵元素的单下标数值 在索引矩阵或数组的元素时,若直接用冒号运算符且不给任何的

21、参数,则表示选择该行或列,或维中的所有元素矩阵元素的访问(续)矩阵元素的访问(续)例:用不同的方法访问矩阵的元素A=1:25A=reshape(A,5,5)A=1 6 11 16 21 2 7 12 17 22 3 8 13 18 23 4 9 14 19 24 5 10 15 20 25A(3,1)或A(3)ans=3 A(3,:)ans=3 8 13 18 23 1 6 11 16 21 2 7 12 17 22 3 8 13 18 23 4 9 14 19 24 5 10 15 20 25 A(end,:)ans=5 10 15 20 25I=1 3 5;J=2 4;A(I,J)A(1

22、3 5,2 4)ans=6 16 8 18 10 20 A(:,4)ans=16 17 18 19 20矩阵的基本运算矩阵的基本运算函数函数基本数学运算规则基本数学运算规则数组的运算数组的运算运算函数运算函数运算指令运算指令 矩阵生成函数矩阵生成函数函函 数数说说 明明zeroszeros产生元素全为产生元素全为0 0的矩阵的矩阵onesones产生元素全为产生元素全为1 1的矩阵的矩阵eyeeye产生单位矩阵产生单位矩阵randrand产生均匀分布的随机数矩阵,数值范围(产生均匀分布的随机数矩阵,数值范围(0 0,1 1)randnrandn产生均值为产生均值为0 0,方差为,方差为1 1的

23、正态分布随机数矩阵的正态分布随机数矩阵diagdiag获取矩阵的对角线元素,也可生成对角矩阵获取矩阵的对角线元素,也可生成对角矩阵triltril产生下三角矩阵产生下三角矩阵triutriu产生上三角矩阵产生上三角矩阵pascalpascal产生帕斯卡矩阵产生帕斯卡矩阵magicmagic产生幻方阵产生幻方阵例例14 14 矩阵生成函数示例矩阵生成函数示例 A=zeros(3)A=zeros(3)A=A=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A=ones(3)A=ones(3)A=A=1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1矩阵生

24、成函数(续)矩阵生成函数(续)A=eye(3)A=1 0 0 0 1 0 0 0 1 A=rand(3)A=0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214 A=randn(3)A=-0.4326 0.2877 1.1892 -1.6656 -1.1465 -0.0376 0.1253 1.1909 0.3273例例14 14 矩阵生成函数示例矩阵生成函数示例 A=magic(3)A=magic(3)A=A=8 1 6 8 1 6 3 5 7 3 5 7 (15)(15)4 9 2 4 9 2 A=magic(4)A=

25、magic(4)A=A=16 2 3 13 16 2 3 13 5 11 10 8 5 11 10 8 (34)(34)9 7 6 12 9 7 6 12 4 14 15 1 4 14 15 1矩阵生成函数(续)矩阵生成函数(续)基本矩阵运算基本矩阵运算运算命令运算命令说说 明明A A 矩阵转置矩阵转置AnAn矩阵求幂,矩阵求幂,n n可以为任意实数可以为任意实数A*BA*B矩阵相乘矩阵相乘A/BA/B矩阵右除(一般的除法,矩阵右除(一般的除法,A/B=ABA/B=AB)ABAB矩阵左除(一种倒置的除法,矩阵左除(一种倒置的除法,AB=BAAB=BA)A+BA+B矩阵相加矩阵相加A-BA-B矩

26、阵相减矩阵相减invinv矩阵求逆,注意不是所有的矩阵都有逆矩阵矩阵求逆,注意不是所有的矩阵都有逆矩阵detdet求方阵的求方阵的行列式行列式rankrank求求矩阵的秩矩阵的秩eigeig求矩阵的特征向量和特征值求矩阵的特征向量和特征值svdsvd对对矩阵进行奇异值分解矩阵进行奇异值分解normnorm求求矩阵的范数矩阵的范数1.1.矩阵加、减运算矩阵加、减运算 (A AB B、A AB B)规则:规则:相加、减的两矩阵必须有相同的行和列,两矩阵相加、减的两矩阵必须有相同的行和列,两矩阵对应元素相加减。对应元素相加减。MATLABMATLAB允许参与运算的两矩阵之一是标量,标允许参与运算的两

27、矩阵之一是标量,标量与矩阵的所有元素分别进行加减操作。量与矩阵的所有元素分别进行加减操作。例:例:A=1 2 3A=1 2 3;4 5 6 B=3 4 54 5 6 B=3 4 5;7 8 9 C=37 8 9 C=3 A+B=4 6 8 A+B=4 6 8;11 13 1511 13 15 A+C=4 5 6 A+C=4 5 6;7 8 97 8 9 B+C=6 7 8 B+C=6 7 8;10 11 1210 11 12基本矩阵运算(续)基本矩阵运算(续)2.2.矩阵乘运算矩阵乘运算n n A A*B B:A A矩阵的列数必须等于矩阵的列数必须等于B B矩阵的行数。矩阵的行数。n n s

28、s*A A 或或 A A*s s:标量可与任何矩阵相乘,标量标量可与任何矩阵相乘,标量s s分别分别与矩阵与矩阵A A每个元素相乘。每个元素相乘。例:例:A=1 2 3;4 5 6;7 8 0;B=1;2;3;A=1 2 3;4 5 6;7 8 0;B=1;2;3;C=A*B C=A*B C=14 C=14 32 32 23 23 D=-1;0;2;D=-1;0;2;F=pi*D F=pi*D F=-3.1416 F=-3.1416 0 0 6.2832 6.2832 基本矩阵运算(续)基本矩阵运算(续)3.3.矩阵除运算及线性方程组的解矩阵除运算及线性方程组的解 在线性代数中没有矩阵的除运算

29、,只有矩阵逆的运算,在在线性代数中没有矩阵的除运算,只有矩阵逆的运算,在MATLABMATLAB中有两种矩阵除运算。中有两种矩阵除运算。A/B A/B 矩阵右除,相当于矩阵右除,相当于 A A inv(B)inv(B)AB AB 矩阵左除,相当于矩阵左除,相当于 inv(A)inv(A)B B 因此,因此,x=AB x=AB 是线性方程是线性方程组组Ax=BAx=B的解。的解。例:求解方程组例:求解方程组 3x3x1 1+x+x2 2 -x-x3 3 =3.6=3.6 x x1 1+2x+2x2 2+4x+4x3 3 =2.1=2.1 -x -x1 1+4x+4x2 2+5x+5x3 3 =-

30、1.4=-1.4 A=3 1-1;1 2 4;-1 4 5;A=3 1-1;1 2 4;-1 4 5;B=3.6;2.1;-1.4;B=3.6;2.1;-1.4;x=AB x=AB x=x=1.4818 1.4818 -0.4606 -0.4606 0.3848 0.3848基本矩阵运算(续)基本矩阵运算(续)4.4.矩阵乘方矩阵乘方 AnAn A A自乘自乘n n次幂次幂 例例a=1,2,3;4,5,6;7,8,9 a=1,2,3;4,5,6;7,8,9;a2a2 ansans=30 36 42=30 36 42 66 81 96 66 81 96 102 126 150 102 126 1

31、50 方阵方阵1的的整数整数基本矩阵运算(续)基本矩阵运算(续)数组运算指数组运算指元素对元素元素对元素的算术运算,与通常意义上的的算术运算,与通常意义上的由符号表示的线性代数矩阵运算不同。由符号表示的线性代数矩阵运算不同。1.1.数组加减(数组加减(+,-)运算)运算规则:规则:相加、减的两数组必须有相同的行和列,两数组对应相加、减的两数组必须有相同的行和列,两数组对应元素相加减。元素相加减。MATLABMATLAB允许参与运算的两数组之一是标量,标量与允许参与运算的两数组之一是标量,标量与数组的所有元素分别进行加减操作数组的所有元素分别进行加减操作 A+BA+B A-BA-B 基本数组(元

32、素群)运算基本数组(元素群)运算 与矩阵加减运算等效,数组之一也可为标量。2.2.2.2.数组乘数组乘 ()运算运算A A B B A A,B B两数组必须有相同的行和列,两数组相应元两数组必须有相同的行和列,两数组相应元素相乘素相乘。n n s s A A 或或 A A s s 标量与标量与数组数组相乘,标量相乘,标量s s分别与分别与数组数组A A每个元素相每个元素相乘,与乘,与 s s A A 或或 A A s s 相同。相同。例例1616:A=1 2 3;4 5 6;7 8 9;A=1 2 3;4 5 6;7 8 9;B=2 4 6;1 3 5;7 9 10;B=2 4 6;1 3 5

33、;7 9 10;A.*B A.*B ansans=2 8 18 2 8 18 4 15 30 4 15 30 49 72 90 49 72 90基本数组(元素群)运算(续)基本数组(元素群)运算(续)A=1 2 3;4 5 6;7 8 9;B=2 4 6;1 3 5;7 9 10;A*Bans=25 37 46 55 85 109 85 133 1723.3.数组除数组除(/,)运算运算C=A./B C=A./B 数组右除数组右除 C(i,j)=A(i,j)/B(i,j)C(i,j)=A(i,j)/B(i,j)C=A.B C=A.B 数组左除数组左除 C(i,j)=B(i,j)/A(i,j)C

34、(i,j)=B(i,j)/A(i,j)A./B=B.AA./B=B.AA./s=s.A AA./s=s.A A的元素分别被标量的元素分别被标量s s除除s./A=A.s s./A=A.s 标量标量s s分别被分别被A A的元素除的元素除例:例:A=1 2 3;A=1 2 3;B=4 5 6;B=4 5 6;C1=A./B C1=A./B C1=0.2500 0.4000 0.5000 C1=0.2500 0.4000 0.5000 C2=B.A C2=B.A C2=0.2500 0.4000 0.5000 C2=0.2500 0.4000 0.5000 C3=A.B C3=A.B C3=4.0

35、000 2.5000 2.0000 C3=4.0000 2.5000 2.0000 基本数组(元素群)运算(续)基本数组(元素群)运算(续)A=1 2 3;B=4 5 6;A/Bans=0.4156 ABans=0 0 0 0 0 0 1.3333 1.6667 2.00004.4.数组乘方(数组乘方(.)A.n AA.n A的每个元素自乘的每个元素自乘n n次次A.p A.p 对对A A各元素分别求非整数幂各元素分别求非整数幂p.A p.A 以以p p为底为底,分别以分别以A A的元素为指数求幂值的元素为指数求幂值C=A.B C=A.B 元素对元素的幂元素对元素的幂C(i,j)=A(i,j)

36、.B(i,j)C(i,j)=A(i,j).B(i,j)例:例:A=1 2 3;B=4 5 6;A=1 2 3;B=4 5 6;X=A.2 X=A.2 X=X=1.00 4.00 9.00 1.00 4.00 9.00 Y=A.0.5 Y=A.0.5 Y=Y=1.0000 1.4142 1.7321 1.0000 1.4142 1.7321 基本数组(元素群)运算(续)基本数组(元素群)运算(续)C=3.B Y=81.00 243.00 729.00 34 35 36Z=A.B Z=1.00 32.00 729.00 14 25 365.5.数组转置数组转置(.)例:例:A=1 3 5;2 4

37、6 A=1 3 5;2 4 6 A=A=1 3 5 1 3 5 2 4 6 2 4 6 A A ansans=1 2 1 2 3 4 3 4 5 6 5 6 A.A.ansans=1 2 1 2 3 4 3 4 5 6 5 6基本数组(元素群)运算(续)基本数组(元素群)运算(续)结论:对于实数矩阵,矩阵转置和数组转置的计算结果是一致的。例:例:A=A*i A=A*i A=A=0+1.0000i 0+3.0000i 0+5.0000i 0+1.0000i 0+3.0000i 0+5.0000i 0+2.0000i 0+4.0000i 0+6.0000i 0+2.0000i 0+4.0000i

38、0+6.0000i A A ansans=0-1.0000i 0-2.0000i 0-1.0000i 0-2.0000i 0-3.0000i 0-4.0000i 0-3.0000i 0-4.0000i 0-5.0000i 0-6.0000i 0-5.0000i 0-6.0000i A.A.ansans=0+1.0000i 0+2.0000i 0+1.0000i 0+2.0000i 0+3.0000i 0+4.0000i 0+3.0000i 0+4.0000i 0+5.0000i 0+6.0000i 0+5.0000i 0+6.0000i基本数组(元素群)运算(续)基本数组(元素群)运算(续)结

39、论:对于复数矩阵,矩阵转置和数组转置的计算结果不一致。矩阵转置运算共轭转置 数组转置运算非共轭转置函数的主要类别函数的主要类别三角函数三角函数指数运算函数指数运算函数复数运算函数复数运算函数圆整和求余函数圆整和求余函数函数在处理参数时,是按照数组运算的规则进函数在处理参数时,是按照数组运算的规则进行的行的 基本数学函数基本数学函数 三角函数三角函数基本数学函数基本数学函数(续)函数函数说明说明函数函数说明说明函数函数说明说明sinsin正弦函数正弦函数tanhtanh双曲正切函数双曲正切函数cschcsch双曲双曲余割函数余割函数sinhsinh双曲双曲正弦函数正弦函数atanatan反正切函

40、数反正切函数acscacsc反反余割函数余割函数asinasin反正弦函数反正弦函数atan2atan2四象限反正切函数四象限反正切函数acscacsch h反双曲余割函数反双曲余割函数asinhasinh反双曲正弦函数反双曲正弦函数atanhatanh反双曲正切函数反双曲正切函数cotcot余切函数余切函数coscos余弦函数余弦函数secsec正割函数正割函数cothcoth双曲双曲余切函数余切函数coshcosh双曲余弦函数双曲余弦函数sechsech双曲正割函数双曲正割函数acotacot反反余切函数余切函数acosacos反余弦函数反余弦函数asecasec反正割函数反正割函数aco

41、thacoth反反双曲余切函数双曲余切函数acosacosh h反双曲余弦函数反双曲余弦函数asechasech双曲双曲反正割函数反正割函数tantan正切函数正切函数csccsc余割函数余割函数指数运算函数指数运算函数基本数学函数基本数学函数(续)函数函数说明说明函数函数说明说明expexp指数函数指数函数realpowrealpow实数幂运算函数实数幂运算函数loglog自然对数函数自然对数函数reallogreallog实数自然对数函数实数自然对数函数log10log10常用对数函数常用对数函数realsqrtrealsqrt实数平方根函数实数平方根函数log2log2以以2 2为底的为

42、底的对数函数对数函数sqrtsqrt平方根函数平方根函数pow2pow22 2的幂的幂函数函数nextpow2nextpow2求求大于输入参数的第一个大于输入参数的第一个2 2的幂的幂复数运算函数复数运算函数基本数学函数基本数学函数(续)函数函数说明说明函数函数说明说明absabs求求复数的模,若参数为实数则求绝对值复数的模,若参数为实数则求绝对值realreal求复数的实部求复数的实部angleangle求求复数的相角复数的相角unwrapunwrap相位角按照相位角按照360360线调整线调整complecomplex x构造复数构造复数isrealisreal判断输入的参数是否为实数判断

43、输入的参数是否为实数conjconj求求复数的共轭复数复数的共轭复数cplxpaicplxpair r复数阵成共轭对形式排列复数阵成共轭对形式排列imageimage求求复数的虚部复数的虚部圆整和求余函数圆整和求余函数基本数学函数基本数学函数(续)函数函数说明说明函数函数说明说明fixfix向向0 0取整的函数取整的函数modmod求求模函数模函数floorfloor向向-取整的函数取整的函数remrem求求余数余数ceilceil向向+取整的函数取整的函数signsign符号函数符号函数roundround向向最近的整数取整的函数最近的整数取整的函数用于矩阵(数组)操作的常用函数用于矩阵(数

44、组)操作的常用函数 矩阵(数组)操作函数矩阵(数组)操作函数 函数函数说说 明明sizesize获取矩阵的行、列数,对于多维数组,获取数组的各个维的尺寸获取矩阵的行、列数,对于多维数组,获取数组的各个维的尺寸lengthlength获取向量长度,若输入参数为矩阵或多维数组,则返回各个维尺寸的最大值获取向量长度,若输入参数为矩阵或多维数组,则返回各个维尺寸的最大值ndimsndims获取矩阵或多维数组的维数获取矩阵或多维数组的维数numelnumel获取矩阵或数组的元素个数获取矩阵或数组的元素个数dispdisp显示矩阵或者字符串内容显示矩阵或者字符串内容catcat合并不同的矩阵或数组合并不同

45、的矩阵或数组reshapreshape e保持矩阵元素的个数不变,修改矩阵的行数和列数保持矩阵元素的个数不变,修改矩阵的行数和列数repmarepmat t复制矩阵元素并扩展矩阵复制矩阵元素并扩展矩阵fliplrfliplr交换矩阵左右对称位置上的元素交换矩阵左右对称位置上的元素flipudflipud交换矩阵上下对称位置上的元素交换矩阵上下对称位置上的元素flipdimflipdim获取指定的方向翻转交换矩阵元素获取指定的方向翻转交换矩阵元素findfind获取矩阵或者数组中非零元素的索引获取矩阵或者数组中非零元素的索引例例1818:reshapereshape函数使用示例函数使用示例 A=

46、1:8 A=1:8A=A=1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 B=reshape(A,2,4)B=reshape(A,2,4)B=B=1 3 5 7 1 3 5 7 2 4 6 8 2 4 6 8 C=reshape(A,3,3)C=reshape(A,3,3)?Error using=reshape?Error using=reshapeTo RESHAPE the number of elements must not To RESHAPE the number of elements must not change.change.矩阵(数组)操作函数矩阵(数组

47、)操作函数(续)不能改变矩阵包含元素的个数将矩阵A改成2行4列,也可写成 B=reshape(1:8,2,4)例例1919:对称交换函数使用示:对称交换函数使用示例例B=B=1 3 5 7 1 3 5 7 2 4 6 8 2 4 6 8 fliplr(Bfliplr(B)ansans=7 5 3 17 5 3 1 8 6 4 2 8 6 4 2 flipud(Bflipud(B)ansans=2 4 6 82 4 6 8 1 3 5 7 1 3 5 7矩阵(数组)操作函数矩阵(数组)操作函数(续)flipdim函数的第二个参数必须是大于0的整数:参数为1时,效果和flipud函数一致参数为2时

48、,效果和fliplr函数一致 flipdim(B,1)ans=2 4 6 8 1 3 5 7 flipdim(B,2)ans=7 5 3 1 8 6 4 2例例2020:repmatrepmat使用示例使用示例 A=pascal(2)A=pascal(2)A=A=1 1 1 1 1 2 1 2 repmat(A,2,3)repmat(A,2,3)ansans=1 11 1 1 1 1 1 1 1 1 1 1 21 2 1 2 1 2 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 2 1 2 1 2 1 2矩阵(数组)操作函数矩阵(数组)操作函数(续)rep

49、mat函数的基本语法为:repmat(A,M,N)作用是将指定的矩阵A复制MN次,其中M对应的是行,N对应的是列。创建复杂矩阵创建复杂矩阵使用使用MATLABMATLAB提供的矩阵扩展方法完成相应矩阵提供的矩阵扩展方法完成相应矩阵的构造的构造假设矩阵假设矩阵A A为三阶方阵,为三阶方阵,B B为二阶方阵,由为二阶方阵,由A A和和B B组合构成五阶方组合构成五阶方阵阵C=A OC=A O;OO B B,其中其中OO为相应的零矩阵为相应的零矩阵矩阵(数组)操作函数矩阵(数组)操作函数(续)例例2-212-21:A=reshape(1:9,3,3);A=reshape(1:9,3,3);B=1 2

50、;3 4;B=1 2;3 4;O=zeros(length(A),length(B)O=zeros(length(A),length(B)O=O=0 0 0 0 0 0 0 0 0 0 0 0 C=C=A A OO;OO B BC=C=1 4 71 4 7 0 00 0 2 5 82 5 8 0 00 0 3 6 93 6 9 0 00 0 0 0 00 0 0 1 2 1 2 0 0 00 0 0 3 4 3 4矩阵(数组)操作函数矩阵(数组)操作函数(续)E=1 2 3;4 5 6E=1 2 3 4 5 6 length(E)ans=3 F=1 2 3;4 5 6;7 8 9;4 2 7F

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁