MATLAB实验指导书(2013)

MATLAB实验指导书(2013)
MATLAB实验指导书(2013)

MATLAB语言及应用实验指导书

机械与电气工程学院

黄高飞余群编写

目录

实验一基础准备及入门(2学时,验证性) (1)

实验二符号计算(2学时,验证性) (5)

实验三数值数组及其运算(4学时,验证性) (6)

实验四数据和函数的可视化(2学时,验证性) (9)

实验五MATLAB语言的程序设计(4学时,综合性) (11)

实验六SIMULINK交互式仿真集成环境(2学时,验证性) (14)

实验一基础准备及入门

一、实验目的

1、了解MATLAB操作桌面的基本结构和组成;

2、理解Command Window指令窗的作用,掌握指令窗的操作方式和指令的基本语法;

3、了解Command History历史指令窗的作用、历史指令的再运行方法;

4、理解Current Directory当前路径、搜索路径的作用,掌握当前路径、搜索路径的设置

方法;

5、理解Workspace Browser工作空间浏览器的作用,掌握内存变量的查阅、删除、保存和

载入的基本方法;

6、了解Launch Pad的作用;

7、掌握M脚本文件的编写、运行方法;

8、掌握利用帮助系统查询函数等基本信息的方法。

二、实验原理

1、MATLAB操作桌面的基本结构和组成

了解MATLAB的基本组件是正确使用MATLAB的基本前提。MATLAB由以下基本组件组成:(1)指令窗Command Window:可键入各种送给MATLAB运作的指令、函数、表达式;显示除图形外的所有运算结果

(2)历史指令窗Command History:记录已经运作过的指令、函数、表达式;

(3)当前目录浏览器:进行当前目录的设置;展示相应目录上的M、MDL等文件;(4)工作空间浏览器Workspace Browser:列出MATLAB工作空间中所有的变量名、大小、字节数;

(5)内存数组编辑器Array Editor:在工作空间浏览器中对变量进行操作时启动(6)开始按钮

(7)交互界面分类目录窗Launch Pad:以可展开的树状结构列着MATLAB提供的所有交互界面

(8)M文件编辑/调试器

(9)帮助导航/浏览器

2、MATLAB指令窗的基本操作

MATLAB指令窗给用户提供了最直接的交互界面,可用于输入和执行指令、显示指令运行结果、调试MATLAB程序等常用的MATLAB仿真计算功能。本实验掌握以下在指令窗执行的基本操作,达到熟悉使用指令窗的目的:

(1)最简单的计算器使用方法:在MATLAB指令窗中,可按计算器的方式进行一般的数学计算,MATLAB的运算符的含义大致与常见的运算规则一致;

(2)在指令窗中输入和生成矩阵:与一般的计算器不同,在MATLAB中可直接输入和生成矩阵。实际上,矩阵是MATLAB工作的基本元素。

(3)数值表述方法:在MATLAB中的大部分数值的表述方式与平常是相同的,需要注意的是在表示比较大的数时,MATLAB默认采用科学计数法显示;

(4)变量命名规则:对于MATLAB变量命名规则,需要注意以下几点:

a、变量名、函数名对字母大小写敏感

b、变量名的第一个字母必须是英文字母,后续可以是字母、数字、下划线

c、变量的有效时限:在变量定义赋值之后,会作为内存变量保存并显示在Workspace

Browser中。因此,凡是显示在Workspace Browser中的变量都是“有效”的,其后可以被调用,否则不能被调用。

d、对于像 等常用的数学常量,MATLAB定义了预定义变量与其对应,在使用时需多加留意。

e、复数和复数矩阵的表示方法。

(5)其他操作的操作要旨和操作技巧的运用。

3、计算结果的图形表示

计算结果可视化是MATLAB的主要组成部分,借助图形表现数据是十分常用的“数据表达手段”,尤其当数据量相当庞大时,因为图形可以表现数据内在联系和宏观特征。关于MATLAB绘图的基本方法在后续章节中详细讲述,本实验主要通过示例了解MATLAB绘图的基本功能。

4、Current Directory、路径设置器和文件管理

理解当前目录Current Directory和搜索路径的作用是正确使用MATLAB的关键环节。当前目录指的是当前MATLAB工作的目录,MATLAB运行指令需要打开或者保存的文件,都首先在目录中查找或保存。搜索路径则是MATLAB工作时,需查找相应的文件、函数或变量所在的相关文件夹所在的路径。

在理解当前目录Current Directory和搜索路径的作用的基础上,也要掌握当前目录Current Directory和搜索路径的设置方法,这是正确使用MATLAB的必要步骤。

为了理解MATLAB当前目录Current Directory和搜索路径的作用,可以大致了解一下当用户从指令窗送入一个名为cow的指令后,MA TLAB的“运作次序”:

(1)MATLAB在内存中检查,看cow是不是变量;如果不是,进行下一步;

(2)检查cow是不是内建函数;如果不是进行下一步;

(3)在当前目录下,检查是否有名为cow的M文件存在;如果不是,进行下一步;(4)在MA TLAB搜索路径的其他目录下,检查是否有名为cow的M文件存在。

5、Workspace Browser和Array Editor

工作空间浏览器Workspace Browser可以用于内存变量的查阅、保存和编辑,在使用MATLAB过程中,可以使用Workspace Browser跟踪相应内存变量,对调试程序有很大的帮助。MATLAB也提供了相应的数据文件存取功能,可以在Workspace Browser中导入已保存的变量数据或者保存Workspace Browser中现有的变量数据。

6、Editor/Debugger和脚本编写初步

通过指令窗直接输入指令一般用于解决比较简单的“一次性”问题,在以下情形是使用M 文件特别有用:

a、待解决问题所需的指令较多且所用指令结构较复杂

b、一组指令通过改变少量参数就可以被反复使用去解决不同的问题

M脚本文件中的指令形式和前后位置,与解决同一个问题时在指令窗中输入的那组指令没有任何区别,MA TLAB在运行这个脚本时,只是简单地从文件中读取那一条条指令,送到MA TLAB中去执行。与在指令窗中直接运行指令一样,脚本文件运行产生的变量都驻留在MA TLAB基本工作空间中。M文件的扩展名是“.m”。

7、MATLAB帮助系统

MATLAB提供了强大的帮助系统以供用户使用。在碰到MATLAB使用的各种相关问题时,查阅MATLAB帮助系统往往可以找到相应的解决办法和答案。对于初学者,尤其需要重视帮助系统的使用。

MATLAB带有各种可利用的帮助系统,包括:

(1)纯文本帮助

(2)“导航/浏览器交互界面”帮助

(3)PDF帮助

(4)演示帮助和PDF帮助

其中,纯文本帮助和“导航/浏览器交互界面”帮助是常用的帮助系统。

三、实验内容

1、指令窗的基本操作

完成以下实验内容,把相关结果以截屏方式保存:

(1)使用值:x=10, y=3,用MATLAB进行以下计算,并用计算器检验结果:

a. u=x+y

b. v=xy

c. w=x/y

d. s=5sin(2y)

(2)使用clear指令清除当前所有内存变量,使用clc清除指令窗的显示结果。

(3)指令窗显示方式的操作

a、在指令窗中输入if(或for、while)等关键词,观察其颜色;

b、在指令窗中输入s='hello',观察其颜色、

c、指令行中的标点符号:运行指令x=3+2,分别在最后加上和不加上分号,观察并

记录其结果的区别。

2、Current Directory、路径设置器和文件管理

(1)在E盘新建一个文件夹并把其设置为当前目录。截屏相关过程结果并保存。

