matlab实验指导书.docx

上传人:b****6 文档编号:6004750 上传时间:2023-01-02 格式:DOCX 页数:78 大小:2.78MB
下载 相关 举报
matlab实验指导书.docx_第1页
第1页 / 共78页
matlab实验指导书.docx_第2页
第2页 / 共78页
matlab实验指导书.docx_第3页
第3页 / 共78页
matlab实验指导书.docx_第4页
第4页 / 共78页
matlab实验指导书.docx_第5页
第5页 / 共78页
点击查看更多>>
下载资源
资源描述

matlab实验指导书.docx

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

matlab实验指导书.docx

matlab实验指导书

 

《MATLAB计算与仿真》

实验指导书

 

华南理工大学广州汽车学院电子信息工程系

二0一一年三月

学生实验守则

1学生必须在规定时间内参加实验,不得迟到、早退。

2学生进入实验室后,不准随地吐痰、抽烟和乱抛杂物,保持室内清洁和安静。

3实验前应认真阅读实验指导书,复习有关理论并接受教师提问检查,一切准备工作就绪后,须经指导教师同意后方可动用仪器设备进行实验。

4实验中,认真执行操作规程,注意人身和设备安全。

学生要以科学的态度进行实验,细心观察实验现象、认真记录各种实验数据,不得马虎从事,不得抄袭他人实验数据。

5如仪器发生故障,应立即报告教师进行处理,不得自行拆修。

不得动用和触摸与本次实验无关的仪器与设备。

6凡损坏仪器设备、器皿、工具者,应主动说明原因,书写损坏情况报告,根据具体情节进行处理。

7实验完毕后,将计量器具和被测工件整理好,认真填写实验报告(包

括数据记录、分析与处理,以及绘制必要的图形)。

 

前言

MATLAB程序设计语言是一种高性能的、用于科学和技术计算的计算机语言。

它是一种集数学计算、分析、可视化、算法开发与发布等于一体的软件平台。

自1984年MathWorks公司推出以来,MATLAB以惊人的速度应用于自动化、汽车、电子、仪器仪表和通讯等领域与行业。

MATLAB有助于我们快速高效地解决问题。

MATLAB相关实验课程的学习能加强学生对MATLAB程序设计语言理解及动手能力的训练,以便深入掌握和领会MATLAB应用技术。

为后续的《电力电子技术》、《自动控制原理》、《电力系统分析》等专业课程提供数值计算和可视化编程工具。

 

目录

实验一MATLAB概述实训1

实验二MATLAB基本运算实训10

实验三MATLAB图形绘制实训17

实验四MATLAB符号计算实训24

实验五程序设计和M文件实训29

实验六GUI图形用户接口设计实训36

实验七Simulink仿真环境实训45

实验八线性控制系统设计分析实训53

 

实验一MATLAB概述实训

一、实验目的

1.了解MATLAB语言的基本功能和特点;

2.熟悉MATALB的基本界面。

二、实验仪器、设备

安装MATLAB6.0或以上版本的计算机。

三、实验原理

1.MATLAB的界面

1)MATLAB的主界面

2)MATLAB的的工具栏

3)MATLAB的窗口-命令窗口

打开MATLAB时,命令窗口自动显示于MATLAB界面中。

 

图中的“>>”是运算提示符,表示MATLAB处于准备状态,用户可以输入命令,按下回车

键执行,并在命令窗口中显示运行结果。

输入程序语言:

按下确定键后,会生成相应图像:

 

4)MATLAB的窗口-命令历史窗口

默认情况下命令历史窗口位于左下角,显示用户曾经输入过的命令,并显示输入的时间,

方便用户查询。

对于命令历史窗口中的命令,用户可以点击右键进行相应的操作。

用户可以双击再次执行命令窗口中的命令。

5)MATLAB的窗口-工作区窗口

工作区窗口与当前路径窗口共享一块空间,可以通过标签显示或隐藏。

工作区窗口中显示当前工作区中的所有变量及其大小和类型等。

通过工作区可以对这些变量进行管理。

其中包含了工作区工具栏和显示窗口。

通过工具栏可以新建或删除变量、导入导出数据、绘制变量的图形等。

另外右键单击变量名可以对该变量进行操作。

6)MATLAB的窗口-当前路径窗口

当前路径窗口显示当前路径下的所有文件和文件夹及其相关信息,并且可以通过当前路

径工具栏或右键菜单对这些文件进行操作。

2.Matlab的路径搜索

1)路径设置

除MATLAB默认的搜索路径外,用户可以设置搜索路径。

设置方法为:

选择MATLAB

窗口中的File|SetPath命令,进入路径搜索对话框。

