资源描述:
《matlab多维数组》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Matlab语言及其应用第4讲4、数组元素的标识与寻访(续)【例4-4】size、length函数a=ones(4,6)*6m=size(a)len=length(a)b=1:5;length(b)c=b’length(c)size函数返回变量的大小,即变量数组的行列数length函数返回变量数组的最大维数7/13/20212MatlabLanguage4、数组元素的标识与寻访(续)双下标到单下标的转换【例4-5】sub2ind函数-双下标转换为单下标A=[172418;222714;461320];sub2ind(size(A),2,2)A(5)7/13/20213Matla
2、bLanguage4、数组元素的标识与寻访(续)单下标到双下标的转换【例4-6】ind2sub函数-单下标转换为双下标b=zeros(3);b(:)=1:9IND=[3456][I,J]=ind2sub(size(b),IND)7/13/20214MatlabLanguage5、多维数组多维数组的定义在MATLAB的数据类型中,向量可视为一维数组,矩阵可视为二维数组,对于维数(Dimensions)超过2的数组均可视为「多维数组」(MultidimesionalArrays,简称N-DArrays)。7/13/20215MatlabLanguage5、多维数组(续)将两个二维(
3、平面)数组叠在一起,就构成三维数组,第三维称为「页」(Page),如下图所示:(3,4)(3,1)(3,2)(3,3)(2,4)(2,3)(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)页列页行7/13/20216MatlabLanguage5、多维数组(续)三维数组,可对应至一个X-Y-Z三维立体坐标,如下图所示:Z(页)Y(列)X(行)7/13/20217MatlabLanguage5、多维数组(续)三维数组元素的寻址:可以(行、列、页)来确定
4、。以维数为3×4×2的三维数组为例,其寻址方式如下图所示:数组A是三维数组,其中A(:,:,1)代表第一页的二维数组,A(:,:,2)代表第二页的二维数组。7/13/20218MatlabLanguage5、多维数组(续)多维数组的建立建立一个简单的多维数组,可直接由MATLAB命令视窗内输入(使用“[]”操作符)例:由两个相同大小二维数组创建三维数组A(:,:,1)=[1025;4187;3263];A(:,:,2)=[3541;2621;4230]A(:,:,1)=102541873263A(:,:,2)=3541262142307/13/20219MatlabLangua
5、ge5、多维数组(续)执行命令:whosA,得到如下结果:NameSizeBytesClassA3x4x2192doublearrayGrandtotalis24elementsusing192bytes7/13/202110MatlabLanguage6、数组的算术运算MATLAB数组支持线性代数中所有的矩阵运算。建立特有的数组运算符,如:“.*”、“./”等。MATLAB数组运算符列表运算运算符含义说明加+相应元素相加减-相应元素相减乘*矩阵乘法点乘.*相应元素相乘幂^矩阵幂运算点幂.^相应元素进行幂运算左除或右除或/矩阵左除或右除左点除或右点除.或./A的元素被B的对
6、应元素除7/13/202111MatlabLanguage6、算术运算(续)【例5-1】数组加减法a=zeros(2,3);a(:)=1:6;b=a+2.5b=3.50005.50007.50004.50006.50008.5000c=b-ac=2.50002.50002.50002.50002.50002.50007/13/202112MatlabLanguage6、算术运算(续)【例5-2】画出y=1/(x+1)的函数曲线,x∈[0,100]。x=0:100;y=1./(x+1);plot(x,y);legend(‘y=1/(x+1)’);7/13/202113Matlab
7、Language6、算术运算(续)【例5-2】生成一个信号:x=sin(2*pi*t)+sin(4*pi*t)t=[0:199]./100;%采样时间点%生成信号x=sin(2*pi*t)+sin(4*pi*t);plot(t,x);legend(‘x=sin(2*pi*t)+sin(4*pi*t)’);7/13/202114MatlabLanguage6、算术运算(续)7/13/202115MatlabLanguage6、算术运算(续)【例5-2】点幂“.^”举例>>a=1:6a=1234