(2)在E盘新建一个文件夹并把其加入搜索路径。截屏相关过程结果并保存。

(3)逐步按照以下步骤进行并记录各个步骤的结果:

1)在指令窗中输入clear指令;

2)在指令窗中输入cow,并运行;

3)在指令窗中输入cow=21,并运行;

4)再次在指令窗中输入cow,并运行;

5)再次在指令窗中输入clear指令后,输入cow;

6)使用M文件编辑器新建一个M文件,在该文件中输入一条指令:x=2。

保存在当前目录下,命名为cow.m。

7)再次在指令窗中输入cow,并运行;

8)把cow.m暂时移动到另一个无关的文件夹,如“我的文档”。

9)再次在指令窗中输入cow,并运行;

10)把cow.m再次剪切,移动到(2)建立的搜索路径的文件夹中,并确认该文件夹已加入到搜索路径中。

11)再次在指令窗中输入cow,并运行。

以上各个步骤是否验证了MATLAB对cow的搜索次序?

3、Workspace Browser和Array Editor

(1)运行以下指令:

clear;

x=-8:0.5:8;

y=x';

X=ones(size(y))*x;

Y=y*ones(size(x));

R=sqrt(X.^2+Y.^2)+eps;

Z=sin(R)./R;

(2)保存全部变量为数据文件Mydata.mat;在对应文件夹中找到该文件,截屏后保存结果;

(3)使用clear清除变量X和Y;

(4)删除全部内存变量;

(5)把Mydata.mat的所有变量再次装入内存。

4、Editor/Debugger和脚本编写初步

把以下指令编写为M脚本文件,并运行:

t=0:pi/50:4*pi;

y0=exp(-t/3);

y=exp(-t/3).*sin(3*t);

plot(t,y,'-r',t,y0,':b',t,-y0,':b')

grid

5、帮助系统的使用

(1)使用help指令查找zeros函数的作用。

(2)在指令窗口中输入sin,用鼠标选中此指令,并使用鼠标右键弹出菜单,选中help on selection。你发现了什么?此方法也是查询函数注释的有效方法,请牢记。

四、实验报告要求

1、简述实验目的、实验原理及其要点;

2、把实验过程中的结果以截屏方式保存并打印出来,按实验步骤附在实验报告中,并对所

得结果进行分析和解释。

3、总结实验中的主要结论,记录心得体会。

实验二 符号计算

一、 实验目的

1、 掌握符号对象和符号表达式的创建方法;

2、掌握符号表达式和符号函数的操作方法;

3、掌握符号微积分的基本方法;

4、掌握符号积分变换的基本方法。

二、实验内容

1、符号对象及其定义方法

(1),计算两类数字之间的差(提示:参考教材[例

2.1-1])

(2)使用syms 函数定义符号变量x 、y 、z ,并由此定义符号表达式

1

231sin 52f y z π??=++ ???

2、 利用MATLAB 帮助系统,查阅函数numden 的用法。写出使用numden 函数求解表达式

x y x y x y

++-的分子和分母的MA TLAB 指令,并根据求解结果写出其表达式。 3、 使用limit 函数求极限0sin lim

x x x →。 4、 使用diff 函数对cos 1x x

+求微分 5、 对函数(){0k a f k = 00<≥k k , 当a 为正实数时,求∑∞=-0

)(k k z k f 。(提示:参考教材[例2.3-8],)

6、 使用int 函数求以下不定积分和定积分:

(1)1dx x ?; (2)101ln t t dt ?

7、求2()()t

f t e u t -=的傅里叶变换,并用反变换验算。

7、 实验报告要求

1、简述实验目的、实验原理及其要点;

2、把实验过程中的结果以截屏方式保存并打印出来,按实验步骤附在实验报告中,并对所

得结果进行分析和解释。

3、总结实验中的主要结论,记录心得体会。

实验三 数值数组及其运算

一、实验目的

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 2 5]) ;(3)x(1:3) ;(4)x(3:end) ;(5)x(3:-1:1) ;(6)x(find(x>0.5)) ;(7)x([1 2 3 4 4 3 2 1]) 。在这里假设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 的运算:ij m n f (X)[f (x )]?=,其中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、数组运算和矩阵运算

生成以下矩阵,14224100A B ln A 797342π??????==??????

,并进行以下计算: (1) B 的第二列乘以A 的第一列;

(2) 使用MATLAB 帮助系统查阅max 函数的使用方法,并使用它求解B 中

的第二列与A 中的第一列逐行元素相乘所得矢量中的最大值。

提示:ln 函数在matlab 中为log

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

(1)

求根为5,2+i ,2-i ,2,3的对应线性方程表达式。 (2) 求以下有理分式部分分式展开式,写出求解代码,并根据返回结果

写出展开式的数学表达式

35

231x x x 12x x x

+++-++ (3)

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

五、 实验报告要求

1、简述实验目的、实验原理及其要点;

2、把实验过程中的结果以截屏方式保存,并对所得结果进行分析和解释。

3、总结实验中的主要结论。

实验四数据和函数的可视化

一、实验目的

1、掌握MATLAB绘图的基本步骤和相关指令调用的先后顺序。

2、掌握MATLAB绘图指令的调用方法。

二、实验内容

1、数学函数从形式上可以分为离散函数和连续函数。MATLAB对这两种函数数据

的可视化都提供了相应的指令。仔细阅读教材【例 5.1-1】的实现代码,运行并保存结果;并改用stem函数,画出【例5.1-1】的序列图。

2、仔细阅读教材【例 5.1-2】的实现代码,运行并保存结果;并分别使用描点

和连折线方式,画出连续函数y=xcosx的近似图形(采样点数自定,要求画出的图尽量接近原连续函数的图)。

3、仔细阅读【例5.2-2】的实现代码,理解plot指令画多条曲线的运用方法,

运行并保存结果;并使用plot函数和legend函数,在同一个图形窗口上画出y=sint和y=sin(2t)在[0,2pi]区间上的图形,并标出图例。

4、仔细阅读【例 5.2-4】的实现代码,理解图形标识选项的运用方法,运行并

保存结果;并修改代码,把“sin(t)”字体改为正体,大小改为20,“极大值”改为宋体。

5、阅读【例5.2-6】,理解使用hold on指令画多幅图的方法,运行并保存结果。

6、阅读【例5.2-8】,理解使用subplot函数画多个子图的方法,运行并保存结

果。

7、综合实验: 阅读以下关于通过绘制二阶系统阶跃响应综合演示图形标识的示

例,理解示例中所有图形标识指令的作用,掌握各个图形标识指令的运用方法,并在原指令上改动以实现以下功能:

(1)把横坐标范围改为0至5pi,纵坐标范围改为0至2;

(2)把图中的横轴的刻度改为从0开始到4pi,中间各点间隔为pi/2;纵轴刻度改为从0开始到1.5,中间各点间隔为0.3;

(3)把图中的α改为σ。

【附】二阶系统阶跃响应综合演示图形标识的示例代码

clf;t=6*pi*(0:100)/100;y=1-exp(-0.3*t).*cos(0.7*t);

tt=t(find(abs(y-1)>0.05));ts=max(tt);

plot(t,y,'r-','LineWidth',3);

axis([-inf,6*pi,0.6,inf]);

set(gca,'Xtick',[2*pi,4*pi,6*pi],'Ytick',[0.95,1,1.05,max(y)]);

grid on;

title('\it y = 1 - e^{ -\alphat}cos{\omegat}');

text(13.5,1.2,'\fontsize{12}{\alpha}=0.3');