路径设置函数

path命令

在命令窗口中输入path命令可以查看MATLAB中的搜索路径:

>>path

MATLABPATH

C:

\MATLAB\R2006a\toolbox\matlab\general

C:

\MATLAB\R2006a\toolbox\matlab\ops

C:

\MATLAB\R2006a\toolbox\matlab\lang

C:

\MATLAB\R2006a\toolbox\matlab\elmat

……

path('newpath')命令改变搜索路径

2)MATLAB的搜索顺序

当在命令窗口中或者一个M文件中输入一个元素名称时,MATLAB按照下面的顺序

搜索该元素的意义,以元素foo为例:

1)查找工作区中是否存在名为foo的变量;

2)在当前路径中查找是否存在名foo.m的文件;

3)按照顺序查找搜索路径中是否存在该文件。

如果存在多个名为foo.m的文件,则调用首先查到的文件。

因此,在为变量和函数命名时,需考虑MATLAB的路径搜索顺序,合理为变量和函数命名,保证程序的正确运行

3.基本规则

1)一般MATLAB命令格式为

[输出参数1,输出参数2,……]=(命令名)(输入参数1,输入参数2,……)

输出参数用方括号,输入参数用圆括号如果输出参数只有一个可不使用括号。

2)%后面的任意内容都将被忽略,而不作为命令执行,一般用于为代码加注释。

3)可用↑、↓键来重现已输入的数据或命令。

用←、→键来移动光标进行修改。

4)所有MATLAB命令都用小写字母。

大写字母和小写字母分别表示不同的变量。

5)常用预定义变量,如pi、Inf、NaN、ans

6)矩阵的输入要一行一行的进行,每行各元素用空格或“,”分开,每行用“;”分开。

7)需要显示命令的计算结果时,则语句后面不加“;”号,否则要加“;”号。

8)当输入语句过长需要换行时,应加上“…”后再回车,则可续行输入。

4.文件管理常用命令

1)帮助(HELP)命令

MATLAB有很多命令,因此很不容易记忆。

使用HELP命令可以得到有关命令的屏幕帮助信息。

如在MATLAB环境下直接运行HELP命令就会在屏幕上给出MATLAB的基本命令以及相关的工具箱软件命令(请自行验证)。

而下面的格式可以得到指定命令的帮助信息,和详细说明。

help命令名

2)save命令

该命令存储定义的变量或演算结果,也可以用来存储指定的变量。

命令格式为:

save文件名[变量名表][-append][-ascii]

3)what命令

该命令可以在当目录下显示MATLAB文件和MAT数据文件

4)dir命令

显示当前目录下的所有文件.

5)clear命令

如果输入calearabc,则表示清除工作空间中指定变量a,b,c;如果仅仅输入clear命令,则清除整个工作空间。

四、实验注意事项

1.实验开始前,应先检查本组电脑设备是否工作正常,matlab软件工作是否正常;

2.实验时每位同学应独立完成实验任务,避免抄袭;

3.实验后及时将实验数据进行记录,避免因电脑故障或其它原因造成实验数据的丢失;

4.实验结束后,将实验记录结果交指导老师查看并认为无误后,方可关掉电脑离开;

5.自觉遵守学校和实验室管理的其它有关规定。

五、实验预习要求

1.实验前,学生须仔细阅读本实验指导书的相关内容,明确实验目的、要求;

2.复习与实验内容有关的理论知识。

六、实验内容及步骤

1.熟悉MATLAB主界面,工具栏及各窗口;

2.完成MATLAB的路径搜索;

3.完成以下各题,将步骤命令写入实验报告,并在机器上运行结果验证。

1)输入A=[715;256;315],B=[111;222;333],在命令窗口中执行下列表达式,掌握其含义:

A(2,3)A(:

2)A(3,:

)A(:

1:

2:

3)A(:

3).*B(:

2)A(:

3)*B(2,:

)A*BA.*BA^2A.^2B/AB./A

2)输入C=1:

2:

20,则C(i)表示什么?

其中i=1,2,3,…,10;

七、实验报告要求

1.实验目的

2.实验内容

3.实验程序(命令)清单

4.运行结果,保存截屏

5.实验收获与体会

八、思考题

 

实验二MATLAB基本运算实训

一、实验目的

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

2.掌握数组的各种运算,理解数组运算和矩阵运算的区别;

3.掌握标准数组的生成方法和相关数组操作函数的使用方法;

4.了解数组关系运算和逻辑运算的含义和应用;

5.掌握字符串在MATLAB中的表达方式和创建方法;了解字符串转换函数和操作函数及其使用方法;

