版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 MATLABMATLAB实实 验验 指指 导导 书书2前前言言MATLAB 程序设计语言是一种高性能的、用于科学和技术计算的计算机语言。它是一种集数学计算、分析、可视化、算法开发与发布等于一体的软件平台。自 1984 年 MathWorks 公司推出以来,MATLAB 以惊人的速度应用于自动化、汽车、电子、仪器仪表和通讯等领域与行业。MATLAB 有助于我们快速高效地解决问题。MATLAB 相关实验课程的学习能加强学生对 MATLAB 程序设计语言理解及动手能力的训练,以便深入掌握和领会 MATLAB 应用技术。目 录实验一实验一 熟悉熟悉 MATLAB 环境环境 .1实验二实验二 数值数组
2、创建、应用及可视化数值数组创建、应用及可视化.6实验三实验三 字符串数组的使用、简单脚本文件和函数的编写字符串数组的使用、简单脚本文件和函数的编写.14实验四实验四 数据可视化方法数据可视化方法.21实验五实验五 简单数据分析简单数据分析.27实验六实验六 简单图形用户界面设计简单图形用户界面设计.301实验一 熟悉MATLAB环境实验室名称:Matlab 实验室 实验日期: 2014 年 12 月 2 日教师评语教师签名: 年 月 日1、实验目的(1)熟悉 MATLAB 主界面,并学会简单的菜单操作。(2)学会简单的矩阵输入与信号输入。 (3)掌握部分绘图函数。 2、实验环境(软件、硬件及条
3、件):Windows XP,Matlab 7.13、实验内容、步骤与结果一用户工作目录和当前目录的建立和设置一用户工作目录和当前目录的建立和设置 图 1.1 目录二熟悉简单的矩阵输入二熟悉简单的矩阵输入图 1.2 建立 M 文件2 3图 1.3 简单矩阵(1) 图 1.4 简单矩阵(2)三基本序列运算三基本序列运算1、输入 A=1 2 3 ,B=4 5 6,求 C=A+B,D=A-B,E=A.*B, F=A./B,G=A.B, 并用 stem 画出 A,B,C,D,E,G。再输入一些数组,进行类似运算。4 图 1.5 A 图 1.6 B 图 1.7 C 图 1.8 D2、简单描绘出函数曲线:
4、a. tetf 330 tb. tteetf23530 tc. tetft2sin30 td. (在 MATLAB 中用 pi 来实现) atattf/sin22tf. ketf50 k绘图如下所示: 图 1.9 曲线 a 图 1.10 曲线 b5 图 1.11 曲线 c 图 1.12 曲线 d 图 1.13 曲线 f四四 M M 脚本文件编写初步用脚本文件编写初步用 M M 文件编辑器编写脚本文件重新描绘上面函数波形。文件编辑器编写脚本文件重新描绘上面函数波形。图 1.14 M 文件代码64、实验分析MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,
5、并有较强的绘图功能。操作界面主要的介绍如下:指令窗( Command Window ),在该窗可键入各种送给 MATLAB 运作的指令、函数、表达式,并显示除图形外的所以运算结果。历史指令窗( Command History ),该窗记录已经运行过的指令、函数、表达式;允许用户对它们进行选择复制、重运行,以及产生 M 文件。工作空间浏览器( Workspace Browser ),该窗口罗列出 MATLAB 工作空间中所有的变量名、大小、字节数;并且在该窗中,可对变量进行观察、编辑、提取和保存。其它还有当前目录浏览器( Current Directory Browser )、 M 文件编辑 /
6、 调试器( Editor/Debugger )以及帮助导航 / 浏览器( Help Navigator/Browser )等,但通常不随操作界面的出现而启动。利用 File 菜单可方便对文件或窗口进行管理。其中 File | New 的各子菜单, M-file ( M 文件)、 Figure (图形窗口)、或 Model ( Simulink 编辑界面)分别可创建对应文件或模块。 Edit 菜单允许用户和 Windows 的剪切板交互信息。 5、实验结论(1)将代码写在.m 文件里,这样只需要该文件里的就可以而不必每次都去敲命令;(2)MATLAB 语言最基本的赋值语句结构为:变量名列表 =
7、表达式。7实验二 数值数组创建、应用及可视化实验室名称:Matlab 实验室实验日期: 2014 年 12 月 5 日教师评语教师签名: 年 月 日1、实验目的(1)掌握二维数组的创建、寻访,区分数组运算与矩阵运算的区别。(2)掌握标准数组生成函数和数组构造技法。 (3)进一步熟悉 M 脚本文件编写的方法和技巧。2、实验环境(软件、硬件及条件):Windows XP,Matlab 7.13、实验内容、步骤与结果一数组的创建和寻访一数组的创建和寻访 1、一维数组在命令窗口执行下面指令,观察输出结果,体味数组创建和寻访方法,%号后面的为注释。图 2.1 一维数组 (1)8图 2.2 一维数组 (2
8、)2 二维数组 (1)二维数组在命令窗口执行下面指令,观察输出结果,体味数组创建和寻访方法,%号后面的为注释。9 图 2.3 二维数组(2) 利用 M 文件创建和保存下面的数组(分号后面是一个空格后加 3 个小数点,表示换行续写) AM=101,102,103,104,105,106,107,108,109;. 201,202,203,204,205,206,207,208,209;. 301,302,303,304,305,306,307,308,309;10图 2.4 创建 M 文件并保存数组(3)找出数组中所有绝对值大于 3 的元素。5311342024A图 2.5(4)在命令窗口执行下
9、面指令,体味二维数组的子数组寻访和赋值 A=zeros(2,4) % 创建(2*4)的全零数组 A(:)=1:8 % 全元素赋值方式 s=2 3 5; % 产生单下标数组行数组 A(s) % 由“单下标行数组”寻访产生 A 元素组成的行数组 Sa=10 20 30 %Sa 是长度为 3 的“列数组”A(s)=Sa % 单下标方式赋值 A(:,2 3)=ones(2) % 双下标赋值方式:把 A 的第 2 、3 列元素全赋为 111图 2.6 二维数组的子数组寻访和赋值12(5) 运行指令 rand(state ,11),A=rand(3,10000);B=(A0.5);C=2*B-1; 首先预
10、测( C*C)/100 的运行结果,然后再在机器上验证。(本方法提供了产生通信等仿真中常需若干独立的双随机码的方法原型。)图 2.7 运行指令(6) 在命令窗口执行下面指令,体味数组运算与矩阵运算的区别 图 2.8 数组运算与矩阵运算的区别13二编写如图所示波形的二编写如图所示波形的 MATLABMATLAB 脚本文件,图中虚线为正弦波,要求它分别在脚本文件,图中虚线为正弦波,要求它分别在及及21处削顶。处削顶。22图 2.9 函数波形图图 2.10 此波形的 MATLAB 脚本文件144、实验分析数值数组和数组运算 MATALB 核心内容,是 MATLAB 最重要的一种内建数据类型。一维数组
11、的创建可采用逐个元素输入法,通用格式是 x = a : inc : b。二维数组是由实数或复数排列成矩形而构成的。二维数组的创建也可采用直接输入法,或者利用构造 M 文件创建和保存数组。除此以外,还可以采用 MATLAB 提供的标准函数生成我们需要的数组,诸如 zeros 、 ones 、 rand 、 eye 、 diag 、 magic 等,详请见附录。一维数组元素的寻访和标识采用 X(index) 方法。二维数组元素的标识和寻访可分为“全下标”标识和“单下标”标识。5、实验结论(1)通常,对于离散数据可采用 stem 命令或者使用 plot 绘点的方法,而对于连续函数可直接采用 plot
12、 指令来实现。(2)Matlab 中的许多函数可以直接对任意维的数组直接运算,相当于对数组中的每个元素分别进行运算。15实验三 字符串数组的使用、简单脚本文件和函数的编写实验室名称:Matlab 实验室实验日期:2014 年 12 月 9 日教师评语教师签名: 年 月 日1、实验目的(1)掌握字符串数组的创建和构造方法及常用字符串函数的使用。(2)熟练掌握 MATLAB 控制流的使用方法。(3)熟悉 M 脚本文件、函数文件的编写方法和技巧。2、实验环境(软件、硬件及条件):Windows XP,Matlab 7.13、实验内容、步骤与结果一串数组的创建和寻访一串数组的创建和寻访 1 以实际操作
13、下例,以体会数值量与字符串的区别 16图 3.1 数值量与字符串的区别2 已知串数组 a=”This is an example.”, 试将其倒序输出。 图 3.2 倒序输出173.接上题,试执行 ascii_a=double(a),观察其 ASCII 码,并将 ASCII 码变回字符串。 图 3.3 将 ASCII 码变回字符串4尝试用直接输入法在命令窗口创建字符串 s ,第一行时“ This string array ” , 第二行是“ has multiple rows. ”。 图 3.4 使用直接输入法5利用串操作函数 char、str2mat、strvcat 分别写出使以下这段文字成
14、为字符串的程序,注18意保持这段文字的格式。在英式用法中,引号通常是单引号,如Fire!。 In GB usage quotation marks are usually single: Fire! . 图 3.5 使文字成为字符串的程序二脚本文件实现二脚本文件实现,并在图上标出图名和极大值点坐标。如,并在图上标出图名和极大值点坐标。如 30,3cos14 . 0tteyt下图所示。下图所示。19图 3.6 M 文件图 3.7 实现 30,3cos14 . 0tteyt20三编程实现分别用三编程实现分别用 for 或或 while 循环语句计算:循环语句计算: 63263022212iiK的程
15、序,并给出运行结果。此外,实现一种避免使用循环的的计算程序。 K =1.8447e+019图 3.8 用 for 或 while 循环语句实现四函数文件四函数文件 1 详读并运行下面的 circle.m 函数文件。体会 M 函数文件的编写结构及方法。 % 后面的内容称为注释行,不被执行,起注释说明作用。图 3.9 M 函数文件图 3.10 circle(2,b)对应的圆212 编写一个简单的函数文件,它具有如下性质:该函数被调用时,如果不指定输入变量,则自动输出“用户,你忘记给定输入变量了!”;当输入大于 1 的整数时,则输出“你是一个合法用户!”;当输入的是一个非正整数时,函数文件会给出一个
16、错误提示“你是非法用户!” 【 提示:可能用到 disp,error 等指令,使用方法自己查询帮助 】图 3.11 M 文件图 3.12 运行结果4、实验分析字符串的创建方式是:将待建的字符放在“单引号对”中。MARLAB 提供了五种控制流的结构: for 循环结构, while 循环结构, if-else-end 分支结构,以及 switch-case 结果、 try-catch 结构。 实验内容及结果脚本文件不同的,函数文件犹如一个“黑箱”。从外界只能看到传给它的输入量和送出的计算结果,而内部运作是藏而不见的,特点是:从形式上看,与脚本文件不同,函数文件的第一行总是以“function”引
17、导的“函数声明行”;从运行上看,与脚本文件不同,每当函数文件运行时,MATLAB 就会专门为它开辟一个临时的工作空间,称之为函数工作空间。5、实验结论(1)对循环体,循环变量依次取数组的各列,对于每个变量值,循环体被执行一次。 (2)if 指令判决和 break 指令的配合使用,可以强制中止 for 循环或 while 循环。(3)只有数组所有元素均为真时,MATLAB 才会执行循环体。若表达式为空数组,则不执行循环体。22实验四 数据可视化方法实验室名称:Matlab 实验室实验日期:2014 年 12 月 12 日教师评语教师签名: 年 月 日1、实验目的 (1)掌握曲线绘制的基本技法和指
18、令,会使用线形、色彩、数据点标记表现不同数据的特征,掌握生成和运用标识注释图形。(2)进一步掌握函数编写及数据可视化方法。2、实验环境(软件、硬件及条件):Windows XP,Matlab 7.13、实验内容、步骤与结果一仿照运行,体会数据可视化方法。一仿照运行,体会数据可视化方法。 1 已知,运行下面程序,体会离散数据可视化方法。12, 1 , 0n16ny% 用 plot 实现离散数据可视化 n=0:12; % 产生一组自变量数据 y=1./abs(n-6); % 计算相应点的函数值 plot(n,y,r*,MarkerSize,20) % 用红花标出数据点 grid on % 画坐标方
19、格% 用 stem 实现离散数据可视化 n=0:12; y=1./abs(n-6); stem(n,y)23图 4.1 用 plot 实现离散数据可视化 图 4.2 用 stem 实现离散数据可视化2 下面时用图形表示连续调制波形,仿照运行,分析表现形式不同的原因。 tty9sinsinclear t1=(0:11)/11*pi; y1=sin(t1).*sin(9*t1); t2=(0:100)/100*pi; y2=sin(t2).*sin(9*t2); subplot(2,2,1),plot(t1,y1,r.),axis(0,pi,-1,1),title(子图(1); subplot(2
20、,2,2),plot(t2,y2,r.),axis(0,pi,-1,1),title(子图(2);subplot(2,2,3),plot(t1,y1,t1,y1,r.) axis(0,pi,-1,1),title(子图(3); subplot(2,2,4),plot(t2,y2) axis(0,pi,-1,1),title(子图 (4)24图 4.3 连续调制波形 tty9sinsin二编程实现。二编程实现。 1 用图形表示连续调制波形,过零点及其包络线,如下图所示。 tty9sinsin 图 4.4 M 文件 图 4.5 连续调制波形 tty9sinsin2 编写函数 x,n=stepseq
21、(n0,n1,n2), 实现: 为整数nnnnnnnnu,010201并编写脚本文件实现: 20n0,20nu10nu10e10nununx10n3 . 0n要求在脚本文件中调用 stepseq 函数,最后绘出序列在给定区间的波形图。 nx图 4.6 函数 x,n=stepseq(n0,n1,n2)图 4.7 脚本文件实现25图 4.8 序列在给定区间的波形图 nx3 编写一个函数文件y,n=sigadd(x1,n1,x2,n2),实现两个对应样本之间的相加,其中 x1是长度为 n1 的序列,x2 是长度为 n2 的序列,n1、n2 分别是 x1、x2 的位置信息(n1、 n2 均为整数),如
22、:n1= -3,-2,-1,0,1,2,3,4 ,对应的 x1= 2, 3, 1,4,1,3,1,2 ; n2=-4,-3,-2,-1,0,1,2 ,对应的 x2= 1, 3, 2, 5,1,3,4 。当调用函数 y,n=sigadd(x1,n1,x2,n2) 时,我们应该得到: n=-4,-3,-2,-1,0,1,2,3,4,对应的 y= 1, 5, 5, 6,5,4,7,1,2 。仔细观察 sigadd 函数的功能。编好函数文件程序后,请在命令窗口调用,验证正确性,记录验证结果。图 4.9 M 文件26图 4.10 命令窗口调用验证正确性4、实验分析通常,绘制二维或三维图形的一般步骤如下表
23、所示:步骤典型指令1曲线数据准备先取一个参变量采用向量然后计算各坐标数据向量t=0:.001:3*pi; % 参变量采用向量t=linspace(0,3*pi,1000) % 参变量采用向量另种方式 y=f(t); % 计算相应的函数值2选定图形窗及子图位置缺省时,打开 Figure No.1,或当前窗,当前子图可用指令指定图形窗号和子图号figure(1) % 指定 1 号图形窗 Subplot(2,2,3) % 指定 3 号子图3调用二维或三维绘图指令指定好线形、色彩、数据点形plot(t,y,r:) % 用红虚点画二维线 , 画三维可 %plot3 指令,此处略4设置轴的范围、坐标分格线
24、axis(x1,x2 ,y1,y2 ) % 平面坐标范围 grid on % 坐标分格线5图形注释:图名、坐标名、图例、文字说明等title(调制图形) % 图名 xlabel(t); ylabel(y) % 轴名 legend(sin(t),sin(t)sin(9t) % 图例text(2,0.5, y=sin(t)sin(9t) % 文字说明6着色、明暗、灯光、材质处理等(仅对三维图形使用)colormap, shading, light, material7视点、三度(横、纵、高)比(仅对三维图形使用)view, aspect8图形的精确修饰(图柄操作)利用对象属性值设置利用图形窗工具条
25、进行get, set9打印图形窗上的直接打印选项或按键% 采用图形窗选项或按键打印最简捷 print 27利用图形后处理软件打印 dsp2 % 专业质量打印指令5、实验结论(1)plot 等绘图指令的典型调用格式为: plot(t,y,s) 。其中 s 是用来指定线型、色彩、数据点形的选项字符串。(2)x,y=ginput(n),可用鼠标从二维图形上获取 n 个点的数据坐标(x,y),该指令只适用于二维图形 , 在数值优化、工程设计中十分有用。(3)常用的坐标控制指令 axis 使用是最多的,比如 axis(x1 ,x2 ,y1 ,y2) 可人工设定坐标范围,axis off 可取消轴背景,a
26、xis equal 横纵轴采用等长刻度等。(4)掌握常用的绘图函数及常见绘图参数的含义,很有必要。28实验五 简单数据分析实验室名称:Matlab 实验室 实验日期: 2014 年 12 月 16 日教师评语教师签名: 年 月 日1、实验目的初步掌握利用 MATLAB 实现数据的拟合、插值、简单数据分析等。 2、实验环境(软件、硬件及条件):Windows XP,Matlab 7.13、实验内容、步骤与结果(实验指导书未给出具体内容,以下实验为课本上的部分例题。)一用一个一用一个 3 次多项式在区间次多项式在区间【0,2】内逼近函数内逼近函数 sin x。(。(P150 例例 6.11) 图
27、5.1 M1 文件:得到 3 次多项式的系数和误差图 5.2 M2:将多项式 p(x)和 sin x 进行比较29图 5.3 用 3 次多项式对正弦函数进行拟合二、二维数据插值二、二维数据插值1、用 3 次多项式插值得到的钢轨温度函数(P149 例 6.10)图 5.4 M 文件Ps:x 表示测量点温度;h 表示测量时间;T 表示测得各点的温度30图 5.5 用 3 次多项式插值得到的钢轨温度分布图4、实验分析数值计算能力是 MATLAB 称雄世界的根本柱石。MATLAB 内建了很多函数可以求解线性方程、特征值问题以及有关多项式和卷积、数据分析、泛函、信号处理、系统分析等方面的指令。结合目前的
28、学习进度,本课程内只简单讨论数据的拟合、插值、简单数据分析及在实验中讨论函数的零极点求法等内容。MATLAB 提供了拟合和插值的相关函数。曲线拟合是研究如何寻找“平滑”曲线最好地表现带噪声的“测量数据”点。而插值是在认定所给“基准数据”完全正确的情况下,研究如何“平滑”地估算出“基准数据”之间其他点的函数值。因此插值所得曲线一定穿过“基准数据”。而拟合曲线就不一定了。另外,而每当基准数据之间其他点上函数值没法获得,或获得的代价很好时,插值就发挥作用。采用的插值算法也很多,如线形插值、三次多项式插值算法、样条插值等。MATLAB 内建了很多数据分析函数,比如常用的随机数发生器函数 rand,ra
29、ndn; 计分析指令有:min-最小值,max-最大值,mediam-求中值 ,mean-平均值, std-标准差,sort-排序指令等。差分和累计函数 diff、prod、sum 等。另外 MATLAB 还提供了很多泛函指令、信号处理专业工具包、系统分析中的控制工具包以及诸如微分、求导等符号运算功能等等.5、实验结论(1)拟合多项式只能在给定数据所限定的区间内使用,不要任意向往拓展。(2)插值指令很多,有 interp1,interp2,interp3 等(3)对于多项式拟合有 polyfit、poly2str、polyval 等函数(4)Matlab 在实际运用中有着极为方便、简洁、快捷的
30、作用,充满魅力。31实验六 简单图形用户界面设计实验室名称:Matlab 实验室 实验日期: 2014 年 12 月 19 日实验名称教师评语教师签名: 年 月 日1、实验目的(1)初步熟悉 MATLAB 仿真环境。 (2)掌握物理模型的建立、仿真方法。2、实验环境(软件、硬件及条件):Windows XP,Matlab 7.13、实验内容、步骤与结果 下面是采用 Simulink 中的积分仿真模块,求解从实际自然界(力学、电学、生态等)或社会中,抽象出初始状态为 0 的二阶微分方程 ) (的实例, xxtux4 . 02 . 0)(2 . 0 ) (t u 是单位阶跃函数。请模拟搭建,并仿真
31、运行。步骤如下:(1) 微分方程:xxtux4 . 02 . 0)(2 . 0 (2) 利用 Simulink 库中的标准模块构作模型。利用积分模块构造微分方程求解模型的核心思想是: x 经积分作用得到 x , x 再经积分模块作用就得 x 。上图中的 Int1 、 Int2 为积分模块,积分仿真模块形如。 Gs 、 G1 和 G2 为增益模块,形如, k 为增益参数,通过双击增益模块,设置其中 Gain 值实现。 G1 和 G2 方向旋转可借助菜单 【 Format : Rotate Block 】 选项实现。 u(t) 称为输入模块,此处为单位阶跃函数,其仿真模块为。称为求和模块,其设置方
32、法是双击原始求和模块,图标形状 Icon shape 选择 rectangular ,使模块成矩形;符号列表 List of signs 设置为 。 Scope 称为示波器,形如。以上模块大多位于 Simulink 模块组的 Continuous 、 Math 以及 Nonlinear 模块库中, Scope 位于 Sink 模块库。用户可自己在 Simulink 模块库中自行查找,借此了解 MATLAB 中 Simulink 的丰富资源。(3) 设置仿真选项。选中菜单 【 Simulation : Parameters 】 ,打开仿真参数设置窗;在 Solver 页中,把仿真的停止时间 Stop time 设置为 20 。 (4) 仿真操作。双击示波器图标,打开示波窗。选择模型窗中的菜单 【 Simulation : Start 】 ,就可在示波窗中看到位移
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024届安徽省铜陵市重点名校高三八校联考数学试题(四)
- 九年级语文上册教案全集
- 魔法屋课件教学
- 人教版物理八年级下册 专项训练卷 (一)力、运动和力(含答案)
- 贵州省六盘水市2024-2025学年高一上学期11月期中地理试题(无答案)
- 2024-2025学年北京市顺义区牛栏山一中高三(上)月考物理试卷(10月份)(含答案)
- 搁板置物架市场发展预测和趋势分析
- 套鞋产业规划专项研究报告
- 宠物猫砂箱用除臭剂产业运行及前景预测报告
- 人教版英语八年级下册 暑假复习Unit 8-Unit10 小检测
- 马克思主义与大学生活——马原小组展示高端ppt2013powerpoint
- 纵梁式及桁架式管廊结构设计浅析_图文
- 110Kv变电站二次电气部分设计
- 火力发电厂设计各阶段及其主要内容
- 光伏电站安全检查表
- 减肥与健康--
- 精通版小学四年级上册英语教案全册
- 水利工程监理工作程序
- 索道施工方案分享版
- 英语特殊疑问句练习题(附答案)
- 2022年三会一课座谈交流会发言稿.doc
评论
0/150
提交评论