广东石油化工学院最新matlab教程(全)资料课件.ppt

上传人(卖家):三亚风情 文档编号:2951751 上传时间:2022-06-14 格式:PPT 页数:233 大小:4.95MB
下载 相关 举报
广东石油化工学院最新matlab教程(全)资料课件.ppt_第1页
第1页 / 共233页
广东石油化工学院最新matlab教程(全)资料课件.ppt_第2页
第2页 / 共233页
广东石油化工学院最新matlab教程(全)资料课件.ppt_第3页
第3页 / 共233页
广东石油化工学院最新matlab教程(全)资料课件.ppt_第4页
第4页 / 共233页
广东石油化工学院最新matlab教程(全)资料课件.ppt_第5页
第5页 / 共233页
点击查看更多>>
资源描述

1、新MATLABMATLAB 语言及其应用 Application of Matlab Language 2022-6-2Application of Matlab Language2 1 MATLAB1 MATLAB的桌面环境及入门知识的桌面环境及入门知识n启动与退出启动与退出MATLAB MATLAB n命令窗口及使用命令窗口及使用n数值表示、变量、表达式数值表示、变量、表达式n命令历史窗口命令历史窗口n工作空间工作空间n获取在线帮助获取在线帮助 2022-6-2Application of Matlab Language3 1.1 1.1 启动与退出启动与退出MATLABMATLABn启动

2、启动MATLABMATLABn直接用鼠标双击桌面上直接用鼠标双击桌面上MATLAB7.1MATLAB7.1图标图标n或或WindowsWindows桌面的桌面的“开始开始”“所有程所有程序序”“MATLAB7.1” “MATLAB7.1” “MATLAB7.1”“MATLAB7.1”。n退出退出MATLABMATLABn关闭关闭MATLABMATLAB桌面桌面n在命令窗口执行在命令窗口执行quitquit或或exitexit命令命令 2022-6-2Application of Matlab Language4 菜单栏菜单栏工具栏工具栏文件编辑窗口文件编辑窗口工作空间工作空间历史命令历史命令窗

3、口窗口Start Start 菜单菜单命令窗口命令窗口命令提示符命令提示符1.1 1.1 启动与退出启动与退出MATLAB MATLAB (续)(续) 2022-6-2Application of Matlab Language5 1.2 1.2 命令窗口的使用命令窗口的使用激活命令窗口。激活命令窗口。“” ” 与闪烁的光标一起表明系统就绪,等待输入。与闪烁的光标一起表明系统就绪,等待输入。命令窗口脱离命令窗口脱离MATLABMATLAB桌面。桌面。 简单计算简单计算【例例1-11-1】计算计算(1 1)在)在MATLABMATLAB命令窗口输入命令窗口输入 以下内容:以下内容:(12+2(1

4、2+2* *(7-4)/32(7-4)/32(2 2)按)按【EnterEnter】键,指令执行。键,指令执行。(3 3)返回的计算结果:)返回的计算结果:ans= 2 2122743 2022-6-2Application of Matlab Language6 1.2 1.2 命令窗口命令窗口 (续)(续)说明说明l在命令窗口在命令窗口【EnterEnter】键提交命令执行。键提交命令执行。lMatlabMatlab所用运算符(如所用运算符(如+ +、- -、 等)是各种计算程序中等)是各种计算程序中常见的。常见的。l计算结果中的计算结果中的“ans”ans”是英文是英文“answer”a

5、nswer”的一种缩写,的一种缩写,其含义就是其含义就是“运算答案运算答案”。ansans是是MatlabMatlab的一个预定义的一个预定义变量。变量。 2022-6-2Application of Matlab Language7 1.2 1.2 命令窗口命令窗口 (续)(续)n简单计算(续)【例例1-21-2】计算计算sin(45sin(45?a ) )sin(45sin(45* *pi/180)pi/180)l Matalb中正弦函数中正弦函数sin就是常见的正弦函数。就是常见的正弦函数。l 它的参数值是以它的参数值是以“弧度弧度”为单位的。为单位的。l pi也是也是Matalb的预定