6.掌握使用MATLAB进行多项式曲线拟合和插值、各种不同的运算。

二、实验仪器、设备

安装MATLAB6.0或以上版本的计算机。

三、实验原理

1.向量、矩阵及其运算

1)向量的点乘、叉乘和混合积

①向量的点乘

向量的点乘又称为内积,是两个向量的模和两个向量之间的夹角余弦三者的乘积。

MATLAB中,实现点乘的函数是dot。

dot函数的用法为dot(x1,x2),其中x1和x2的维

数必须相同。

②向量的叉乘

向量乘法除点乘之外还有叉乘。

两个向量叉积的几何意义是指以两个向量模的乘积为

模,方向和两个向量构成右手坐标系的向量。

向量的叉乘不可交换。

在MATLAB中函数cross用于实现向量的叉乘。

③向量的混合积

向量的混合积的几何意义是:

它的绝对值表示以三个向量为楞的平行六面体的体积,符

号由右手法则确定。

上面介绍了向量的点乘和叉乘,向量的混合积由点乘和叉乘逐步实现。

2)矩阵的基本运算

①矩阵与常数之间的四则运算

矩阵与常数的运算与数组运算相同

②矩阵和矩阵之间的四则运算

矩阵和矩阵之间的加减运算与数组运算相同

设A是一个m×n矩阵,B是一个p×q矩阵,当n=p时,两个矩阵可以相乘,乘

积为m×q矩阵。

矩阵乘法不可逆。

在MATLAB中,矩阵乘法由“*”实现。

矩阵除法在实际中主要用于求解线性方程组

③矩阵转置

符号“’”实现矩阵的转置操作。

对于实数矩阵,“’”表示矩阵转置,对于复数矩阵,

“’”实现共轭转置。

对于复数矩阵,如果想要实现非共轭转置,可以使用符号“.’”。

3)稀疏矩阵

一个矩阵中如果包含很多元素值为0,则此矩阵可以只存储少量的非0元素,这个矩阵称为稀疏矩阵(SparseMatrix)。

创建稀疏矩阵,sparse函数的语法格式如下:

sparse(i,j,s,m,n)%直接创建稀疏矩阵;

sparse(p)%由全元素矩阵p转换为稀疏矩阵。

2.数组的创建方法

1)一维数组的创建

要想在MATLAB中创建一个一维数组,用户只需先输入一个左方括号,然后输入每个数值并用逗号(或者空格)隔开,最后用一个右方括号结束。

2)二维数组的创建

创建二维数组与创建一维数组的方式类似。

在创建二维数组时,用逗号或者空格区分同一行的不同元素,用分号或者软回车(Shift+Enter)区分不同行。

3)复数数组的创建

在MATLAB中,空格的功能为分隔数组元素,在其他情况下,MATLAB通常不解析空格。

因此,如果数组中包含复数元素,这些元素中不能间杂空格,如果存在空格则需要用括号扩起来。

4)用其他方式生成数组

等差数组的生成

在MATLAB中,可以利用冒号生成等差数组。

格式为:

数组名=[开始数字:

公差:

结束

数字],公差默认为1。

用数组生成函数生成数组

eye:

生成单位矩阵

linspace:

生成线性分布的向量

rand:

生成随机数组,数组元素值均匀分布

3.数组的寻址与排序

1)数组的寻址

数组中总是包含多个元素,因此在对数组的单个元素或者多个元素进行访问时,需要对数组进行寻址运算。

在MATLAB中,数组寻址是通过对数组下标的访问来实现的。

如果需要访问数组种的多个数据,可以通过下标数组进行

当下标数组为利用冒号表示的等差数组时,可以省略下标数组的中括号

2)数组的排序

在很多时候我们需要对一个给定的数据向量进行排序。

为完成这一操作,MATLAB提

供了sort函数,该函数将任意给定的序列进行排序。

sort函数的调用格式有:

B=sort(A)

B=sort(A,dim)

B=sort(...,mode)

[B,IX]=sort(...)

其中的B为保存结果的数组;A为待排序的数组,当A为多维数组时,用dim指定需要排序的维数(默认为1);mode为排序的方式,可以取值“ascend”和“descend”,分别表示升序和降序,默认为升序;IX用于存储排序后的下标数组。

4.数组的运算

数组的数值运算有加减法、乘除法及乘方:

1)数组的加减法

数组加减法为数组元素的加减法,与矩阵加减法相同。

利用运算符“+”和“-”实现该运算。

需要注意的是相加或相减的两个数组必须有相同的维数,或者是数组与数值相加减。

2)数组的乘除法

数组乘除为元素的乘除,通过运算符“.*”和“./”来实现。