text(13.5,1.1,'\fontsize{12}{\omega}=0.7');

hold on;

plot(ts,0.95,'bo','MarkerSize',10);

hold off;

xlabel('\fontsize{14} \bft \rightarrow');

ylabel('\fontsize{14} \bfy \rightarrow') ;

三、实验报告要求

1、所有实验内容涉及的指令都以M文件方式创建并运行,保存实验结果图形。

2、非教材示例在实验报告中写出相关指令。

实验五MATLAB语言的程序

设计

一、实验目的

1、掌握M脚本文件和函数文件的创建方法,理解两者在形式上和运行上的区别;

2、理解基本空间和函数空间的含义。

3、掌握以控制流进行MATLAB程序设计的方法以及向量化程序设计方法,了解两者之间

的异同;

二、实验原理

1、M脚本文件和函数文件

用MA TLAB语言编写的程序,称为M文件。M文件是一个文本文件,它可以用任何编辑程序来建立和编辑,而一般常用且最为方便的是使用MATLAB提供的文本编辑器。

M文件可以根据调用方式的不同分为两类:脚本文件(Script File)和函数文件(Function File)。

M 文件是MALTAB从前到后顺序执行文件所写的指令,只是一串按用户意图排列而成的MA TLAB指令集合。脚本文件执行后,所产生的所有变量都驻留在MALTAB基本工作空间;只有用户不用clear指令加以清除,且不退出MATLAB,这些变量一直保存在基本工作空间中。基本工作空间随着MATLAB的启动而产生;只有关闭MATLAB时,该基本空间才被删除。

类似于C语言中函数的定义,M函数文件是专门用于对函数进行定义的。对外界来看,只需关心函数的输入参量和送出来的计算结果,内部运作可以不需知道。M函数文件与脚本文件在形式上和运行上都不同。函数文件第一行总是以”function”引导的“函数声明行”形式书写

function [x,y,z]=fun(a,b,c)

函数声明行罗列出函数与外界的联系的全部输入输出宗量,输入输出宗量的数目没有限制(可以很多,也可以没有)。

每当函数文件运行,MA TLAB就会专门为它开辟一个临时工作空间,该控制称为函数工作空间。所有中间变量都存放在函数工作空间中,当执行完文件最后一条指令时,或遇到return,就结束该函数文件的运行,同时该函数空间及其所有的中间变量就立即被清除。函数空间随具体M函数文件的被调用而产生,随调用结束而删除。在MA TLAB整个运行期间,可以产生任意多个临时函数空间。假如在函数文件中,发生对某脚本文件的调用,那么该脚本文件运行产生的所有变量都存放于该函数空间中,而不是存放在基本空间。

3、MA TLAB控制流

与C语言一样,MATLAB提供了控制程序流的结构,包括:

(1)for循环

(2)while循环

(3)if-else-end分支结构

(4)switch-case结构

(5)try-catch结构

各种结构的使用方法与C语言中基本相同,在此不再赘述。

三、 实验内容

(一)控制结构

1、 求下列分段函数的值:

22260356010,231x x x x y x x x x x x x ?+-<≠-?=-+≤≤≠≠??--?

,且且,其它

要求:用if 语句实现,分别输出x=-5, -3, 1, 2, 2.5, 3, 10, 20时的值

2、 输入一个数,判断该数是否能被5整除?

要求:用switch 语句实现。

3、 使用for 循环产生以下矩阵:

4812101418162024222630A ??????=??????

4、 已知222

111123y n =++++ ,当100n =时,求y 的值。 要求:使用for 循环实现

5、 从键盘输入若干个数,当输入0时结束输入,求这些数的和以及平均值。

要求:使用while 循环和if 控制语句实现。

提示:设输入的数存放在x 中,sum 表示和,n 表示读入的个数,则求若干个数的和,就是对x 进行累加,即sum=sum+x ,其中sum 的初值为0。如果输入的数x 等于0,则输出sum 、sum/n 。

(二)、函数文件和脚本文件

1、分别建立M 脚本文件和函数文件,将华氏温度f 转换为摄氏温度c,已知c=5*(f-32)/9。

其中f 从键盘输入(提示:使用input 函数)。

(1) 建立脚本文件,实现以上功能;

(2) 建立函数文件实现华氏温度转换为摄氏温度(提示:输入参数为f ,输出参数为c ),

并重新编写一脚本文件,调用所建立的函数文件,实现把从键盘输入的华氏温度转换为摄氏温度。

2、利用函数文件,实现直角坐标(x,y)与极坐标(),ρθ之间的转换。已知极坐标的矢径、相

角分别为:r=arctan y x

θ=。

提示:输入参数为x和y,输出参数为r和theta。

要求:脚本文件中使用input函数输入要转换的直角坐标,使用disp函数显示转换之后的结果。

3、定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在脚本文件中调用该函数文件。

提示:输入参数为复数的实部和虚部,输出参数为转换后的指数、对数、正弦和余弦值。要求:脚本文件中使用input函数输入复数的实部和虚部,使用disp函数显示转换之后的结果。

四、实验报告要求

1、简述实验目的、实验原理及其要点;

2、把所有实验内容涉及的指令都以M文件方式创建并运行,保存实验结果。

3、总结实验中的主要结论。

实验六SIMULINK交互式仿真

集成环境

一、实验目的

1、掌握SIMULINK组件模块操作的基本方法;

2、掌握常用连续系统模块的使用方法;

3、掌握连续系统建模的基本方法;

4、理解SIMULINK仿真的基本配置方法与内在运行机制。

二、实验原理

Simulink是MATLAB的重要组成部分,提供建立系统模型、选择仿真参数和数值算法、启动仿真程序对该系统进行仿真、设置不同的输出方式来观察仿真结果等功能。

1、Simulink的基本模块

Simulink的模块库提供了大量模块。单击模块库浏览器中Simulink前面的“+”号,将看到Simulink模块库中包含的子模块库,单击所需要的子模块库,在右边的窗口中将看到相应的基本模块,选择所需基本模块,可用鼠标将其拖到模型编辑窗口。同样,在模块库浏览器左侧的Simulink栏上单击鼠标右键,在弹出的快捷菜单中单击Open the …Simulink? Libray 命令,将打开Simulink基本模块库窗口。单击其中的子模块库图标,打开子模块库,找到仿真所需要的基本模块。

Simulink中几乎所有模块的参数都允许用户进行设置,只要双击要设置的模块或在模块上按鼠标右键并在弹出的快捷菜单中选择相应模块的参数设置命令就会弹出模块参数对话框。该对话框分为两部分,上面一部分是模块功能说明,下面一部分用来进行模块参数设置。同样,先选择要设置的模块,再在模型编辑窗口Edit菜单下选择相应模块的参数设置命令也可以打开模块参数对话框。

一个Simulink仿真模型的基本模块包括信源、信宿以及系统三个部分。其中,信源可以是常数、正弦波、阶梯波等信号源,信宿可以是示波器、图形记录仪等,系统则是被研究系统的SIMULINK方框图。系统、信源、信宿,可以从SIMULINK模块库中直接获得,也可以根据用户意愿用库中的模块构建而成。

2、连续系统的建模与仿真

连续系统指的是可以用微分方程来描述的系统。用于建模连续系统的模块:Simulink模块组中的Continous、Math以及Nonlinear模块库中。

利用Simulink进行系统仿真的步骤如下:

(1) 建立系统仿真模型,这包括添加模块、设置模块参数以及进行模块连接等操作。

(2) 设置仿真参数。

(3) 启动仿真并分析仿真结果。

三、实验内容