6、义变量。的预定义变量。l pi=3.14159l Matlab对字母大小写是敏感的。对字母大小写是敏感的。【例例1-31-3】计算计算 的值,其中的值,其中x=4.92x=4.92。 0.521xesqrt(2sqrt(2* *exp(4.92+0.5)+1)exp(4.92+0.5)+1)l Matalb中开平方中开平方sqrt(x),是英文是英文square root的缩写的缩写 。l Matalb中指数函数中指数函数exp(x),常见的表达方式常见的表达方式。ans= 0.7071ans= 21.2781 2022-6-2Application of Matlab Language8 1

7、.2 1.2 命令窗口命令窗口 (续)(续)7 “clcclc”清除窗口显示内容的命令清除窗口显示内容的命令。【例例1-41-4】计算计算 的值。的值。 2sin 0.315yy=2y=2* *sin(0.3sin(0.3* *pi)/(1+sqrt(5)pi)/(1+sqrt(5)y= 0.5000【例例1-51-5】计算计算 的值。的值。 2cos 0.315yy=2*cos(0.3*pi)/(1+sqrt(5)y= 0.3633% 命令行编辑l “”键调回已输入过命令。l 修改。 2022-6-2Application of Matlab Language9 1.2 1.2 命令窗口命令

8、窗口 (续)(续)【例例1-61-6】计算半径为计算半径为5.2m5.2m的圆的周长和面积。的圆的周长和面积。radius=5.2; %radius=5.2; %圆的半径圆的半径area=piarea=pi* *5.22,5.22, circle_len=2circle_len=2* *pi pi* *5.25.2area = 84.9487circle_len = 32.6726l 以上两例,命令行中用到了等号以上两例,命令行中用到了等号“=”。l 计算结果不再赋给计算结果不再赋给“ans”,而是赋给,而是赋给用户指定的变量用户指定的变量y、area、circle_len。l 无论是预定义变

9、量还是用户自定义变量无论是预定义变量还是用户自定义变量都被存储在系统的工作空间内,即系统都被存储在系统的工作空间内,即系统定义的一个存储窗口变量的内存空间。定义的一个存储窗口变量的内存空间。l Who、whos命令用来显示工作空间的命令用来显示工作空间的变量变量l clear命令用来清除工作空间的变量。命令用来清除工作空间的变量。 2022-6-2Application of Matlab Language10 1.2 1.2 命令窗口命令窗口 (续)(续)whowhosYour variables are:ans circle_len y area radius Name Size Byte

10、s Class ans 1x1 8 double array area 1x1 8 double array circle_len 1x1 8 double array radius 1x1 8 double array y 1x1 8 double arrayGrand total is 5 elements using 40 bytes 2022-6-2Application of Matlab Language11 1.2 1.2 命令窗口命令窗口 (续)(续)clear ywhoYour variables are:ans circle_len area radius clear an

11、s areawhosYour variables are:Name Size Bytes Class circle_len 1x1 8 double array radius 1x1 8 double arrayGrand total is 2 elements using 16 bytes 2022-6-2Application of Matlab Language12 1.2 1.2 命令窗口命令窗口 (续)(续)n数值显示格式设置数值显示格式设置n缺省显示格式:简洁的短(缺省显示格式:简洁的短(short gshort g)格式)格式n窗口命令及语法格式:窗口命令及语法格式:format

12、 format 显示格式关键字显示格式关键字 如:如:format long %15format long %15位数字显示位数字显示n常见通用命令常见通用命令命令命令含义含义clcclc清除命令窗口的显示内容清除命令窗口的显示内容clearclear 清除清除MatlabMatlab工作空间中保存的变量工作空间中保存的变量whowho或或whoswhos显示显示MatlabMatlab工作空间中的变量信息工作空间中的变量信息dirdir显示当前工作目录的文件和子目录清单显示当前工作目录的文件和子目录清单cdcd显示或设置当前工作目录显示或设置当前工作目录typetype显示指定显示指定m m

13、文件的内容文件的内容helphelp或或docdoc获取在线帮助获取在线帮助quitquit或或exitexit关闭关闭/ /推出推出MATALBMATALB 2022-6-2Application of Matlab Language13 1.3 1.3 工作空间工作空间n查看工作空间内存变量,可以由查看工作空间内存变量,可以由whowho、whos whos 。n命名新变量。命名新变量。n修改变量名修改变量名n删除变量删除变量n绘图绘图n保存变量数据保存变量数据n装入数据装入数据 2022-6-2Application of Matlab Language14 1.4 1.4 历史窗口历史

14、窗口n历史窗口:历史窗口:n首先首先记录每次启动时间记录每次启动时间n并并记录在命令窗口输入命令记录在命令窗口输入命令,此次运行期间,此次运行期间,输入的所有命令被记录为一组,并以此次启动时输入的所有命令被记录为一组,并以此次启动时间为标志。间为标志。n使用历史窗口:使用历史窗口:n可以查看命令窗口输入过的命令或语句可以查看命令窗口输入过的命令或语句n可以选择一条或多条命令执行拷贝、执行、创可以选择一条或多条命令执行拷贝、执行、创建建MM文件等。文件等。 要清除历史记录,可以选择要清除历史记录,可以选择Edit菜单中的菜单中的Clear Command History 命令命令 2022-6-

15、2Application of Matlab Language15 1.5 1.5 当前目录窗口和搜索路径当前目录窗口和搜索路径当前目录窗口:当前目录窗口:指指Matlab运行时的工作目录。运行时的工作目录。l只有在当前目录和搜索路径下的文件、函数才可以被只有在当前目录和搜索路径下的文件、函数才可以被运行和调用。运行和调用。l如果没有特殊指明,数据文件也将存放在当前目录下;如果没有特殊指明,数据文件也将存放在当前目录下;l用户可以将自己的工作目录设置成当前目录,从而使用户可以将自己的工作目录设置成当前目录,从而使得所有操作都在当前目录中进行。得所有操作都在当前目录中进行。 2022-6-2Ap

16、plication of Matlab Language16 搜索路径:搜索路径:指指Matlab执行过程中对变量、函数和文件执行过程中对变量、函数和文件进行搜索的路径。进行搜索的路径。l在在File菜单中选择菜单中选择Set Path命令或在命令窗口输入命令或在命令窗口输入pathtool命令,出现搜索路径设置对话框:命令,出现搜索路径设置对话框:!修改完搜索路径后,!修改完搜索路径后,需要进行保存。需要进行保存。 2022-6-2Application of Matlab Language17 1.6 获取在线帮助获取在线帮助nMATLAB提供的帮助信息有两类提供的帮助信息有两类n简单纯文

17、本帮助信息简单纯文本帮助信息 help lookfor(条件比较宽松)(条件比较宽松)例:例:inversen窗口式综合帮助信息(文字、公式、图形)窗口式综合帮助信息(文字、公式、图形) doc helpwin 2022-6-2Application of Matlab Language18 【功能演示功能演示-1 -1】求方程求方程xxxx53223719130的全部根。的全部根。p = 2,0,-3,71,-9,13;建立多项式系数向量建立多项式系数向量x = roots(p);求根求根x = -3.4914 1.6863 + 2.6947i 1.6863 - 2.6947i 0.0594

18、 + 0.4251i 0.0594 - 0.4251i 2022-6-2Application of Matlab Language19 【功能演示功能演示-2 -2】求解线性方程组求解线性方程组xyzxyzxyz 2328234453923a = 2,3,-1;8,2,3;45,3,9;建立系数矩阵建立系数矩阵ab = 2;4;23;建立列向量建立列向量bx = inv(a)*bx = 0.5531 0.2051 -0.2784 2022-6-2Application of Matlab Language20 符号计算符号计算syms x y z 建立符号变量建立符号变量x,y,z=solv

19、e(2*x+3*y-z-2,8*x+2*y+3*z-4,45*x+3*y+9*z-23)x = 151/273 y = 8/39 z = -76/273 2022-6-2Application of Matlab Language21 【功能演示功能演示-3 -3】求解定积分求解定积分 求解求解 I=quad(x.*log(1+x),0,1)ans = 0.250或或syms xint(x*log(1+x),0,1)ans = 1/4ln()xx dx 1012 Matlab数据及其运算数据及其运算 MatlabMatlab数据类型非常丰富,除数据类型非常丰富,除数值型数值型、字符型字符型等基

20、本数等基本数据类型外,还有据类型外,还有结构体结构体、单元单元等更为复杂的数据类型。等更为复杂的数据类型。各种数据类型都以矩阵形式存在,各种数据类型都以矩阵形式存在,矩阵矩阵是是MatlabMatlab最基本的最基本的数据对象,并且矩阵的运算是定义在数据对象,并且矩阵的运算是定义在复数域复数域上的。上的。 2022-6-2Application of Matlab Language23 2.1 2.1 数值表示、变量及表达式数值表示、变量及表达式n 数值的记述数值的记述 MatlabMatlab的数只采用习惯的十进制表示,可以的数只采用习惯的十进制表示,可以带小数点和负号带小数点和负号; ;其

21、缺省的数据类型为其缺省的数据类型为双精度双精度浮点型浮点型(doubledouble)。)。 例如:例如:3 -10 0.001 1.3e10 1.256e-63 -10 0.001 1.3e10 1.256e-6n 变量命令规则变量命令规则l 变量名、函数名对字母的大小写是敏感的。变量名、函数名对字母的大小写是敏感的。如如myVarmyVar与与myvarmyvar表示两个不同的变量。表示两个不同的变量。l 变量名变量名第一个字母必须是第一个字母必须是英文字母英文字母。l 变量名可以包含变量名可以包含英文字母、下划线和数字英文字母、下划线和数字。l 变量名变量名不能包含空格、标点不能包含空格

22、、标点。l 变量名最多可包含变量名最多可包含6363个个字符(字符(6.56.5及以后的及以后的版本)。版本)。 2022-6-2Application of Matlab Language24 2.1 2.1 数值表示、变量及表达式数值表示、变量及表达式 (续)(续)nMatlabMatlab预定义的变量预定义的变量变量名变量名意义意义ans最近的计算结果的变量名最近的计算结果的变量名epsMATLAB定义的正的极小值定义的正的极小值=2.2204e-16pi圆周率圆周率inf值,无限大值,无限大i或或j虚数单元,虚数单元,sqrt(-1)NaN非数,非数,0/0、/ 说明说明l每当每当MA

23、TLABMATLAB启动完成,这些变量就被产生。启动完成,这些变量就被产生。lMATLABMATLAB中,被中,被0 0除不会引起程序中断,给出报警的同时用除不会引起程序中断,给出报警的同时用infinf或或NaNNaN给出结果。给出结果。l用户只能临时覆盖这些预定义变量的值,用户只能临时覆盖这些预定义变量的值,ClearClear或重启或重启MATLABMATLAB可恢可恢复其值。复其值。 2022-6-2Application of Matlab Language25 2.12.1数值表示、变量及表达式数值表示、变量及表达式 (续)(续)n运算符和表达式运算符和表达式运算运算数学表达式数学

24、表达式MATLAB运算符运算符MATLAB表达式表达式加加a+b+a+b减减a-b-a-b乘乘axb*a*b除除a/b或或ab/或或a/b或或ab幂幂abba说明说明lMatlabMatlab用用“ ”和和”/ /”分别表示分别表示“左除左除”和和“右除右除”。对标量而言,。对标量而言,两者没有区别。对矩阵产生不同影响。两者没有区别。对矩阵产生不同影响。lMATLABMATLAB表达式的书写规则与表达式的书写规则与“手写方式手写方式”几乎完全相同。几乎完全相同。l表达式按与常规相同的优先级自左至右执行运算。表达式按与常规相同的优先级自左至右执行运算。l优先级:指数运算级别最高,乘除次之,加减最

25、低。优先级:指数运算级别最高,乘除次之,加减最低。l括号改变运算的次序。括号改变运算的次序。 2022-6-2Application of Matlab Language26 2.1 2.1 数值表示、变量及表达式数值表示、变量及表达式 (续)(续)n复数及其运算复数及其运算nMATLABMATLAB中复数的表达:中复数的表达:z=a+bi,其中,其中a a、b b为为实数。实数。nMATLABMATLAB把复数作为一个整体,象计算实数一把复数作为一个整体,象计算实数一样计算复数。样计算复数。【例例2-1】复数复数z1=3+4i,z2=1+2i, z3= 计算计算62ie123z zzzz1=

26、3+4*i, z2=1+2*i, z3=exp(i*pi/6), z=z1*z2/z3z_real=real(z), z_image=imag(z),z_angle=angle(z), z_length=abs(z), 2022-6-2Application of Matlab Language27 2.2 Matlab矩阵矩阵(数组数组)的表示的表示n 数组的概念数组的概念n 一维数组变量的创建一维数组变量的创建n 二维数组变量的创建二维数组变量的创建n 数组元素的标识与寻访数组元素的标识与寻访n 数组运算数组运算n 多维数组多维数组 2022-6-2Application of Matla

27、b Language28 2.2.1. 数组数组(array)的概念的概念n 数组定义:数组定义: 按按行行(row)和和列列(column)顺序排列的实数或顺序排列的实数或复数的有序集,被称为复数的有序集,被称为数组数组。 数组中的任何一个数都被称为这个数组的数组中的任何一个数都被称为这个数组的元素元素,由其所在的行和列标识,这个标识,由其所在的行和列标识,这个标识也称为数组元素的也称为数组元素的下标或索引下标或索引。Matlab将将标量标量视为视为11的数组。的数组。 对对m行、行、n列的列的2维数组维数组a:计为计为mn的数组的数组a;*行标识、列标识均从行标识、列标识均从1开始;开始;

28、行标识从上到下递增;行标识从上到下递增;列标识从左到右递增。列标识从左到右递增。12345222232425332333435442434445a(3, 4)=34 row is firsta= 2022-6-2Application of Matlab Language29 n 数组的分类数组的分类n 一维数组一维数组,也称为向量,也称为向量(vector) 。 行向量行向量(row vector)、列向量、列向量(column vector)。n 二维数组二维数组(矩阵矩阵matrix)。n 多维数组多维数组。有效矩阵有效矩阵:每行元素的个数必须相同,每:每行元素的个数必须相同,每列元素的

29、个数也必须相同。列元素的个数也必须相同。2.2.1. 数组数组(array)的概念的概念 2022-6-2Application of Matlab Language30 2.2.1、数组、数组(array)的概念的概念 (续)(续)行向量行向量列向量列向量a(2,1)=3a(1,2)=2b(3)=3c(2)=2 2022-6-2Application of Matlab Language31 2.2.2、创建一维数组变量、创建一维数组变量n 第一种方法:使用方括号第一种方法:使用方括号“ ”操作符操作符【例例2-2】创建数组创建数组(行向量行向量)a=1 3 pi 3+5i a=1 3 pi

30、 3+5*i %or a=1, 3, pi, 3+5*i a= 1.0000 3.0000 3.1416 3.0000 + 5.0000i所有的向量元素必须在操作符所有的向量元素必须在操作符“ ”之内;之内;向量元素间用向量元素间用空格空格或英文的或英文的逗点逗点“,”分开。分开。n 第二种方法:使用冒号第二种方法:使用冒号“:”操作符操作符【例例2-3】创建以创建以110顺序排列整数为元素的顺序排列整数为元素的行向量行向量b。b=1:10b=1 2 3 4 5 6 7 8 9 10 2022-6-2Application of Matlab Language32 2.2.2、创建一维数组变量

31、、创建一维数组变量(续)(续)【例例2-4】键入并执行键入并执行c=1:2:10和和d=1:2:9 c=1:2:10c=1 3 5 7 9d=1:2:9d= 1 3 5 7 9利用冒号利用冒号“:”操作符创建行向量的基本语法格操作符创建行向量的基本语法格式:式:x=Start:Increment:EndnStart表示新向量表示新向量x的第一个元素;的第一个元素;n新向量新向量x的最后一个元素不能大于的最后一个元素不能大于End ;nIncrement可正可负,若负,则必须可正可负,若负,则必须StartEnd;若正,则必须若正,则必须Starta=1 2 3; b=2 3 4; c=a;b;

32、c1=a b;n第二种方法:函数方法第二种方法:函数方法函数函数ones(生成全生成全1矩阵矩阵)、zeros (生成全生成全0矩阵矩阵) 、reshapeF“help elmat”获得基本的矩阵生成和操作函数列表获得基本的矩阵生成和操作函数列表【例例2-11】创建全创建全1的的3x3数组。数组。ones(3)【例例2-12】创建全创建全1的的3x4数组。数组。ones(3,4) 2022-6-2Application of Matlab Language39 2.2.3、创建二维数组变量、创建二维数组变量(续)(续)【例例2-11】 reshape的使用演示的使用演示a=-4:4a= -4

33、-3 -2 -1 0 1 2 3 4b=reshape(a, 3, 3)b=-4 -1 2-3 0 3-2 1 4F 数组元素的排列顺序,数组元素的排列顺序,从上到下按列排列从上到下按列排列,先排第一列,然后第二列,先排第一列,然后第二列,F 要求数组的要求数组的元素总数不变元素总数不变。 2022-6-2Application of Matlab Language40 2.2.42.2.4、数组元素的标识与寻访、数组元素的标识与寻访n 数组元素的标识数组元素的标识n “全下标(全下标(index)”标识标识经典数学教科书采用经典数学教科书采用“全下标全下标”标识法:标识法:每一维每一维对应一

34、个下标。对应一个下标。 如对于二维数组,用如对于二维数组,用“行下标和列下标行下标和列下标”标识数组标识数组的元素,的元素,a(2,3)就表示二维数组就表示二维数组a的的“第第2行第行第3列列”的的元素。元素。 对于一维数组,用一个下标即可,对于一维数组,用一个下标即可,b(2)表示一维数组表示一维数组b的第的第2个元素,无论个元素,无论b是行向量还是列向量。是行向量还是列向量。n “单下标单下标”(linear index)标识)标识所谓所谓“单下标单下标”标识就是用一个下标来表明元素标识就是用一个下标来表明元素在数组的位置。在数组的位置。 对于二维数组,对于二维数组, “单下标单下标”编号

35、:设想把二维数组编号:设想把二维数组的所有的所有列列,按先后顺序首尾相接排成,按先后顺序首尾相接排成“一维长列一维长列”,然后自上往下对元素位置执行编号。然后自上往下对元素位置执行编号。n 两种两种“下标下标”标识的变换标识的变换:sub2ind、ind2sub 2022-6-2Application of Matlab Language41 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)【例例2-12】单下标的使用单下标的使用a=zeros(2, 5);a(:)=-4:5a = -4 -2 0 2 4 -3 -1 1 3 5% 注意数组的排列顺序。注意数组的排列顺序。

36、2022-6-2Application of Matlab Language42 2.2.42.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)n 元素与子数组的寻访与赋值元素与子数组的寻访与赋值【例例2-13】一维数组元素与子数组的寻访与赋一维数组元素与子数组的寻访与赋值值a=linspace(1,10,5)a = 1.0000 3.2500 5.5000 7.7500 10.0000a(3) %寻访寻访a的第的第3个元素个元素ans = 5.5000a(1 2 5) %寻访寻访a的第的第1、2、5个元素组成的子个元素组成的子数组数组ans = 1.0000 3.2500 1

