matlab实验报告实验3.docx

上传人:b****5 文档编号:5696633 上传时间:2022-12-31 格式:DOCX 页数:18 大小:938.39KB
下载 相关 举报
matlab实验报告实验3.docx_第1页
第1页 / 共18页
matlab实验报告实验3.docx_第2页
第2页 / 共18页
matlab实验报告实验3.docx_第3页
第3页 / 共18页
matlab实验报告实验3.docx_第4页
第4页 / 共18页
matlab实验报告实验3.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

matlab实验报告实验3.docx

《matlab实验报告实验3.docx》由会员分享,可在线阅读,更多相关《matlab实验报告实验3.docx(18页珍藏版)》请在冰豆网上搜索。

matlab实验报告实验3.docx

matlab实验报告实验3

学生实验报告

开课学院及实验室:

机电学院2012年11月30日

学院

机电学院

年级、专业、班

姓名

学号

实验课程名称

MATLAB程序设计

成绩

实验项目名称

实验3:

数值数组及其运算

指导老师

一、实验目的

1、掌握一维数组的创建方法;掌握一维数组子数组的寻访和赋值方法;

2、掌握二维数组的创建方法;掌握二维数组子数组的寻访和赋值方法;

3、掌握数组的各种运算,理解数组运算和矩阵运算的区别。

二、实验原理

1、数组的创建和寻访

数值数组(NumericArray)和数组运算(ArrayOperations)始终是MATLAB的核心内容。

自MATLAB5.x版起,由于其“面向对象”的特征,这种数值数组(以下简称为数组)成为了MATALB最重要的一种内建数据类型(Built-inDataType),而数组运算就是定义在这种数据结构上的方法(Method)。

数组是指实数或复数组成的长方阵列(Array),可以是一维、二维、三维或更高的维数。

不同维数的数组创建和访问的方法有相同之处,也有不同之处。

一维数组的创建方法有:

(1)逐个输入法;

(2)冒号生成法;(3)定数线性采样法;(4)定数对数生成法。

对于一维数组的寻访,常用的有以下几种类型:

(1)x(3);

(2)x([125]);(3)x(1:

3);(4)x(3:

end);(5)x(3:

-1:

1);(6)x(find(x>0.5));(7)x([12344321])。

在这里假设x是长度为5的一维数组。

二维数组则是由实数或复数排列称矩形而成。

二维数组和矩阵在数据结构上相同;一个矩形阵列是二维数组或矩阵取决于所使用的运算符号。

二维数组的创建方法有:

(1)直接输入法,用于生成较小数组;

(2)利用M文件创建和保存数组,用于经常要调用的数组,尤其是较大而且复杂的数组。

对于二维数组的寻访,常用的有以下几种类型:

(1)全下标标识法,如A(2,3);

(2)单下标标识法,如A(10),这种方法比较少用;(3)单下标全元素标识,如A(:

),指的是A的各列按先左后右的次序、首尾相接排成“一维长列”后,得到的一维数组的全部元素,其结果是一个一维列数组;类似地,也需注意A(r,:

)、A(:

c)的含义。

(4)“逻辑1”标识。

在MATLAB中,提供了相关的函数用作常用的标准数组的生成,如全0数组、全1数组、单位矩阵、对角阵、均匀分布的随机数组、正态分布的随机数组等,都有相关的生成函数。

对于一些数组的特殊操作,MATLAB也提供了相应的操作函数。

如提取对角元素或生成对角阵、逆时针旋转二维数组90度、提取数组下三角部分、提取数组上三角部分等,都有相应的函数。

在应用中注意利用这些函数,可以事半功倍。

2、数组运算

数组运算是指无论在数组上施加什么运算(加减乘除或函数),总认定那种运算对被运算数组中的每个元素平等地实施同样的操作。

数组运算包括加、减、乘、除、乘方等,除加减外,数组之间进行乘、除、乘方都必须在运算符号前加“.”,否则视为矩阵运算。

此外,数组运算还包括转置、关系运算和逻辑运算。