1、搭建观察使用示波器观察正弦波信号的基本仿真模型,其中正弦波频率为100rad/s,幅

度为-2V~2V。

2、利用SIMULINK求解

dx

e

I x

?-

=1

2

3、 利用SIMULINK 求解微分方程0)1(2222=+--x dt dx x dt

x d 在初始条件1)0(=x , 0)0(=dt

dx 情况下的解,并图示。(提示:使用积分模块中的Initial Condition 进行初始条件的设置)

4、 利用SIMULINK 仿真标准AM 调制解调过程,即实现001f(t)=(A +sin(t))sin(t)ωω,并使

用示波器观察原始信号0sin(t)ω、调制信号f(t)以及解调信号的波形。设05/rad s ω=,120/rad s ω=,0A 1=。参考仿真模型如下,自行利用MATLAB 帮助系统查阅关于参考模型中各个模块的有关说明,以及设置适当的低通滤波器参数。

四、 实验报告要求

1、简述实验目的、实验原理及其要点;

2、附上实验内容的SIMULINK 仿真图及运行结果(用插入图片方式),并对所得结果进行

分析和解释。另附上SIMULINK 程序。

3、总结实验中的主要结论。

Matlab实验指导书

实验一 Matlab使用方法和程序设计 一、实验目的 1、掌握Matlab软件使用的基本方法; 2、熟悉Matlab的数据表示、基本运算和程序控制语句; 3、熟悉Matlab绘图命令及基本绘图控制; 4、熟悉Matlab程序设计的基本方法。 二、实验内容 1、帮助命令 2、矩阵运算 (1)矩阵的乘法和乘方 已知A=[1 2;3 4]:B=[5 5;7 8]:求A^2*B ( 2 )矩阵除法 已知A=[1 2 3:4 5 6:7 8 9]:B=[1 0 0:0 2 0:0 0 3],求矩阵左除A\B,右除A/B。 ( 3 )矩阵的转置及共轭转置 已知A=[5+i,2-i,1;6*i,4,9-i],求该复数矩阵的转置A',共轭转置A.' ( 4 )使用冒号选出指定元素 已知:A=[1 2 3:4 5 6:7 8 9];求A中第3列前2个元素;A中第2、3行元素。 ( 5 )方括号[] 用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列 3、多项式 (1)求多项式P(x)=x3-2x-4的根 ( 2 )已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4].,构造多项式,并计算多项式值为20的解。 4、基本绘图命令 ( 1 ) 绘制余弦曲线 ] 2,0[ ), cos(π ∈ =t t y 。 ( 2 ) 在同一坐标系中绘制曲线 ] 2,0[ ), 5.0 sin( ), 25 .0 cos( yπ ∈ - = - =t t y t 5、基本绘图控制 绘制 ] 4,0[π 区间上的y=10sint曲线,并要求: (1)线形为点划线,颜色为红色,数据点标记为加号; (2)坐标轴控制:显示范围,刻度线,比例,网络线; (3)标注控制:坐标轴名称,标题,相应文本。 6、基本程序设计 (1)编写命令文件:计算1+2+....+n<2000时的最大n值; (2)编写函数文件:分别用n和which循环结构编写程序,求2的0到n次幂的和. n=input('输入正数n:') ji=1: for i=1:n; ji=ji+2^i: end ji input('输入正数n:') ji-1:i-1: While i<=n ji=ji+2^i; i=i+1; end ji (3)如果想对一个变量x赋值,当从键盘输入y或Y时,x自动赋为1;当从键盘输入n或N时,x自 动赋为0;输入其他字符时终止程序。 k=input('shuruX:'.'s'): if k=='y' k=='Y' x=1 ; else k=='n' k=='N' x=0; else ruturn end >> n=input('输入正数n:') 输入正数n:20 n =20

MATLAB实验指导书

实验一MATLAB 工作环境熟悉及简单命令的执行 一、 实验目的:熟悉MATLAB 的工作环境,学会使用MATLAB 进行一些简单的运算。 二、 实验内容:MATLAB 的启动和退出,熟悉MATLAB 的桌面(Desktop ),包括菜单 (Menu )、工具条(T oolbar )、命令窗口(Command Window)、历史命令窗口、工作 空间(Workspace)等;完成一些基本的矩阵操作;学习使用在线帮助系统。 三、实验步骤: 1、启动MATLAB ,熟悉MATLAB 的桌面。 2、在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。 (1)(365-52?2-70)÷3; (2)area=pi*2.5^2; (3)已知x=3,y=4,在MATLAB 中求z : ()23 2y x y x z -= ; (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。 m1=???? ? ???? ???11514412679810115133216 执行以下命令 >>m1( 2 , 3 ) >>m1( 11 ) >>m1( : , 3 ) >>m1( 2 : 3 , 1 : 3 ) >>m1( 1 ,4 ) + m1( 2 ,3 ) + m1( 3 ,2 ) + m1( 4 ,1) (5)执行命令>>help abs 查看函数abs 的用法及用途,计算abs( 3 + 4i ); (6)执行命令 >>x=0:0.1:6*pi; >>y=5*sin(x); >>plot(x,y) (7)运行MATLAB 的演示程序,>>demo ,以便对MATLAB 有一个总体了解。 四、思考题 1、以下变量名是否合法?为什么? (1)x2; (2)3col ; (3)_row ; (4)for ;

matlab实验2MATLAB基础知识

实验2 MATLAB基础知识 一、实验目的 1.熟悉MATLAB的数据类型 2.熟悉MATLAB的基本矩阵操作 3.熟悉MATLAB的运算符 4.熟悉MATLAB的字符串处理 二、实验内容 1.创建结构体DataTypes,属性包含MATLAB支持的所有数据类型,并通过赋值构 造结构体二维数组。 DataTypes.char=char([65]); DataTypes.string='hello'; DataTypes.int=100; DataTypes.single=1.560 DataTypes = char: 'A' string: 'hello' int: 100 single: 1.5600 >> DataTypes(2).char=char([66]); DataTypes(2).string='kugou'; DataTypes(2).int=200; DataTypes(2).single=3.14 DataTypes = 1x2 struct array with fields: char string int single 2.用满矩阵和稀疏矩阵存储方式分别构造下述矩阵。 A=

答: A = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 B = A = 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 A = 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 A = 0 1 0 0 1 1 0 0 0 0 1 0 0 0 0 1 A = 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 1

matlab基础实验

实验一 MATLAB基础知识 一、实验目的 1.熟练掌握Matlab的启动与退出; 2. 熟悉Matalb的命令窗口,常用命令和帮助系统; 3. 熟悉Matalb的数据类型; 4. 熟悉Matlab的基本矩阵操作,运算符和字符串处理 二、实验设备 1.方正电脑 2.MATLAB软件 三、实验内容 1. 已知矩阵 A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] 写出完成下列操作的命令: (1) 将矩阵A的第2-5行中第1,3,5列元素赋给矩阵B; (2) 删除矩阵A的第7号元素; (3) 将矩阵A的每个元素加上30; (4) 求矩阵A的大小和维数; (5) 将矩阵A的右下角3*2矩阵构成矩阵C; (6) 输出[-5,5]范围内的所有元素; 程序: A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] %(1) B=A(2:5,[1 3 5]) %(2) A2=A; A2(7)=[] %(3) A3=A+30 %(4) length(A) size(A) %(5) C=A(end-2:end,end-1:end) %(6) A6=A.*(A>=-5 & A<=5) 结果: A =