37、0.0000 2022-6-2Application of Matlab Language43 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)a(1:3) %寻访前寻访前3个元素组成的子数组个元素组成的子数组ans = 1.0000 3.2500 5.5000a(3:-1:1) %由前由前3个元素倒序构成的子数组个元素倒序构成的子数组ans = 5.5000 3.2500 1.0000a(3:end)ans = 5.5000 7.7500 10.0000a(3:end-1)ans = 5.5000 7.7500% %第第3个及其后所有元素构成的子数组个及其后所有元素构成的

38、子数组% 函数函数end作为参数使用,返回最后一个元素的下标作为参数使用,返回最后一个元素的下标 2022-6-2Application of Matlab Language44 a(1 2 3 5 5 3 2 1) ans = 1.0000 3.2500 5.5000 10.0000 10.0000 5.5000 3.2500 1.0000% 数组元素可以被任意重复访问,构成长度大于数组元素可以被任意重复访问,构成长度大于原数组的新数组。原数组的新数组。a(6)? Index exceeds matrix dimensions.M 下标值超出了数组的维数,导致错误下标值超出了数组的维数,导致

39、错误a(2.1)? Subscript indices must either be real positive integers or logicals.M 下标值只能取正整数或逻辑值下标值只能取正整数或逻辑值2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续) 2022-6-2Application of Matlab Language45 2.2.42.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)a(3)=0 %修改数组修改数组a的第的第3元素值为元素值为0a = 1.0000 3.2500 0 7.7500 10.0000a(2 5)=1 1a =