运算时需要两个数组有相同的

维数,或者数组与数值相乘除。

注意:

在进行除法操作时,作为分母的数组中不能包含0元素。

3)数组的乘方

数组乘方用符号“.^”实现。

数组乘方运算以三种方式进行。

底为数组,指数为标量的形式。

这种形式的结果是将数组的每个元素进行指数相同的乘方。

返回的结果为与底维数相同的数组,结果数组的每个元素为底中相应元素的乘方。

底为标量,指数为数组的形式。

该形式返回的结果为数组,维数与指数数组相同。

结果数组的每个元素为底以指数数组相应元素为指数做乘方的结果。

底和指数都是数组的形式。

此时两个数组需要有相同的维数。

返回结果为一个数组,维数与前面两个数组相同,每个元素为底数数组和指数数组做乘方的结果

5.创建字符串

字符串由多个字符组成,是1×n的字符数组;每一个字符都是字符数组的一个元素,

以ASCII码的形式存放并区分大小,而显示的形式则是可读的字符。

1)创建字符串

用单引号('')括起字符来直接赋值创建字符串。

MATLAB在存储字符串时,每一个字符以ASCII码的形式存放,占用两个字节。

2)字符串合并

strcat函数用于将字符串水平连接合并成一个新字符串,合并的同时会将字符串尾的空格删除。

语法格式如下:

strcat(s1,s2,…)%将s1,s2…合并成一个长字符串

char(s1,s2,…)%将s1,s2…合并成一个字符数组

strvcat(s1,s2,…)%将s1,s2…合并成一个字符数组

3)字符串与数值的转换

abs将字符串转换为ASCII码数值

str2num将字符串转换为数值

str2double将元胞字符串数组转换为数值

4)字符串的其他操作

MATLAB7.3还可以对字符串进行比较、查找、运行等操作。

6.元胞数组

元胞数组是常规数值数组的扩展,其基本元素是元胞,每一个元胞可以看成是一个单元(Cell),用来存放各种不同类型不同尺寸的数据,如矩阵、多维数组、字符串、元胞数组和结构体。

元胞数组可以是一维、二维或多维,使用花括号({})表示,每一个元胞以下标区分,下标的编码方式也与矩阵相同,分为单下标方式和全下标方式。

1)创建元胞数组

cell函数创建元胞数组的语法格式:

A=cell(m,n)%创建m×n元胞数组

2)元胞数组的操作

①用{}取元胞数组的元素内容

②用()取元胞数组的元素

③用deal函数取多个元胞元素的内容

7.结构体

结构体的基本组成是结构,每一个结构都包含多个字段(Fields),结构体只有划分了字段以后才能使用。

1)创建结构体

①直接创建

直接使用赋值语句创建结构体,用“结构体名.字段名”的格式赋值。

>>ps

(1).name='曲线1';

②利用struct函数创建

struct('field1',值1,'filed2',值2,…)%创建结构体将值赋给各字段

2)获取结构体内部数据

①使用“.”符号获取

②用getfield函数获取

getfield(A,{A_index},'fieldname',{field_index})

③使用fieldnames函数获取结构体的所有字段

fieldnames(array)%获取结构体的所有字段

④使用“[]”合并相同字段的数据

3)结构体的操作函数

①删除结构体的字段

rmfield(A,'fieldname')%删除字段

②修改结构体的数据

setfield(A,{A_index},'fieldname',{field_index},值)

③结构体转换为元胞数组

>>ps=setfield(ps,{1},'color','green');

8.关系及逻辑运算

关系运算允许常量(或矩阵中的元素与元素)之间的比较.如果比较结果为真,则答案为1,否则为0.常用的关系运算符如下:

<小于,>大于,==等于

<=小于等于,>=大于等于,~=不等于

对于复数”==”和”~=”既比较实部也比较虚部,而其它运算仅比较实部。

MATLAB有三个逻辑运算符.

&逻辑与|逻辑或~逻辑非

在矩阵运算中,以上命令是将两个矩阵中的对应元素进行运算,得到的结果是具有同样元素的矩阵。

9.多项式的运算

1)多项式求根

使用roots函数来计算多项式的根,多项式的根以列向量的形式表示;反过来,也可以根据多项式的根使用poly函数获得多项式。

2)多项式求值

函数polyval和polyvalm可以用来计算多项式在给定变量时的值。

3)多项式的乘法和除法

多项式的乘法和除法运算分别使用函数conv和deconv来实现。

p=conv(pl,p2)%计算多项式p1和p2的乘积

[q,r]=deconv(pl,p2)%计算多项式p1与p2的商