3 4 -1 1 -9 10 6 5 0 7 4 -16 1 -4 7 -1 6 -8 2 -4 5 -6 12 -8 -3 6 -7 8 -1 1 8 -4 9 1 3 0 B = 6 0 4 1 7 6 2 5 12 -3 -7 -1 A2 = Columns 1 through 7 3 6 1 2 -3 8 5 Columns 8 through 14 -4 -4 6 -4 -1 0 7 Columns 15 through 21 5 -7 9 1 7 -1 - 6 Columns 22 through 28 8 1 -9 4 6 12 -1 Columns 29 through 35 3 10 -16 -8 -8 1 0 A3 = 33 34 29 31 21 40 36 35 30 37 34 14

MATLAB)课后实验答案[1]

实验一 MATLAB 运算基础 1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 (1) 0 12 2sin 851z e =+ (2) 21ln(2 z x =,其中2 120.45 5i x +??=? ?-?? (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+= ++=--L (4) 2242011 122123t t z t t t t t ?≤

4. 完成下列操作: (1) 求[100,999]之间能被21整除的数的个数。 (2) 建立一个字符串向量,删除其中的大写字母。解:(1) 结果: (2). 建立一个字符串向量例如: ch='ABC123d4e56Fg9';则要求结果是:

实验二 MATLAB 矩阵分析与处理 1. 设有分块矩阵33322322E R A O S ?????? =? ??? ,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证2 2 E R RS A O S +?? =???? 。 解: M 文件如下; 5. 下面是一个线性方程组: 1 231 1 12340.951110.673450.521114 5 6x x x ?? ??????????????=??? ??????????????????? (1) 求方程的解。 (2) 将方程右边向量元素b 3改为0.53再求解,并比较b 3的变化和解的相对变化。 (3) 计算系数矩阵A 的条件数并分析结论。 解: M 文件如下: 123d4e56g9

MATLAB基础及应用实验指导书

MATLAB基础及应用实验指导书

MATLAB基础及应用课程实验指导书 实验一软件环境和基本操作熟悉 一、实验目的 ①熟悉MATLAB 主界面,并学会简单的菜单操作。 ②学会简单的矩阵输入与信号输入。 ③掌握部分绘图函数。 二、实验内容 熟悉MATLAB操作环境,通过简单操作熟悉MATLAB的基本使用方法。 三、实验要求与步骤 1、用户第一次使用MATLAB 时,建议首先在屏幕上键入demo 命令,它将启动MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。也可以键入help 进行进一步了解。 MATLAB 启动界面如图所示: MATLAB 语言最基本的赋值语句结构为:变量名列表= 表达式。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“= ”省略,则ans 变量将自动建立,例如键入:1900/81 ,得到输出结果:ans =23.4568 。 MATLAB 中变量命名的原则要求必须以英文字母开头,文件夹名字中可以

还包括、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的。这种规则包括将来为自己编写的脚本文件、函数文件命名以及为使用的变量命名也应遵循这个规则。 2、用户工作目录和当前目录的建立和设置 1)为管理方便,每个用户在使用MATLAB 前,尽量为自己建立一个专门的工作目录,即“用户目录”,用来存放自己创建应用文件。例如首先打开资源管理器,在E 驱动器下可以根据自己喜好建立一个新文件夹,但应注意:该文件夹必须以英文开头,文件夹名字中可以包括字母、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的,这与MATLAB 中为变量和文件名命名原则是一致的。尽管MATLAB\work 允许用户存放用户文件,但最好把它仅作为临时工作目录来使用。 2)为了用户运行方便,在开始工作前可把用户定义的目录设置为当前目录,方法是可直接在MATLAB 命令窗口桌面上方通过目录设置栏来实现。 3)把自己的工作目录加到MATLAB 搜索路径上,这样可以在任何情况下方便地调用自己的编写文件。MATLAB 工作时,基本搜索过程为:首先在工作空间,即MATLAB 内存中进行检查,看输入的指令是不是变量;如不是,则检查输入指令是不是内建函数(比如sin 函数等);如不是,则在当前目录上,检查是否有与输入指令相同的M 文件存在;如还没有,则在MATLAB 定义的搜索路径其他目录中,检查是否有该M 文件存在。设置方法是通过File 菜单下设置路径对话框进行。 3、熟悉简单的矩阵输入 1)从屏幕上输入矩阵A=[1 2 3 ;4 5 6;7 8 9] 回车 A=[1,2,3;4,5,6;7,8,9] 回车 观察输出结果。 2)试用回车代替分号,观察输出结果。 3)输入size(A) ,观察结果。 4)输入矩阵B=[9,8,7;6,5,4;3,2,1];回车 输入矩阵C=[4,5,6;7,8,9;1,2,3];回车,然后分别键入 A B C 回车观察结果。 5)选择File | new 菜单中的M-file ,输入B=[9,8,7;6,5,4;3,2,1] ;保存为

matlab实验4MATLAB基本编程

实验4 MATLAB 基本编程 一、实验目的 1. 熟悉MATLAB 的脚本编写 2. 熟悉MATLAB 的函数编写 3. 熟悉MATLAB 的变量使用 4. 熟悉MATLAB 的程序控制结构 二、实验内容 1. 分别选用if 或switch 结构实现下述函数表示。 -1 x ≤-a f(x)= x/a -a ≤<--≤<≤<--≤=d x d x c d x d c c x b b x a a x a b a x x f 0)(11)(10)(

昆明理工大学MATLAB实验指导书(第二次实验)

************************ MATLAB上机指导书 ************************ 昆明理工大学机电学院 彭用新 2015年3月

实验三符号计算 一、操作部分:在命令窗口执行命令完成以下运算,记录运算结果。 1.findsym:帮助我们获取系统定义的自变量 f= sym('sin(a*x+b*y)'); findsym(f) 2.numden(获取分子分母), sym2poly,(获取多项式时系数)poly2sym(根据多项式系 数获得符号表达式) [n,d]=numden(sym('x*x+y')+sym('y^2')) p=sym('2*x^3+3*x^2+4'); sym2poly(p) x=[2,3,0,4]; poly2sym(x) 3. collect :合并同类项;expand:展开多项式;horner: 分解成嵌套形式;factor:因式 分解;simplify: 对表达式化简 syms x y; collect(x^2*y+y*x-x^2-2*x) collect((x+y)*(x^2+y^2+1), y) syms x y; expand((x-2)*(x-4)) syms x;horner(x^3-6*x^2+11*x-6) syms x;factor(x^3-6*x^2+11*x-6) syms x;simplify((x^2+5*x+6)/(x+2)) 4. finverse :求得符号函数的反函数。 syms x y; finverse(1/tan(x)) f= x^2+y; finverse(f,y) finverse(f) https://www.360docs.net/doc/8d14021890.html,pose 求符号函数的复合函数 syms x y; f = 1/(1 + x^2); g = sin(y); compose(f,g) 6. subs :表达式替换。 syms a b;subs(a+b,a,4)

实验一 Matlab基本操作(2016)

实验一 MATLAB 基本操作 一、实验目的 1. 学习和掌握MA TLAB 的基本操作方法 2. 掌握命令窗口的使用 3. 熟悉MATLAB 的数据表示、基本运算 二、实验内容和要求 1. 实验内容 1) 练习MATLAB7.0或以上版本 2) 练习矩阵运算与数组运算 2. 实验要求 1) 每位学生独立完成,交实验报告 2) 禁止玩游戏! 三、实验主要软件平台 装有MATLAB7.0或以上的PC 机一台 四、实验方法、步骤及结果测试 1. 实验方法:上机练习。 2. 实验步骤: 1) 开启PC ,进入MA TLAB 。 2) 使用帮助命令,查找sqrt 函数的使用方法 答: help sqrt 3) 矩阵、数组运算 a) 已知 ??????????=987654321A ,???? ??????=963852741B ,求)2()(A B B A -?+ 答: A=[1, 2, 3; 4, 5, 6; 7, 8, 9]; B=[1, 4, 7; 2, 5, 8; 3, 6, 9]; (A+B)*(2*B-A) b) 已知?? ????-=33.1x ,??????=π24y ,求T xy ,y x T c) 已知??????????=987654321A ,???? ??????=300020001B ,求A/B, A\B. d) 已知???? ??????=987654321A ,求:(1) A 中第三列前两个元素;(2) A 中所有第二行元素;(3) A 中四个角上的元素;(4) 交换A 的第1、3列。(5) 交换A 的第1、2行。(6) 删除A 的第3列。