40、1.0000 1.0000 0 7.7500 1.0000 可以修改指定数组元素的值可以修改指定数组元素的值 一次可以修改多个数组元素的值一次可以修改多个数组元素的值 要修改的数组元素的个数应与送入数组的要修改的数组元素的个数应与送入数组的元素个数相同元素个数相同 2022-6-2Application of Matlab Language46 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)【例例2-14】二维数组元素与子数组的寻访与赋二维数组元素与子数组的寻访与赋值值a_2=zeros(2, 4) %创建创建2x4的全的全0数组数组a_2 = 0 0 0 0 0 0 0

41、 0a_2(:)=1:8a_2 = 1 3 5 7 2 4 6 8 a_2(2 5 8) %单下标方式寻访多个元素单下标方式寻访多个元素ans = 2 5 8%注意元素的排列顺序注意元素的排列顺序 2022-6-2Application of Matlab Language47 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续) a_2(2 5 8) =10 20 30a_2 = 1 3 20 7 10 4 6 30a_2(:,2 3)=ones(2) %双下标方式寻访并修改双下标方式寻访并修改a_2 = 1 1 1 7 10 1 1 30%二维数组可以二维数组可以“单下标单

42、下标”方式或方式或“全下标全下标”方式方式访问、赋值;访问、赋值;%“单下标单下标”方式赋值时,方式赋值时,等号两边涉及的元素个等号两边涉及的元素个数必须相等;数必须相等;%“全下标全下标”方式赋值时,方式赋值时,等号右边数组的大小必等号右边数组的大小必须等于原数组中涉及元素构成的子数组的大小。须等于原数组中涉及元素构成的子数组的大小。 2022-6-2Application of Matlab Language48 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)a_2(:,end)ans = 7 30a_2(:,end-1)ans = 1 1a_2(:, end:-1:

43、3)ans = 7 1 30 1a_2(end,:)ans = 10 1 1 30a_2(end,2:4)ans = 1 1 30a_2 (4 6)=6:7a_2 = 1 1 1 7 10 6 7 30a_2(end,2:end-1) What is the result? 2022-6-2Application of Matlab Language49 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)【例例2-15】 size、length函数函数a=ones(4,6)*6m=size(a)len=length(a)b=1:5;length(b)c=blength(c)

