第二讲基本运算精选文档.ppt
《第二讲基本运算精选文档.ppt》由会员分享,可在线阅读,更多相关《第二讲基本运算精选文档.ppt(119页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二讲基本运算本讲稿第一页,共一百一十九页矩阵和数组矩阵和数组MATLABMATLAB提供了一种计算机高级编程语言提供了一种计算机高级编程语言MM语言语言MATLABMATLAB提供了不同类型的数据提供了不同类型的数据MATLABMATLAB专门以矩阵作为基本的运算单位专门以矩阵作为基本的运算单位MATLAB提供了关于数组和矩阵不同的运算方法本讲稿第二页,共一百一十九页在M语言中最常用的数据类型表现手段和形式就是变量和常量M语言的基本处理单位是数值矩阵或者数值向量回顾有关概念变量和常量数组向量矩阵本讲稿第三页,共一百一十九页变量和常量变量和常量 变量:程序运行过程中需要改变数值的量变量:程序运
2、行过程中需要改变数值的量每一个变量都具有一个名字每一个变量都具有一个名字变量在内存中占据一定的空间变量在内存中占据一定的空间变量必须以字母开头,后面可以是字母、数字变量必须以字母开头,后面可以是字母、数字或者下划线的组合或者下划线的组合MATLABMATLAB仅识别前面仅识别前面N N个字符,在不同的操作个字符,在不同的操作系统下可以识别的字符个数不同系统下可以识别的字符个数不同常量:在程序运行的过程中不需要改变数值的量常量:在程序运行的过程中不需要改变数值的量常量具有名字常量具有名字在在MM语言中不存在常量的定义,只在语言中不存在常量的定义,只在MATLABMATLAB中提供一些常用的常数作
3、为常量中提供一些常用的常数作为常量本讲稿第四页,共一百一十九页 MATLAB的常量的常量常常 量量说说 明明ansans最近运算的结果最近运算的结果epseps浮点数相对精度,定义为浮点数相对精度,定义为1.01.0到最近浮点数的距离到最近浮点数的距离realmaxrealmaxMATLABMATLAB能表示的实数的最大绝对值能表示的实数的最大绝对值realminrealminMATLABMATLAB能表示的实数的最小绝对值能表示的实数的最小绝对值pipi圆周率圆周率 的近似值的近似值3.14159263.1415926i i,j j复数的虚部数据最小单位复数的虚部数据最小单位inf inf
4、或或 Inf Inf表示正无大表示正无大,定义为定义为1/01/0NaNNaN或或nannan 非数,它产生于非数,它产生于0 0 ,0/00/0,/等运算等运算本讲稿第五页,共一百一十九页数组是有序数据的集合数组的每一个成员(元素)都属于同一种数据类型,它们使用同一个数组名称和不同的下标来唯一确定数组中的成员(元素)。在MATLAB中元胞数组比较特殊,数组中的元素可以是不同的数据类型。本讲稿第六页,共一百一十九页向量向量 从编程语言的角度上看,向量其实就是一维数组从编程语言的角度上看,向量其实就是一维数组 从数学的角度上看,向量就是从数学的角度上看,向量就是1N1N或者或者N1N1的矩阵,即
5、行的矩阵,即行向量或列向量向量或列向量 b b1 1,1 1 b b2 2,1 1 B=b B=b3 3,1 1 和和B=bB=b1 1,1 1 b b1 1,2 2 b b1 1,3 3 b b1 1,n n b bn n,1 1本讲稿第七页,共一百一十九页矩阵是用一对圆括号或方括号括起来,符合一定规则的数学对象 b11 b12 b13 B=b21 b22 b23 b31 b32 b33对于编程语言,矩阵就是二维的数组本讲稿第八页,共一百一十九页创建向量创建向量1.1.在命令窗口逐个输入元素在命令窗口逐个输入元素 例例1 1:X=1 3 pi 3+5i X=1 3 pi 3+5i 2.2.利
6、用冒号运算符创建向量利用冒号运算符创建向量X=J:INC:KX=J:INC:KnJ J为向量的第一个元素,为向量的第一个元素,K K为向量的最后一个元素,为向量的最后一个元素,INCINC为向量元素递增的步长为向量元素递增的步长nJ J、INCINC、K K之间必须用之间必须用“:”“:”间隔间隔n若忽略若忽略INCINC,则默认的递增步长为,则默认的递增步长为1 1nINCINC可以为正数,也可以为负数可以为正数,也可以为负数 例例2 2:X=1:10X=1:10 例例3 3:X=1:0.01:1.1X=1:0.01:1.1本讲稿第九页,共一百一十九页创建向量(续)创建向量(续)3.3.定数
7、线性采样法:在设定的定数线性采样法:在设定的“总点数总点数”下,均匀采下,均匀采 样生成向量(一维样生成向量(一维“行行”数组)数组)使用函数使用函数linspace linspace 和和logspacelogspace linspacelinspace是用来创建线性间隔向量的函数是用来创建线性间隔向量的函数 linspacelinspace 的基本语法的基本语法 X=linespace(X1 X=linespace(X1,X2X2,n)n)X1 X1为向量的第一个元素,为向量的第一个元素,X2X2为向量的最后一个元素,为向量的最后一个元素,n n为向为向量具有的元素个数,函数将根据量具有的
8、元素个数,函数将根据n n的数值平均计算元素之间的的数值平均计算元素之间的间隔,间隔计算公式为间隔,间隔计算公式为 若在表达式中忽略参数若在表达式中忽略参数n n,则系统默认地将向量设置为,则系统默认地将向量设置为100100个元素个元素本讲稿第十页,共一百一十九页创建向量(续)创建向量(续)例例4 4 使用使用linspacelinspace函数创建向量函数创建向量X=linspace(1X=linspace(1,2 2,5)5)X=X=1.0000 1.2500 1.5000 1.7500 2.0000本讲稿第十一页,共一百一十九页创建向量(续)创建向量(续)logspacelogspac
9、e是用来创建对数空间的向量是用来创建对数空间的向量logspacelogspace 的基本语法 X=logspace(X1,X2,n)该函数创建的向量第一个元素值为该函数创建的向量第一个元素值为1010X1X1,而,而最后一个元素的数值为最后一个元素的数值为1010X2X2,n n为向量的元为向量的元素个数,元素彼此之间的间隔按照对数空间素个数,元素彼此之间的间隔按照对数空间的间隔设置的间隔设置若在表达式中忽略参数若在表达式中忽略参数n n,则系统默认地将,则系统默认地将向量设置为向量设置为5050个元素个元素本讲稿第十二页,共一百一十九页创建向量(续)创建向量(续)例例5 5 使用使用log
10、spacelogspace函数创建向量函数创建向量X=logspace(1X=logspace(1,3 3,3)3)X=X=10 100 1000 10 100 1000本讲稿第十三页,共一百一十九页创建向量(续)创建向量(续)创建列向量创建列向量 使用分号作为元素与元素之间的间隔使用分号作为元素与元素之间的间隔使用转置运算符使用转置运算符“”“”例6:A=1;2;3;4;5;6或A=(1:6)本讲稿第十四页,共一百一十九页 创建矩阵创建矩阵n n矩阵的元素可以为任意MATLAB数据类型的数值或对象n n创建矩阵的方法创建矩阵的方法 直接输入法直接输入法 使用数组编辑器使用数组编辑器本讲稿第十
11、五页,共一百一十九页 直接输入法直接输入法规则:规则:整个矩阵的元素必须用整个矩阵的元素必须用 括住括住 同一行的矩阵元素之间必须用逗号或空格分隔同一行的矩阵元素之间必须用逗号或空格分隔 在在 内矩阵的行与行之间必须用分号分隔,也可以在需要内矩阵的行与行之间必须用分号分隔,也可以在需要分行的地方用回车键间隔分行的地方用回车键间隔 矩阵元素可以是任何矩阵元素可以是任何MATLABMATLAB表达式表达式 ,可以是实数,可以是实数 ,也可以是,也可以是复数,复数用复数,复数用i i,j j 输入输入 例例2-72-7:A=1 A=1,2 2,3 3;4 4,5 5,6 6;7 7,8 8,9 9
12、X=2 pi/2 X=2 pi/2;sqrt(3)3+5i sqrt(3)3+5i 本讲稿第十六页,共一百一十九页n n逗号和分号的作用逗号和分号可作为指令间的分隔符,MATLAB允许多条语句在同一行出现。分号如果出现在指令后,屏幕上将不显示结果。只要是赋过值的变量,不管是否在屏幕上显示过,都会存储在工作空间中,以后可随时显示或调用。变量名尽可能不要重复,否则会覆盖。直接输入法(续)直接输入法(续)本讲稿第十七页,共一百一十九页例例8 8: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+
13、5iA=A=1 2 3 1 2 3 4 5 6 4 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直接输入法(续)直接输入法(续)本讲稿第十八页,共一百一
14、十九页n n冒号的作用冒号的作用 用于生成等间隔的向量,默认间隔为用于生成等间隔的向量,默认间隔为1 1。例例9 9:y=1:3y=1:3;4:64:6;7:97:9直接输入法(续)直接输入法(续)本讲稿第十九页,共一百一十九页 数组编辑器n调用数组编辑器的方法n选择工作空间浏览器中的变量,然后单击工作栏中的按钮n在工作空间浏览器中直接双击变量n选择工作空间浏览器中的变量,然后单击快捷菜单命令Openn在MATLAB命令行窗口中键入指令“openvar 变量名”数组编辑器仅能编辑、修改向量或矩阵,对于多维数组,数组编辑器只能察看数组的内容,不能修改多维数组的元素本讲稿第二十页,共一百一十九页数
15、组编辑器(续)n利用数组编辑器完成矩阵的编辑步骤n在命令行窗口中创建一个新的变量,为其赋任意数值 如:A=1n打开数组编辑器,在数组编辑器中加载相应的变量n在数组编辑器的工具栏中,修改矩阵的行数和列数,双击任意元素修改矩阵的元素值本讲稿第二十一页,共一百一十九页 矩阵的修改矩阵的修改直接修改直接修改 在命令行窗口中,可用在命令行窗口中,可用键找到所要修改的矩阵,用键找到所要修改的矩阵,用键移动到键移动到要修改的矩阵元素上即可修改要修改的矩阵元素上即可修改。在数组编辑器中,可用在数组编辑器中,可用、键找到所要修改的矩阵元素进行修键找到所要修改的矩阵元素进行修改改。指令修改:用指令修改:用A(A(
16、,)=)=来修改。来修改。例例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 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(*)矩阵元素的单下标是矩阵元素在内存中存储
17、的序列号,一般地,同一个矩阵的元素在连 续的内存单元中(元素的排列以列元素优先)本讲稿第二十三页,共一百一十九页矩阵元素的访问(续)矩阵元素的访问(续)4 1 110 5 51 9 96 13132 17178 2 22 6 69 10104 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=本讲稿第二十四页,共一百一十九页矩阵元素的访问(续)矩阵元素的访问(续)使用索引访问矩阵
18、元素的方法矩阵元素的访问矩阵元素的访问说说 明明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中的元素中的元素A(i,:)A(i,:)访问矩阵访问矩阵A A中第中第i i行的所有元素行的所有元素A(:,j)A(:,j)访问矩阵访问矩阵A A中第中第j j列的所有元素列的所有元素A(A(:):)访问矩阵访问矩阵A A中的所有元素,将矩阵看成一个向量中的所有元素,将矩阵看成一个向量A(l)A(l)使用单下标的方式访问矩阵元素,
19、其中使用单下标的方式访问矩阵元素,其中l l为标量为标量A(L)A(L)访问由向量访问由向量L L指定的矩阵指定的矩阵A A的元素,向量的元素,向量L L中的元素中的元素为矩阵元素的单下标数值为矩阵元素的单下标数值 在索引矩阵或数组的元素时,若直接用冒号运算符且不给任何的参数,则表示选择该行或列,或维中的所有元素本讲稿第二十五页,共一百一十九页矩阵元素的访问(续)矩阵元素的访问(续)例:用不同的方法访问矩阵的元素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
20、,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 3 5,2 4)ans=6 16 8 18 10 20 A(:,4)ans=16 17 18 19 20本讲稿第二十六页,共一百一十九页矩阵的基本运算函数基本数学运算规则数组的运算运算函数运算指令本讲稿第二十七页,共一百一十九页 矩阵生成函数矩阵生成函数函函 数数说说 明明zeroszeros产
21、生元素全为产生元素全为0 0的矩阵的矩阵onesones产生元素全为产生元素全为1 1的矩阵的矩阵eyeeye产生单位矩阵产生单位矩阵randrand产生均匀分布的随机数矩阵,数值范围(产生均匀分布的随机数矩阵,数值范围(0 0,1 1)randnrandn产生均值为产生均值为0 0,方差为,方差为1 1的正态分布随机数矩阵的正态分布随机数矩阵diagdiag获取矩阵的对角线元素,也可生成对角矩阵获取矩阵的对角线元素,也可生成对角矩阵triltril产生下三角矩阵产生下三角矩阵triutriu产生上三角矩阵产生上三角矩阵pascalpascal产生帕斯卡矩阵产生帕斯卡矩阵magicmagic产
22、生幻方阵产生幻方阵本讲稿第二十八页,共一百一十九页例例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矩阵生成函数(续)矩阵生成函数(续)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=-
23、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=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矩阵生成函数(续)矩阵生成函数(续
24、)本讲稿第三十页,共一百一十九页 基本矩阵运算基本矩阵运算运算命令运算命令说说 明明AA矩阵转置矩阵转置AnAn矩阵求幂,矩阵求幂,n n可以为任意实数可以为任意实数A*BA*B矩阵相乘矩阵相乘A/BA/B矩阵右除(一般的除法,矩阵右除(一般的除法,A/B=ABA/B=AB)ABAB矩阵左除(一种倒置的除法,矩阵左除(一种倒置的除法,AB=BAAB=BA)A+BA+B矩阵相加矩阵相加A-BA-B矩阵相减矩阵相减invinv矩阵求逆,注意不是所有的矩阵都有逆矩阵矩阵求逆,注意不是所有的矩阵都有逆矩阵detdet求方阵的行列式求方阵的行列式rankrank求矩阵的秩求矩阵的秩eigeig求矩阵的特
25、征向量和特征值求矩阵的特征向量和特征值svdsvd对矩阵进行奇异值分解对矩阵进行奇异值分解normnorm求矩阵的范数求矩阵的范数本讲稿第三十一页,共一百一十九页1.1.矩阵加、减运算矩阵加、减运算 (A AB B、A AB B)规则:规则:n n相加、减的两矩阵必须有相同的行和列,两矩阵对应元相加、减的两矩阵必须有相同的行和列,两矩阵对应元素相加减。素相加减。nMATLABMATLAB允许参与运算的两矩阵之一是标量,标量与允许参与运算的两矩阵之一是标量,标量与矩阵的所有元素分别进行加减操作。矩阵的所有元素分别进行加减操作。例:例:A=1 2 3A=1 2 3;4 5 6 B=3 4 54 5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 基本 运算 精选 文档
限制150内