e) 已知[]321=x ,[]654=y ,求:y x *.,y x /.,y x \.,y x .^, 2.^x ,x .^2。 f) 给出x=1,2,…,7时,x x sin 的值。 3)常用的数学函数 a )随机产生一个3x3的矩阵A ,求:(1) A 每一行的最大、最小值,以及最大、最小值所在的列;(2) A 每一列的最大、最小值,以及最大、最小值所在的行;(3) 整个矩阵的最大、最小值;(4) 每行元素之和;(5) 每列元素之和;(6) 每行元素之积;(7) 每列元素之积。 b) 随机产生两个10个元素的向量x ,y 。(1) 求x 的平均值、标准方差。(2) 求x ,y 的相关系数。(3)对x 排序,并记录排序后元素在原向量中的位置。 4) 字符串操作函数 建立一个字符串向量(如‘ABc123d4e56Fg9’),然后对该向量做如下处理: (1) 取第1~5个字符组成的子字符串。 (2) 将字符串倒过来重新排列。 (3) 将字符串中的小写字母变成相应的大写字母,其余字符不变。 (4) 统计字符串中小写字母的个数。

MATLAB实验指导书(学生定稿)

实验一 MATLAB语言平台及基本运算 一、实验目的 1、熟悉MATLAB基本的操作界面。 2、掌握MATLAB中变量、数组、向量等对象的生成方法。 3、掌握矩阵的生成和基本运算方法。 4、掌握MATLAB中的常用绘图命令使用方法 二、实验设备 计算机,MATLAB语言环境 三、实验指导原理 1、常见数学函数 如:输入 x=[-4.85 -2.3 -0.2 1.3 4.56 6.75],则 ceil(x)= -4 -2 0 2 5 7 fix(x) = -4 -2 0 1 4 6 floor(x) = -5 -3 -1 1 4 6 round(x) = -5 -2 0 1 5 7 系统的在线帮助 (1) help 命令: 1).当不知系统有何帮助内容时,可直接输入 help以寻求帮助: >> help(回车) 2).当想了解某一主题的内容时,如输入: >> help syntax (了解 Matlab 的语法规定) 3).当想了解某一具体的函数或命令的帮助信息时,如输入: >> help sqrt (了解函数 sqrt 的相关信息)

(2) lookfor 命令 现需要完成某一具体操作,不知有何命令或函数可以完成,如输入: >> lookfor line (查找与直线、线性问题有关的函数) 3、常量与变量 系统的变量命名规则:变量名区分字母大小写;变量名必须以字母打头,其后 可以是任意字母,数字,或下划线的组合。此外,系统内部预先定义了几个有特殊意义和用途的变量,见下表: (1)数值型向量(矩阵)的输入 1).任何矩阵(向量),可以直接按行方式输入每个元素:同一行中的元素用逗号(,)或者用空格符来分隔;行与行之间用分号(;)分隔。所有元素处于一方括号([ ]内;例1: >> Time = [11 12 1 2 3 4 5 6 7 8 9 10] >> X_Data = [2.32 3.43;4.37 5.98] 2).系统中提供了多个命令用于输入特殊的矩阵: 上面函数的具体用法,可以用帮助命令 help 得到。如:help zeros ZEROS Zeros array. ZEROS(N) is an N-by-N matrix of zeros. ZEROS(M,N) or ZEROS([M,N]) is an M-by-N matrix of zeros.等等 4、数组(矩阵)的点运算 运算符:+(加)、-(减)、./(右除)、.\(左除)、.^(乘方), 例4: >> g = [1 2 3 4];h = [4 3 2 1]; >> s1 = g + h, s2 = g.*h, s3 = g.^h, s4 = g.^2, s5 = 2.^h 5、矩阵的运算

实验一:MATLAB软件入门(2015版)

实验一:MATLAB 软件入门 一、 实验目的及意义 [1] 熟悉MATLAB 软件的用户环境; [2] 了解MATLAB 软件的一般目的命令; [3] 掌握MATLAB 数组操作与运算函数; [4] 掌握MATLAB 软件的基本绘图命令; [5] 掌握MATLAB 语言的几种循环、条件和开关选择结构。 通过该实验的学习,使学生能灵活应用MATLAB 软件解决一些简单问题,能借助MATLAB 软件的绘图功能,对函数的特性进行探讨,广泛联想,大胆猜想,发现进而证实其中的规律。 二、实验内容 1.MATLAB 软件的数组操作及运算练习; 2.直接使用MATLAB 软件进行作图练习; 3.用MATLAB 语言编写命令M-文件和函数M-文件。 三、实验步骤 1. 在D 盘建立一个自己的文件夹; 2.开启软件平台——MATLAB ,将你建立的文件夹加入到MATLAB 的搜索路径中。 3.利用帮助了解函数max, min, sum, mean, sort, length ,rand, size 和diag 的功能和用法。 4.开启MATLAB 编辑窗口,键入你编写的M 文件(命令文件或函数文件); 5.保存文件(注意将文件存入你自己的文件夹)并运行; 6.若出现错误,修改、运行直到输出正确结果; 7.写出实验报告,并浅谈学习心得体会。 四、实验要求与任务 根据实验内容和步骤,完成以下具体实验,要求写出实验报告(实验目的→问题→算法与编程→计算结果或图形→心得体会) 1.设有分块矩阵??????=????223 22333S O R E A ,其中E,R,O,S 分别为单位阵、随机阵、零阵和对角阵,试通过数值计算验证??????+= 22S 0RS R E A 。 2.某零售店有9种商品的单件进价(元)、售价(元)及一周的销量如表1.1,问哪种商品的利润最大,哪种商品的利润最小;按收入由小到大,列出所有商品及其收入;求这一周该10种商品的总收入和总利润。 表1.1

matlab实验指导书

matlab实验指导书 实验一 MATLAB运算基础及矩阵分析与处理 一实验目的 1.熟悉启动和退出MATLAB的方法。 2.熟悉MATLAB 命令窗口的组成。 3.掌握建立矩阵的方法。 4.掌握MATLAB各种表达式的书写规则以及常用函数的使用。 5. 掌握生成特殊矩阵的方法。 6. 掌握矩阵分析的方法。 7. 用矩阵求逆解线性方程组。二实验仪器和设备装有以上计算机一台三实验原理 MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,并有较强的绘图功能。基本规则 一般MATLAB命令格式为 [输出参数1,输出参数2,……]= 输出参数用方括号,输入参数用圆括号如果输出参数只有一个可不使用括号。 %后面的任意内容都将被忽略,而不作为命令执行,一般用于为代码加注 释。 可用↑、↓键来重现已输入的数据或命令。用←、→键来移动光标进行修改。所有MATLAB命令都用小写字母。