44、size函数返回变量的大小,即函数返回变量的大小,即变量数组的行列数变量数组的行列数 length函数返回变量数组的最函数返回变量数组的最大维数大维数 2022-6-2Application of Matlab Language50 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)n 双下标到单下标的转换双下标到单下标的转换【例例2-16】 sub2ind函数函数-双下标转换为单下标双下标转换为单下标A = 17 24 1 8; 2 22 7 14; 4 6 13 20;A(:,:,2) = A - 10A(2,1,2)sub2ind(size(A),2,1,2)A(14)

45、 2022-6-2Application of Matlab Language51 2.2.4、数组元素的标识与寻访、数组元素的标识与寻访 (续)(续)n 单下标到双下标的转换单下标到双下标的转换【例例2-17】 ind2sub函数函数-双下标转换为单下标双下标转换为单下标b = zeros(3);b(:) = 1:9IND = 3 4 5 6I,J = ind2sub(size(b),IND) 2022-6-2Application of Matlab Language52 2.2.5、多多维数组维数组n 多维数组的定义多维数组的定义 在在 MATLAB 的的数据类型数据类型中,向量中,向量

46、可视为一可视为一维数组,维数组, 矩阵可视为矩阵可视为二二维数组维数组,对于维数对于维数(Dimensions)超过超过2 的的数组均可视为数组均可视为多维数组多维数组(Multidimesional Arrays,简称简称N-D Arrays)。 2022-6-2Application of Matlab Language53 2.2.5、多多维数组维数组 (续)(续)n 将两个二维(平面)数组叠将两个二维(平面)数组叠在一起,在一起,就就构成三维数组构成三维数组,第三第三维称为维称为页页(Page),如下,如下图所示图所示: (3,4) (3,1) (3,2) (3,3)(2,4)(2,3

47、)(2,2)(2,1)(1,4)(1,3)(1,2)(1,1)(1,1)(1,2)(1,3)(1,4)(2,1)(2,2)(2,3)(2,4)(3,1)(3,2)(3,3)(3,4)页列页行 2022-6-2Application of Matlab Language54 2.2.5、多多维数组维数组 (续)(续)n 三维数组三维数组,可,可对应对应至一至一个个 X - Y - Z 三三维立体坐标维立体坐标,如下,如下图所示图所示: Z(Z(页页) )Y(Y(列列) )X(X(行行) ) 2022-6-2Application of Matlab Language55 2.2.52.2.5、多

