资源描述:
《matlab基础--林峰3.4》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三数组运算(一)一、实验目的:(1)掌握向量及其运算方法;(2)掌握数组的寻址方法;(3)掌握数组的排序;(4)掌握数组的基本数值运算;(5)掌握多项式的创建。二、实验内容和步骤:数组就是我们最熟悉的array,在MATLAB中可以建立任意尺寸和维数,只要内存足够,不够的时候会提示。一个数组是以行和列组织起来的数据集合,并且拥有一个数组名。数组中的单个数据是可以被访问的,访问的方法是数组名后带一个括号,括号内是数据所对应的行标和列标。标量在MATLAB中也被当作数组来处理——它被看作只有一行一列的数组。数组可以定义为向量或矩阵。向量一般来描述一维数组,而矩阵往往来描述二维或多维数组。从外
2、观形状和数据结构上看,二维数组和数学中的矩阵没有区别。但是矩阵作为一种变换或映射算子的体现,矩阵运算有着明确而严格的数学规则。而数组运算是Matlab软件所定义的规则,其目的是为了数据管理方便、操作简单、指令形式自然和执行计算的有效。虽然数组运算尚缺乏严谨的数学推理,虽然数组运算仍在完善和成熟中,但是它的作用和影响正随着matlab的发展而扩大。1、向量的生成(1)、在“命令”窗口中直接输入向量:在MATLAB7中,生成向量最简单的方法就是在“命令”窗口中按一定格式直接输入。输入的格式要求是,向量元素用“[]”括起来,元素之间用空格、逗号或者分号相隔。需要注意的是,用它们相隔生成的向量形式是
3、不相同的:用空格或逗号生成行向量;用分号生成列向量。在MATLAB7中,可以在行和列向量之间进行转置,使用命令为“'”。题3-1:分别在“命令”窗口中输入行向量a1=(1,2,3,4)和列向量18,按Enter键确认,并观察结果。同时将行向量转置为列向量。(2)、等差元素向量的生成:当向量的元素过多,同时向量各元素有等差的规律,此时采用直接输入法将过于繁琐。针对该种情况,可以使用冒号(:)和linspace函数来生成等差元素向量。l冒号生成法:基本格式为向量,其中Vec表示生成的向量,vec0表示第一个元素,n表示步长,vecn表示最后一个元素。l使用linspace函数:这是一个线性等分向
4、量函数,基本格式为,其中Vec表示当前生成的行向量,Vec0表示第一个元素,Vecn表示最后一个元素,n表示生成向量元素的个数。当n为默认时,系统将默认为100。题3-2、利用上述两种方法,生成等差元素向量。1、向量的基本运算(1)、向量与数的加法(减法):向量中的每个元素与数的加法(减法)运算。(2)、向量与数的乘法(除法):向量中的每个元素与数的乘法(除法)运算。注意:当进行除法运算时,向量只能作为被除数,数只能作为除数。题3-3、在“命令”窗口生成一个等差元素向量,并对其进行与数的加减乘除运算。(3)、向量与向量的加法(减法)运算:向量中的每个元素与另一个向量中相对应的元素的加法(减法
5、)运算。题3-4、在“命令”窗口生成两个向量,并对其之间进行加减运算。(4)、两个向量的点积:等于其中一个向量的模与另一个向量在这个向量的方向上的投影的乘积。在MATLAB7中,提供有专门计算向量点积的函数dot。需要注意的是,点积生成的是一个数,在MATLAB7中计算向量的点积还要注意各向量维数的一致性,以保证点积的操作合法。(定义向量u=(ux,uy,uz)和向量v=(vx,vy,vz),u.v=(uxvx+uyvy+uzvz),)题3-5、计算向量x1=(11,22,33,44)与向量x2=(1,2,3,4)的点积。(5)、叉积的几何意义是指过两个相交向量的交点,并与此两向量所在平面垂
6、直的向量。在MATLAB7中,同样提供有专门计算向量叉积的函数cross。注意的是,在MATLAB187中计算向量的叉积要求各向量维数一致(由几何意义可知,向量维数只能为3),以保证叉积的操作合法。(定义向量u=(ux,uy,uz)和向量v=(vx,vy,vz),u×v=(uyvz-uzvy,uzvx-uxvz,uxvy-uyvx)。题3-6、令向量A=(1,2,3),B=(3,1,4)。求A和B的点积和叉积。同时求解题3-5的叉积。1、数组的寻址由于数组是由多个元素组成的,因此,在访问数组的单个或多个元素时,有必要对数组进行寻址运算。例3-1:首先,生成一个1×10的数组A。>>A=ran
7、d(1,10)A=Columns1through80.01530.74680.44510.93180.46600.41860.84620.5252Columns9through100.20260.6721访问A的单个元素时,可以直接采用访问下标的方法。如要访问A的第四个元素,可以进行如下操作。>>A(4)ans=0.9318如果用户需要一次访问一块元素,可以使用MATLAB7提供的冒号。如要访问A中的第2到第