大写字母和小写字母分别表示不同的 变量。 常用预定义变量,如pi 、Inf、NaN、ans 矩阵的输入要一行一行的进行,每行各元素用空格或“,”分开,每行用 “;”分开。如 123 A456789 MATLAB书写格式为A=[1 2 3 ;4 5 6 ;7 8 9] 在MATLABZ中运行如下程序可得到A 矩阵 a=[1 2 3;4 5 6;7 8 9] a = 1 2 3 4 5 6 7 8 9 需要显示命令的计算结果时,则语句后面不加“;”号,否则要加“;”号。运行下面两种格式可以看出它 们的区别: a=[1 2 3;4 5 6;7 8 9] a=[1 2 3;4 5 6;7 8 9]; a= 1 2 3 不显示结果 4 5 6 7 8 9 当输入语句过长需要换行时,应加上“…”后再回车,则可续行输入。文件管理常用命令帮助命令 MATLAB有很多命令,因此很不容易记忆。使用HELP命 令可以得到有关命令的屏幕帮助信息。 如在MATLAB环境下直接运行HELP命令就会在屏幕上

实验一 MATLAB运算基础

实验一 MATLAB 运算基础 一、实验目的 1.熟悉启动和退出MATLAB 的方法; 2.熟悉MATLAB 命令窗口的组成; 3.掌握建立矩阵的方法; 4.掌握MATLAB 各种表达式的书写规则以及常用函数的使用。 二、实验内容 1.先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 ⑴21185sin 2e z +?=; >> z1=2*sin(85*pi/180)/(1+exp(2)) z1 = 0.2375 ⑵)1ln(2122x x z ++=,其中?? ????-+=545.0212i x ; >> x=[2 1+2i;-0.45 5]; >> z2=1/2*log(x+sqrt(1+x^2)) z2 = 0.7114 - 0.0253i 0.8968 + 0.3658i 0.2139 + 0.9343i 1.1541 - 0.0044i ⑶0.3,9.2,8.2,,8.2,9.2,0.3,2 3.0ln )3.0sin(23.03.03 ---=+++-=-a a a e e z a a >> a=(-3.0:0.1:3.0); >> z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2) z3 = Columns 1 through 3 0.7388 + 3.1416i 0.7696 + 3.1416i 0.7871 + 3.1416i Columns 4 through 6 0.7913 + 3.1416i 0.7822 + 3.1416i 0.7602 + 3.1416i Columns 7 through 9

MATLAB实验指导书(2010)

MATLAB语言及应用实验指导书 机械与电气工程学院

目录 实验一MA TLAB基础入门及数值数组运算(2学时,验证) . 3 实验二MA TLAB语言的程序设计(4学时,综合) (8) 实验三SIMULINK交互式仿真集成环境(2学时,验证) (11)

实验一MATLAB基础入门及数值 数组运算 一、实验目的 1、了解MATLAB操作桌面的基本结构和组成; 2、理解Command Window指令窗的作用,掌握指令窗的操作方式和指令的基本语法; 3、理解Current Directory当前路径、搜索路径的作用,掌握当前路径、搜索路径的设置 方法; 4、理解Workspace Browser工作空间浏览器的作用,掌握内存变量的查阅、删除、保存和 载入的基本方法; 5、掌握一维数组的创建方法;掌握一维数组子数组的寻访和赋值方法; 6、掌握二维数组的创建方法;掌握二维数组子数组的寻访和赋值方法; 7、掌握数组的各种运算,理解数组运算和矩阵运算的区别。 二、实验原理 1、MATLAB操作桌面的基本结构和组成 了解MATLAB的基本组件是正确使用MATLAB的基本前提。MATLAB由以下基本组件组成:(1)指令窗Command Window:可键入各种送给MATLAB运作的指令、函数、表达式;显示除图形外的所有运算结果 (2)历史指令窗Command History:记录已经运作过的指令、函数、表达式; (3)当前目录浏览器:进行当前目录的设置;展示相应目录上的M、MDL等文件;(4)工作空间浏览器Workspace Browser:列出MATLAB工作空间中所有的变量名、大小、字节数; (5)内存数组编辑器Array Editor:在工作空间浏览器中对变量进行操作时启动(6)开始按钮 (7)交互界面分类目录窗Launch Pad:以可展开的树状结构列着MATLAB提供的所有交互界面 (8)M文件编辑/调试器 (9)帮助导航/浏览器 2、MATLAB指令窗的基本操作 MATLAB指令窗给用户提供了最直接的交互界面,可用于输入和执行指令、显示指令运行结果、调试MATLAB程序等常用的MATLAB仿真计算功能。本实验掌握以下在指令窗执行的基本操作,达到熟悉使用指令窗的目的: (1)最简单的计算器使用方法:在MATLAB指令窗中,可按计算器的方式进行一般的数学计算,MATLAB的运算符的含义大致与常见的运算规则一致; (2)在指令窗中输入和生成矩阵:与一般的计算器不同,在MATLAB中可直接输入和生成矩阵。实际上,矩阵是MATLAB工作的基本元素。 (3)数值表述方法:在MATLAB中的大部分数值的表述方式与平常是相同的,需要注意的是在表示比较大的数时,MATLAB默认采用科学计数法显示; (4)变量命名规则:对于MATLAB变量命名规则,需要注意以下几点:

MATLAB入门实验报告

MATLAB实验报告 题目:第一次实验报告 学生姓名: 学院: 专业班级: 学号: 年月

MATLAB第一次实验报告 ————入门第一次上机实验刘老师就MATLAB软件进行了 大致的讲解,并讲了如何建立M文件,定义函数数 组矩阵,如何绘图。先就老师讲解及自己学习的情 况做汇报。 一、建立M文件 <1>M文件建立方法: 1. 在MATLAB中,点:File→New →M-file 2. 在编辑窗口中输入程序内容 3. 点File →Save,存盘,M文件名必须与函数名 一致 <2>课上实例 例:定义函数f(x1,x2)=100(x2-x12)2+(1-x1)2 答:建立M文件:fun.m function f=fun(x) f=100*(x(2)-x(1)^2)^2+(1-x(1))^2 如此便可以直接使用函数fun.m 例如计算f(1,2), 只需在MATLAB命令窗口键入命

令: x=[1 2] fun(x) 得f = 100. <3>课下作业 题目:有一函数,写一程序,输入自变量的值,输出函数值. 解答:建立M文件:zuoye1.m function f=zuoye1(x,y) f=x^2+sin(x*y)+2*y 命令行输入x=1,y=1 zuoye1(x,y) 得ans = 3.8415 经验算答案正确,所以程序正确。

二、定义数组、矩阵 <1>说明 逗号或空格用于分隔某一行的元素,分号用于区分不同的行. 除了分号,在输入矩阵时,按Enter 键也表示开始新一行. 输入矩阵时,严格要求所有行有相同的列 <2>课后作业 题目:有一个4x5矩阵,编程求出其最大值及其所处的位置. 解答:a=round(10*rand (4,5)) [temp I]=max(a) [am II]=max(temp) p=[I(II) II] 运行得一随机矩阵 a = 7 7 7 3 7 0 8 2 0 3 8 7 7 1 10 9 4 0 8 0 temp =

MATLAB实验指导

实验报告 课程名称:MATLAB基础 授课班级: 学号: 姓名: 指导老师:

MATLAB实验一:MATLAB语言基本概念实验 一、实验目的: 1. 熟悉MATLAB语言及使用环境; 2.掌握MATLAB的常用命令; 3.掌握MATLAB的工作空间的使用; 4.掌握MATLAB的获得帮助的途径。 5. 掌握科学计算的有关方法,熟悉MATLAB语言及其在科学计算中的运用; 6.掌握MATLAB的命令运行方式和M文件运行方式; 7.掌握矩阵在MATLAB中的运用。 二、实验方案分析及设计: 本次实验主要目的是了解MATLAB的使用环境,以及常用的一些命令的使用;了解矩阵在MATLAB实验中的具体运用,以及相关的一些符号命令的使用。 三、实验器材: 电脑一台,MATLAB软件 四、实验步骤: 打开MATLAB程序,将实验内容中的题目依次输入MATLAB中,运行得到并记录结果,最后再对所得结果进行验证。 五、实验内容及要求: 1. 熟悉MATLAB工作空间的功能,将工作空间中的变量保存为M文件,并提取该文件中的变量。(该题只需在MATLAB环境中操作,不用在实验报告中写结果) 2.熟悉MATLAB获取帮助的途径,将所有plot开头的函数列出来,并详细给出plotfis 函数的使用方法。(该题只需在MATLAB环境中操作,不用在实验报告中写结果) 3. 输入 A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2;3 3 3], 在命令窗口中执行下列表达式,写出实验结果并掌握其含义: A(2, 3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B A^2 A.^2 B/A B./A 4.输入 C=1:2:20,则 C(i)表示什么(写出实验结果)?其中i=1,2,3, (10)

实验1MATLAB运算基础实验报告模板

长沙理工大学计通学院通信工程系胡双红编MATALB与信号处理 实验报告 实验项目名称:MATALB运算基础 学院:____交通运输工程学院___ 专业:_________道路工程_______ 学号:___201610010415_____ 班级:____道路4班____________ 报告人:____田然_____________ 指导老师:___ 胡双红________ 实验时间:_________2017.9.16_____ 实验目的:

1. 熟悉启动和退出MATLAB 的方法。 2. 掌握MATLAB 命令窗口的组成。 3. 掌握建立矩阵的方法。 4. 掌握MATLAB 各种表达式的书写规则以及常用函数的使用。 实验内容与要求: 实验1: 求下列表达式的值,然后显示MATLAB 工作空间的使用情况(whos 函数)并保存全部变量(save 函数)。 (1) 12 2sin851z e =+ 提示:自然对数e 用exp(1)函数产生 (2) (21 ln 2z x = ,其中2120.45 5i x +??=??-?? 提示:ln 运算用log()函数计算 根号运算用sqrt()函数计算 (3) ()0.30.330.3sin 0.3ln 22 a a e e a z a --+=++ ,3.0, 2.9,,2.9,3.0a =-- 提示:利用冒号表达式生成a 向量,求各点的函数值时用点乘运算 (4) 2242011 122123t t z t t t t t ?≤

MATLAB实验指导书

实验二程序文件与函数文件的应用 一.实验目的: 1.熟悉MATLAB系统M文件的基本操作; 2.熟练应用MATLAB有关的图形函数,绘制函数图形。 二.实验内容 1.MATLAB程序文件: ①编辑程序文件 当完成一个功能需要许多MATLAB命令时,可以将这些命令按特定的顺序组合在一起,存储在一个程序文件中,就得到了MATLAB程序,其文件名的后缀为*.M,故也称为M文件。在命令窗口的FILE菜单或工具栏上选择NEW命令——M-file,即可开始编辑M文件。MATLAB编辑器与其它WINDOWS编辑程序类似。 ②保存M文件 编辑M文件后,在命令窗口的FILE菜单或工具栏上选则SAVE AS 命令存盘,文件应以* .M为后缀。 ③执行M文件 在MATLAB系统命令窗口下,在提示符”>>”处键入所编辑的M文件名后,即可执行该文件。在执行中若发现错误,系统将给出提示。此时可再次进入编辑器中修改程序,直至程序能正确执行为止。 编写下列题目M文件,调试并运行: 练习2-1.将图形窗口分割成132的空格,设ωt∈[0,2π], 以π/50为步长,绘制下列函数图形: (1)在左窗口,以ωt为横坐标,绘制V=120Sinωt和

I=100Sin(ωt-π/4)曲线,线条分别用不同颜色表示; (2)在右窗口,绘制P=V 2I 曲线,线型用“*”符号。 练习2-2.绘制以下函数图形: 且在X 轴写上“Time ”标号,Y 轴写上“Amplitude ”标号,图形的标题为“Decaying-oscillating Exponential ”. (2)在0≤t ≤10区间内绘制如下图形: 在同一个图中绘制上述函数,求出Y(t=0)和Y(t=10)的点。(注意弧度与角度的区别)。 (3)绘制如下图形: (4)在0≤t≤20区间内,且在同一图中绘制如下函数图形: 求y1的最小值与最大值。 (5)对应0≤t≤25区域内,在同一图中绘制下列函数。 ) 80() sin(21)() 1(≤≤-=-t t e t y t 625.0)24083.2cos(23.1)(++=?t t y 625 .0)(=t x ) 300(8.0)309.0cos(5)(22.0≤≤+?-=--t e t e t y t t 6 .0)(6.062.2)(6.0)17422.2cos(62.2)(325.0225.01=+=+?+=--t y e t y t e t y t t

MATLAB实验指导书(DOC)

MATLAB 实验指导书

前言 MATLAB程序设计语言是一种高性能的、用于科学和技术计算的计算机语言。它是一种集数学计算、分析、可视化、算法开发与发布等于一体的软件平台。自1984年MathWorks公司推出以来,MATLAB以惊人的速度应用于自动化、汽车、电子、仪器仪表和通讯等领域与行业。MATLAB有助于我们快速高效地解决问题。MATLAB相关实验课程的学习能加强学生对MATLAB程序设计语言理解及动手能力的训练,以便深入掌握和领会MATLAB应用技术。

目录 基础型实验............................................................................................ - 1 - 实验一MATLAB集成环境使用与基本操作命令练习 ............. - 1 - 实验二MATLAB中的数值计算与程序设计 ............................. - 7 - 实验三MATLAB图形系统 ......................................................... - 9 -

基础型实验 实验一 MATLAB 集成环境使用与基本操作命令练习 一 实验目的 熟悉MATLAB 语言编程环境;熟悉MATLAB 语言命令 二 实验仪器和设备 装有MATLAB7.0以上计算机一台 三 实验原理 MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,并有较强的绘图功能。 1.1 基本规则 1.1.1 一般MATLAB 命令格式为 [输出参数1,输出参数2,……]=(命令名)(输入参数1,输入参数2,……) 输出参数用方括号,输入参数用圆括号如果输出参数只有一个可不使用 括号。 1.1.2 %后面的任意内容都将被忽略,而不作为命令执行,一般用于为代码加注 释。 1.1.3 可用↑、↓键来重现已输入的数据或命令。用←、→键来移动光标进行修改。 1.1.4 所有MATLAB 命令都用小写字母。大写字母和小写字母分别表示不同的 变量。 1.1.5 常用预定义变量,如pi 、Inf 、NaN 、ans 1.1.6 矩阵的输入要一行一行的进行,每行各元素用空格或“,”分开,每行用 “;”分开。如 ?? ?? ? ?????=987654321A MATLAB 书写格式为A=[1 2 3 ;4 5 6 ;7 8 9] 在MATLAB 中运行如下程序可得到A 矩阵 a=[1 2 3;4 5 6;7 8 9] a = 1 2 3 4 5 6 7 8 9 1.1.7 需要显示命令的计算结果时,则语句后面不加“;”号,否则要加“;”号。

相关文档
最新文档