《MATLAB入门教程》PPT课件.ppt_第1页
《MATLAB入门教程》PPT课件.ppt_第2页
《MATLAB入门教程》PPT课件.ppt_第3页
《MATLAB入门教程》PPT课件.ppt_第4页
《MATLAB入门教程》PPT课件.ppt_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二讲数值数组及其运算,数值数组和数组运算始终是MATLAB的核心,第二讲数值数组及其运算,2.1引言2.2一维数组的创建和寻访2.3二维数组的创建2.4二维数组元素的标识2.5二维数组的子数组寻访和赋值2.6执行数组运算的常用函数,第二讲数值数组及其运算,2.7数组运算和矩阵运算2.8标准数组生成函数和数组操作函数2.9数组构作技法综合2.10高维数组2.11“非数”和“空”数组2.12关系操作和逻辑操作,2.1引言,数组:由一组实数或复数排成的长方阵列(Array)一维的“行”或“列”二维的“矩形”三维的“若干矩形的堆叠”更高的任意维,2.1引言,数组运算:无论对数组施加什么运算(包括函数),总认为是对数组中每个元素平等的实施同样的操作设计数组和数组运算的目的:使程序简单、易读;更接近数学公式提高程序向量化程度,提高计算效率,节省系统开销,2.1引言,绘制函数在0x1时的曲线x=0:0.1:1%定义自变量的采样点取值数组y=x.*exp(-x)%利用数组运算计算各自变量采样点上的函数值plot(x,y),xlabel(x),ylabel(y),title(y=x*exp(-x)%绘图第一句定义自变量数组:0为起点,每隔0.1取一个点,直到1。得到111的数组第二句中,指数函数exp(-x)对x每个元素求值,结果也是111的数组数组乘是两个数组对应元素相乘,得到y也是111的数组连续函数必须在相应区间上采样才能进行数值计算,2.1引言,2.2一维数组的创建和寻访,1.一维数组的创建逐个元素输入x=2pi/2sqrt(3)3+5i冒号生成格式x=a:inc:ba是第一个元素,inc是步长(缺省为1)若(b-a)是inc的整数倍,则生成数组最后一个元素等于b,否则小于binc可取正数或负数。取正:ab,2.2一维数组的创建和寻访,线性采样格式x=linspace(a,b,n)a,b是第一个和最后一个元素,n是采样点数生成1n的数组等价于x=a:(b-a)/(n-1):b运用MATLAB函数生成法如rand,zeros,ones等以上均为行数组,列数组转置即可,2.2一维数组的创建和寻访,2.一维数组子数组的寻访和赋值子数组的寻访(Address)rand(state,0)%把均匀分布伪随机发生器置为0状态x=rand(1,5)%产生15的均布随机数组x(3)%寻访数组x的第三个元素x(125)%寻访数组x的第一、二、五个元素组成的子数组x(1:3)%寻访前三个元素组成的子数组x(3:end)%寻访除前2个元素外的全部其他元素。end是最后一个元素的下标x(3:-1:1)%由前三个元素倒排构成的子数组x(find(x0.5)%由大于0.5的元素构成的子数组x(12344321)%对元素可以重复寻访,使所得数组长度允许大于原数组,2.2一维数组的创建和寻访,子数组的赋值(Assign)x(3)=0%第三个元素赋值为0 x(14)=11%第一、四个元素都赋值为1保证被赋值的子数组长度与送入的数组长度相同,2.3二维数组的创建,二维数组与矩阵二维数组是由实数或复数排列成矩形构成的从数据结构上看,矩阵和二维数组没有区别当二维数组带有线性变换含义时,就是矩阵,2.3二维数组的创建,1.直接输入法二维数组三要素:整个数组必须以“”为首尾数组行与行之间必须用“;”或回车隔离数组元素必须用“,”或空格分隔,2.3二维数组的创建,在MATLAB环境下,用下面三条指令创建二维数组Ca=2.7358;b=33/79;%这两条指令分别给变量a,b赋值C=1,2*a+i*b,b*sqrt(a);sin(pi/4),a+5*b,3.5+i%创建二维数组CC=1.00005.4716+0.4177i0.69090.70714.82443.5000+1.0000i“;”在“”内,是数组行分隔符“;”作为指令结束符,不显示执行结果,2.3二维数组的创建,复数数组的另一种输入方式M_r=1,2,3;4,5,6,M_i=11,12,13;14,15,16CN=M_r+i*M_i%由实部、虚部数组构成复数数组M_r=123456M_i=111213141516CN=1.0000+11.0000i2.0000+12.0000i3.0000+13.0000i4.0000+14.0000i5.0000+15.0000i6.0000+16.0000i“,”在“”内,是数组元素分隔符“,”作为指令结束符,显示执行结果,2.3二维数组的创建,2.数组编辑器创建单击工作空间中的“新建”图标3.利用M文件创建和保存数组对于经常需要调用的数组,尤其是比较大而复杂的数组,值得为它专门建立一个M文件4.利用MATLAB函数创建,2.4二维数组元素的标识,1.“全下标”标识经典教科书的标识法即指出是“第几行,第几列”的元素优点:几何概念清楚,引述简单。(最常用)“全下标”由两个下标组成:行下标,列下标。例如:A(2,5),2.4二维数组元素的标识,2.“单下标”标识就是用一个下标来指明元素在数组中的位置对二维数组元素进行“一维编号”把二维数组所有列,按先左后右的次序,首尾相接排成“一维长列”,然后自上往下编号“单下标”与“全下标”转换关系:以(mn)的二维数组A为例,全下标元素位置是“第r行,第c列”,改为单下标表示为a=(c-1)m+r。MATLAB有两个指令可实现此转换:sub2ind据全下标算出单下标ind2sub据单下标算出全下标,2.4二维数组元素的标识,3.“逻辑1”标识常用问题:寻找数组中大于某值的元素找出数组中所有绝对值大于3的元素A=zeros(2,5);%预生成一个25全零数组A(:)=-4:5%运用“全元素”赋值法获得AL=abs(A)3%产生与A同维的“0-1”逻辑值数组islogical(L)%判断L是否逻辑值数组X=A(L)%把L中逻辑值1对应的A元素取出,2.4二维数组元素的标识,A=-4-2024-3-1135L=1000100001ans=1X=-445L的元素是0或1,它是“逻辑数组”,是一种特殊的数据类型。“逻辑1”标识法:通过与A同样大小的逻辑数组L中“1”的位置指示A中元素的位置,2.5二维数组的子数组寻访和赋值,A(r,c)A的r行c列元素A(r,:)A的r行全部元素A(:,c)A的c列全部元素A(:)A的“单下标全元素”寻访A(s)“单下标”寻访。生成“s指定的”一维数组。s是行数组(或列数组),则A(s)就是长度相同的行数组(或列数组)。A(L)“逻辑1”寻访。由与A同样大小的“逻辑数组”L中的“1”元素选出A的对应元素。,A(r,c)=Sa“双下标”方式赋值。Sa的“行宽、列长”必须与A(r,c)的“行宽、列长”相同。A(:)=D(:)全元素赋值。结果:保持A的“行宽、列长”不变。条件:A、D两个数组的元素数相等。A(s)=Sa“单下标”部分元素赋值。结果:保持A的“行宽、列长”不变。条件:s单下标数组长度必须与一维数组Sa的长度相等,但s、Sa不一定同是“行数组”或“列数组”。,2.5二维数组的子数组寻访和赋值,A=zeros(2,4)%创建24的全零数组A=00000000A(:)=1:8%全元素赋值方式A=13572468s=235;%产生单下标数组行数组A(s)%由“单下标行数组”寻访产生A元素组成的行数组Sa=102030%Sa是长度为3的“列数组”(行数组也可以)A(s)=Sa%单下标方式赋值,2.5二维数组的子数组寻访和赋值,ans=235Sa=102030A=12030710468A(:,23)=ones(2)%双下标赋值方式:把A的第2、3列元素全赋为1A=111710118,2.5二维数组的子数组寻访和赋值,2.6执行数组运算的常用函数,数组加、减、乘、除、幂函数的数组运算规则:函数f(.)对数组的运算相当于对数组的每一个元素作相同的函数运算大部分常用函数都执行数组运算三角、指数、复数、取整求余、坐标变换,2.7数组运算和矩阵运算,矩阵运算有明确、严格的数学规则数组运算是MATLAB定义的规则目的:数据管理方便、操作简单、指令形式自然、执行计算有效缺乏严谨的数学推理,本身仍在完善影响随MATLAB而扩大,2.7数组运算和矩阵运算,运算指令对照A.非共轭转置A共轭转置A.n各元素n次幂An方阵的n次幂A.*B对应元素相乘A*B矩阵相乘A./BA元素除以B元素A/BA右除BB.A同上BAA左除Bexp(A)对各元素求幂expm(A)矩阵指数log(A)对各元素求对数logm(A)矩阵对数sqrt(A)对各元素求方根sqrtm(A)矩阵平方根,2.7数组运算和矩阵运算,A=s标量赋给A的每个元素(s和A同大小)A#B对应元素关系运算(=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论