Matlab数值数组及其运算.ppt_第1页
Matlab数值数组及其运算.ppt_第2页
Matlab数值数组及其运算.ppt_第3页
Matlab数值数组及其运算.ppt_第4页
Matlab数值数组及其运算.ppt_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

第3章数值数组及其运算,一维数组二维数组高维数组特殊数组关系操作和逻辑操作,3.1简单数组,x=0.1*pi.2*pi.3*pi.4*pi.5*pi.6*pi.7*pi.8*pi.9*pipix=Columns1through700.31420.62830.94251.25661.57081.8850Columns8through112.19912.51332.82743.1416y=sin(x)y=Columns1through700.30900.58780.80900.95111.00000.9511Columns8through110.80900.58780.30900.0000,3.2一维数组的创建和寻访,3.2.1一维数组的创建逐个元素输入法冒号生成法x=a:inc:b若(b-a)是inc的整数倍,则所生成数组的最后一个元素等于b,否则小于b。inc省略时,默认其取值为1。inc可以取正数或负数。inc取正时,要保证ab。定数线性采样法x=linspace(a,b,n),x=(0:0.1:1)*pix=Columns1through700.31420.62830.94251.25661.57081.8850Columns8through112.19912.51332.82743.1416,x=linspace(0,pi,11)x=Columns1through700.31420.62830.94251.25661.57081.8850Columns8through112.19912.51332.82743.1416,3.2.2一维数组的子数组寻访和赋值,x(3)%寻访数组x的第三个数组ans=0.6283x(125)%寻访数组x的第1,2,5个元素组成的子数组ans=00.31421.2566x(1:3)%寻访数组x前三个元素组成的子数组ans=00.31420.6283,x(3:end)%数组x从第三个元素开始到最后一个元素ans=Columns1through70.62830.94251.25661.57081.88502.19912.5133Columns8through92.82743.1416x(3:-1:1)%寻访数组x前三个元素倒排构成的子数组ans=0.62830.31420x(12344321)%对元素可进行重复寻访ans=Columns1through700.31420.62830.94250.94250.62830.3142Column80,x(3)=0 x=Columns1through700.314200.94251.25661.57081.8850Columns8through112.19912.51332.82743.1416x(14)=11x=Columns1through71.00000.314201.00001.25661.57081.8850Columns8through112.19912.51332.82743.141,3.3二维数据的创建,整个输入数组必须以方括号“”为其首尾;数组的行与行之间必须用分号“;”或回车键【Enter】隔开;数组元素必须由逗号“,”或空格分隔。,a=2.7358;b=33/79;C=1,2*a+i*b,b*sqrt(a);sin(pi/4),a+5*b,3.5+iC=1.00005.4716+0.4177i0.69090.70714.82443.5000+1.0000i,3.4二维数组元素的标识,“全下标”标识两个下标组成:行下标,列下标。如A(3,5)“单下标”标识只用一个下标来指明元素在数组中的位置“逻辑1”标识诸如寻找数组中所有大于某值的元素的问题,“单下标”与“全下标”的转换关系:以(mn)的二维数组A为例,若“全下标”元素位置是“第r行,第c列”,那么相应的“单下标”为l=(c-1)*m+r。sub2ind根据全下标算出单下标ind2sub根据单下标算出全下标,A=123;456;789A=123456789,A(2,3)ans=6sub2ind(33,2,3)ans=8,A(7)ans=3i,j=ind2sub(33,7)i=1j=3,A=-4-2024-3-1135L=abs(A)3L=1000100001islogical(L)ans=1X=A(L)X=-445,3.5二维数组的子数组寻访和赋值,A=zeros(2,4)A=00000000A(:)=1:8%全元素赋值方式A=13572468s=235%产生单下标数组行数组s=235A(s)ans=235,Sa=102030%Sa是长度为3的“列数组”Sa=102030A(s)=Sa%单下标方式赋值A=12030710468A(:,23)=ones(2)把A的第2、3列元素全赋值为1A=111710118,3.6数组运算和矩阵运算,3.6.1标量数组运算,g=123456789101112g-2ans=-1012345678910,2*g-1ans=13579111315171921232*g/5+1ans=1.40001.80002.20002.60003.00003.40003.80004.20004.60005.00005.40005.8000,3.6.2数组数组运算,g=123456789101112h=111122223333,g+hans=234578910121314152*g-hans=1357810121415171921,g.*hans=12341012141627303336,g*h?Errorusing=*Innermatrixdimensionsmustagree.,g./hans=1.00002.00003.00004.00002.50003.00003.50004.00003.00003.33333.66674.0000,3.6.3数组运算和矩阵运算的对照,A=zeros(2,3);A(:)=1:6;A=A*(1+i)A_A=A.A_M=AA=1.0000+1.0000i3.0000+3.0000i5.0000+5.0000i2.0000+2.0000i4.0000+4.0000i6.0000+6.0000iA_A=1.0000+1.0000i2.0000+2.0000i3.0000+3.0000i4.0000+4.0000i5.0000+5.0000i6.0000+6.0000iA_M=1.0000-1.0000i2.0000-2.0000i3.0000-3.0000i4.0000-4.0000i5.0000-5.0000i6.0000-6.0000i,3.6.4标准数组生成函数,ones(3)ans=111111111ones(1,2)ans=11magic(3)ans=816357492,a=1234a=1234diag(a)ans=1000020000300004diag(a,2)ans=001000000200000030000004000000000000,3.6.5数组操作函数,a=-4:4a=-4-3-2-101234A=reshape(a,3,3)A=-4-12-303-214,flipud(A)ans=-214-303-4-12fliplr(A)ans=2-1-430-341-2,3.7数组构作技法综合,A=123456789,A(3,3)=0A=123456780,A(2,6)=1A=123000456001780000,A(:,4)=4A=123400456401780400,B=A(3:-1:1,1:3)或B=A(end:-1:1,1:3)B=780456123B=A(3:-1:1,:)B=780400456401123400C=AB(:,13)C=123400704564014678040013,3.8“非数”和“空”数组,3.8.1非数NaNNaN性质:NaN参与运算所得的结果也是NaN,即具有传递性。非数没有“大小”概念,因此不能比较两个非数的大小。非数的功用:真实记述0/0,/,0运算的后果;避免可能因0/0,/,0运算而造成程序执行的中断;在数据可视化中,用来裁剪图形。,a=0/0Warning:Dividebyzero.(TypewarningoffMATLAB:divideByZerotosuppressthiswarning.)a=NaNisnan(a)ans=1,3.8.2“空”数组某维长度为0或若干维长度均为0的数组都是“空”数组。“空”数组的功用:在没有“空”数组参与的运算时,计算结果中的“空”可以合理地解释“所得结果的含义”。运用“空”数组对其他非空数组赋值,可以改变数组的大小,但不能改变数组的维数。,a=a=b=ones(2,0)b=Emptymatrix:2-by-0c=zeros(2,0)c=Emptymatrix:2-by-0isempty(a)ans=1A=reshape(-4:5,2,5)A=-4-2024-3-1135,3.10关系操作和逻辑操作,在所有关系表达式和逻辑表达式中,作为输入的任何非0数都被看作是“逻辑真”,而只有0才被认为是“逻辑假”。关系表达式和逻辑表达式的计算结果,即输出,是一个由0和1组成的“逻辑数组”。在此数组中的1表示“真”,0表示“假”。逻辑数组是一种特殊的数值数组。与“数值类”有关的操作和函数对它也同样适用;它又自身的特殊用途,如数组寻访等。,C,B=10-A,r0=(At=-2*pi:pi/10:2*pi;%该自变量数组中,存在0值y=sin(t)./t;%在t=0处,计算将产生NaNtt=t+(t=0)*eps;%使0元素被一个“机器零”小数代替yy=sin(tt)./tt;%用sin(eps)/eps近似代替sin(0)/0极限subplot(1,2,1),plot(t,y),axis(-7,7,-0.5,1.2),xlabel(t),ylabel(y),title(残缺图形)subplot(1,2,2),plot(tt,yy),axis(-7,7,-0.5,1.2),A=1:9,L1=(A5),L2=(A3)y=sin(t);%产生正弦波z1=(t2*pi).*y;%获得整流半波w=(tpi/3%

温馨提示

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

评论

0/150

提交评论