48、多维数组维数组 (续)(续)n三维数组元素的寻址:三维数组元素的寻址:可以可以(行、列、页行、列、页)来来确定确定。n以以维数为维数为 342 的的三维数组为例三维数组为例,其,其寻址寻址方式如下方式如下图所示图所示: n数组数组 A 是是三维数组三维数组,其中,其中 A(:,:,1)代表第一代表第一页页的的二维数组二维数组,A(:,:,2)代表第代表第二页二页的的二维二维数组数组。 2022-6-2Application of Matlab Language56 2.2.5、多多维数组维数组 (续)(续)n多维数组多维数组的建立的建立n建立一建立一个简单个简单的的多维数组多维数组,可,可直直

49、接由接由 MATLAB 命令视窗内输入(使用命令视窗内输入(使用“ ”操作操作符)符)n例例:由两个相同大小二维数组创建三维数组由两个相同大小二维数组创建三维数组A(:, :, 1) = 1 0 2 5; 4 1 8 7; 3 2 6 3;A(:, :, 2) = 3 5 4 1; 2 6 2 1; 4 2 3 0 A(:,:,1) = 1 0 2 5 4 1 8 7 3 2 6 3A(:,:,2) = 3 5 4 1 2 6 2 1 4 2 3 0 2022-6-2Application of Matlab Language57 2.2.5、多多维数组维数组 (续)(续)执行命令:执行命令:

50、whos A,得到如下结果:,得到如下结果: Name Size Bytes Class A 3x4x2 192 double arrayGrand total is 24 elements using 192 bytes 2022-6-2Application of Matlab Language58 2.2.6、数组的算术运算、数组的算术运算n MATLAB数组支持线性代数中所有的矩阵数组支持线性代数中所有的矩阵运算。运算。n 建立特有的数组运算符,如:建立特有的数组运算符,如:“.*”、“./”等。等。 MATLAB数组运算符列表数组运算符列表运算运算 运算符运算符含义说含义说明明加加

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(广东石油化工学院最新matlab教程(全)资料课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|