4)多项式的微积分

使用polyder函数来计算多项式的微分:

polyder(p)%计算p的导数

polyder(a,b)%计算a和b乘积的导数

[q,d]=polyder(b,a)%计算a和b商的导数

MATLAB没有专门的多项式积分函数,但可以通过以下的公式计算完成积分:

[p./(length(p):

-1:

1),k]%计算多项式p的积分

5)多项式的拟合与插值

拟合函数

p=polyfit(x,y,n)%由x和y得出多项式p

说明:

x、y向量分别为数据点的横、纵坐标;n是拟合的多项式阶次;p为拟合的多项式,p是n+1个系数构成的行向量。

一维插值是指对一个自变量的插值,interp1函数用来进行一维插值:

yi=interp1(x,y,xi,'method')

四、实验预习要求

1.实验前,学生须仔细阅读本实验指导书的相关内容,明确实验目的、要求;

2.复习与实验内容有关的理论知识。

五、实验内容及步骤

1.分别创建一个一维,二维及复数数组;对数组进行寻址、排序和简单的运算

2.对向量和矩阵的作运算

3.创建一个元胞数组,对其进行基本的运算

4.创建一个字符串,对其进行基本的运算

5.创建结构体,获取结构体内部数据,对结构体进行基本的函数操作

6.任选一多项式,对进行多项式求根、求值、微积分、拟合和插值的操作

六、实验报告要求

1.实验目的

2.实验内容

3.实验程序(命令)清单

4.运行结果,保存截屏

5.实验收获与体会

七、思考题

实验三MATLAB图形绘制实训

一、实验目的

1.了解MATLAB的图形窗口

2.掌握MATLAB基本二维图形、三维图形的绘制及图形的基本操作

3.掌握MATLAB特殊图形的绘制,如直方图、饼状图

二、实验仪器、设备

安装MATLAB6.0或以上版本的计算机。

三、实验原理

1.MATLAB的图形窗口

1)图形窗口的创建与控制

figure,创建图形窗口;

figure('PropertyName',PropertyValue,...),按照指定的属性创建图形窗口;

figure(h),如果句柄h对应的窗口已经存在,在该命令使得该图形窗口为当前窗口;

如果不存在,则创建以h为句柄的窗口;

h=figure(...),返回图形窗口的句柄。

在命令窗口中输入命令“figure”,按下回车,生成的图形窗口如图所示。

创建图形窗口后,用户可以对其属性进行编辑。

编辑图形的属性可以通过两种方式进行:

通过属性编辑器

通过set函数

在图形窗口中,选择view菜单中的PorpertyEditor选项,激活属性编辑器,如图所示。

在该窗口中可以设置标题、颜色表等属性。

若要对更多属性进行设置,可以点击More

Properties…,如图所示。

2)图形窗口的菜单栏

①File菜单

File菜单与Windows系统的其他菜单类似,包括“新建”、“保存”、“打开”等命令。

New:

新建。

可以新建M文件(M-File),图形窗口(Figure)、变量(Variable)或图

形用户接口(GUI)。

新建对象时,系统自动打开相应的编辑器。

Open:

打开已有文件。

Close:

关闭当前窗口。

Save:

保存。

SaveAs:

另存为。

GenerateM-File:

生成M文件。

该命令可以将当前图形窗口中的图形自动转化为M文件。

ExportSetup:

导出设置。

可以设置颜色、字体、大小等,可以将图像以多种格式导出,

如emf、bmp、jpg、pdf等

PageSetup:

页面设置。

PrintSetup:

打印设置。

PrintPreview:

打印预览。

Print:

打印。

打开打印对话框。

②Edit菜单

CopyOptions…:

将图形复制到剪切板;

FigureProperties…,点击该选项,弹出窗口如图所示。

在该窗口中可以设置图形的属性,

包括图形窗口的标题、颜色映射表、图形彩色等,另外,点击“MoreProperties…”可以设置

更多属性,点击“ExportSetup…”可以设置图像导出属性。

AxesProperties…,点击该选项弹出窗口如图所示。

在该窗口中可以设置图形坐标系的属性,包括标题、坐标轴标记、范围等。

CurrentObjectProperties…,设置当前对象的属性,即图形中当前选中的对象,包括坐标轴、曲线、图形等。

ColorMap…,用于设置图形的颜色表

③Insert菜单

在图像中插入对象,如箭头、直线、椭圆、长方形、坐标轴等。

Insert中的选项及对应的功能如表所示:

选项

功能

选项

功能

XLabel

插入X轴

Arrow

插入箭头

YLabel

插入

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

当前位置:首页 > 自然科学

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

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