除了以运算符号执行数组运算外,也可以对数组施加函数,以函数形式进行数组运算。

如对数组X执行函数f的运算:

,其中X为m行n列的数组。

执行数组运算的常用函数有三角函数和双曲函数、指数函数、复数函数、圆整函数和求余函数、坐标变换函数等。

三、实验内容

1、一维数组的创建

(1)、利用逐个输入法、冒号生成法以及定数线性采样法创建以下一维数组:

X1=[1,2,3,4,5,6,7,8,9,10]

(2)、利用冒号生成法创建以下数组:

X2=(1,2,3,4,9,8,7,6,5)

(3)、利用定数对数生成法创建一个第一个元素为10,最后一个元素为100,元素个数为51的一维数组X3。

2、一维数组子数组的寻访和赋值

以冒号生成法创建一个第一个元素为0,步长为0.1,最后一个元素为2的一维数组X4,并写出寻访或赋值的以下指令:

a、寻访X4的第6个元素;

b、同时寻访X4的第2、5、7个元素;

c、寻访前3个元素组成的子数组;

d、寻访除前3个元素外的全部的其他元素;

e、由后三个元素倒排构成的子数组;

f、由大于0.5的元素构成的子数组;

g、把第三个元素重新赋值为0;

把当前x数组的第一、四个元素都赋值为1。

3、二维数组的创建,子数组的寻访和赋值

创建一个M文件(文件名为myMatrix.m),定义一个二维数组A,第一行为11至15、30至26共10个元素,第二行为1~10共10个元素。

然后运行改M文件,生成数组AM,并按以下方式寻访该数组:

(1)寻访A的第一行;

(2)寻访A的第三列;

(3)同时寻访A的第三列和第五列;

(4)把A的各列按自左至右的次序,首尾相接生成一个“一维长列”;

(5)把A的第1行第1列、第2行第2列以及第1行第5列的元素重新赋值为10、20、30;

(6)把A的第二行赋值为11~20。

4、标准数组的生成和数组操作函数

生成以下数组或矩阵:

(1)长度为4的全1行数组和4×4的全1行数组;

(2)5阶单位阵;

(3)生成一矩阵A,第一行为1、2,第二行为3、4;并使用diag函数生成A的对角线元素所组成的对角阵。

(4)生成一维数组A,其值为1~10,并使用reshape函数把其重排成2×5的数组B;

(5)使用flipdim和fliplr函数对B进行翻转操作,从返回结果观察和总结各个函数的作用。

注:

flipdim的调用方式为:

flipdim(B,1)和flipdim(B,2);其他均为function(B).

总结:

flipud(B)和flipdim(B,1)是等价的,都为按行上下翻转;

fliplr(B)和flipdim(B,2)是等价的,都为按列左右翻转。

5、数组运算和矩阵运算

生成以下矩阵,

,并进行以下计算:

(1)B的第二列乘以A的第一列;

(2)使用MATLAB帮助系统查阅max函数的使用方法,并使用它求解B中的第二列与A中的第一列逐行元素相乘所得矢量中的最大值。

提示:

ln函数在matlab中为log

6、多项式的表达方式及其操作

(1)求根为5,2+i,2-i,2,3的对应线性方程表达式。

(2)求以下有理分式部分分式展开式,写出求解代码,并根据返回结果写出展开式的数学表达式

(3)使用roots函数求方程3x7+2x-1=0的根。

一、心得体会

Matlab有许多地方与c语言很相似,同样是操作命令。

但同时我们也需要细心找出其中的不同点,区分两种语言,归纳总结。

比如:

百分号%在c语言中的意义为:

(1)、取模运算符;

(2)、转义符。

但在matlab语言中则是注释说明的符号。

而在c语言中,注释说明所用符号为/**/又比如,分号“;”在matlab中有抑制计算结果显示的作用,而在c语言中并无此作用。

在做matlab的时候,要极其注意细节,即使只是一个标点符号的错漏,也会造成计算结果的错误。

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1