广州大学学生实验报告2matlab程序设计.docx

上传人:b****3 文档编号:1161110 上传时间:2022-10-18 格式:DOCX 页数:15 大小:39.24KB
下载 相关 举报
广州大学学生实验报告2matlab程序设计.docx_第1页
第1页 / 共15页
广州大学学生实验报告2matlab程序设计.docx_第2页
第2页 / 共15页
广州大学学生实验报告2matlab程序设计.docx_第3页
第3页 / 共15页
广州大学学生实验报告2matlab程序设计.docx_第4页
第4页 / 共15页
广州大学学生实验报告2matlab程序设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

广州大学学生实验报告2matlab程序设计.docx

《广州大学学生实验报告2matlab程序设计.docx》由会员分享,可在线阅读,更多相关《广州大学学生实验报告2matlab程序设计.docx(15页珍藏版)》请在冰豆网上搜索。

广州大学学生实验报告2matlab程序设计.docx

广州大学学生实验报告2matlab程序设计

广州大学学生实验报告

开课学院及实验室:

机械与电气工程学院  计算机楼301室         2014年10月30 日                  

学 院

机械与电气工程学院 

年级、专业、班

姓名

学号

 

实验课程名称

MATLAB程序设计

成绩

实验项目名称

实验一 ﻩ基础准备及入门

指 导  教师

 

一、实验目的

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

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

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

二、实验原理

1、数组的创建和寻访

数值数组(Numeric Array)和数组运算(Array Operations)始终是MATLAB的核心内容。

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

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

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

一维数组的创建方法有:

(1)逐个输入法;

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

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

(1)x(3); 

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

3) ;(4)x(3:

end);(5)x(3:

-1:

1);(6)x(find(x>0.5)) ;(7)x([12 3443 21])。

在这里假设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).

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的根。

 

四、实验过程、结果(程序和运行结果截屏)和分析

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。

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

X1=

1 2 3  45 67  8    9  10

>>X2=[1:

4,9:

-1:

5]

X2=

1 2  3  49 8  7  65

>>X3=logspace(1,2,51)

X3=

Columns 1through7

  10.0000 10.471310.964811.4815 12.022612.5893  13.1826

  Columns8 through14

13.803814.454415.1356 15.848916.5959  17.378018.1970

  Columns15through21

19.054619.952620.8930 21.877622.908723.988325.1189

Columns 22through28

26.302727.5423 28.8403 30.199531.6228  33.1131 34.6737

 Columns29through35

 36.3078 38.0189 39.810741.686943.6516 45.7088 47.8630

Columns36through42

  50.118752.4807  54.9541 57.5440  60.2560  63.0957 66.0693

Columns43 through49

 69.1831  72.4436 75.857879.4328 83.176487.0964 91.2011

 Columns 50through 51

95.4993100.0000

>>

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

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

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

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

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

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

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

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

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

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

>> X4=0:

0.1:

2

X4=

 Columns1through7

   0  0.1000   0.20000.3000 0.4000  0.5000  0.6000

 Columns8 through 14

 0.7000  0.8000 0.90001.00001.1000 1.20001.3000

Columns15through21

1.4000  1.5000 1.60001.7000 1.80001.9000  2.0000

>>X4(6)

ans=

 0.5000

>>X4([257])

ans =

 0.1000 0.40000.6000

>>X4(1:

3)

ans=

 00.1000   0.2000

>>X4(4:

end)

ans =

Columns1through 6

0.3000 0.40000.5000 0.60000.70000.8000

 Columns7through12

0.9000 1.00001.1000 1.2000   1.3000 1.4000

Columns13through18

1.5000 1.6000 1.7000 1.8000 1.90002.0000

>>X4(end:

-1:

end-2)

ans =

2.00001.9000  1.8000

>>X4(find(X4>0.5))

ans=

  Columns 1through 8

0.6000 0.7000 0.80000.9000 1.0000 1.1000 1.2000 1.3000

Columns 9through15

  1.4000 1.5000 1.60001.7000  1.8000 1.9000  2.0000

>>X4(3)=[0]

X4 =

 Columns 1through 6

  00.1000  0  0.30000.40

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

当前位置:首页 > 工程科技 > 能源化工

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

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