MATLAB及其应用实验指导书_第1页
MATLAB及其应用实验指导书_第2页
MATLAB及其应用实验指导书_第3页
MATLAB及其应用实验指导书_第4页
MATLAB及其应用实验指导书_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一 MATLAB软件使用初步一、 实验目的· 学习MATLAB软件的安装过程,熟悉MATLAB软件界面的组成及基本使用方法。· 理解数组(Array)的分类,及标量(scalar)、矢量(vector)和矩阵(Matrix)的区别,熟悉数组与矩阵的构造方法,掌握数组与矩阵的基本运算法则。二、 实验要求1、 掌握MATLAB软件的启动与退出的方法。2、 掌握MATLAB软件的桌面环境。3、 掌握MATLAB软件的基本使用方法。4、 掌握M文件编辑器的使用。5、 学会使用MATLAB的帮助系统。6、 掌握标量、矢量和矩阵的构造方法。7、 掌握数组的四则运算。8、 掌握矩阵的

2、四则运算。9、 掌握基本的数据输入和输出函数。三、 实验内容1通过桌面快捷图标或“开始程序”菜单运行MATLAB,熟悉MATLAB的桌面环境,如图1所示。图1 MATLAB桌面环境2浏览各个菜单项的内容,试着改变各个窗口的字体与字号。3熟悉matlab中的特殊变量:i、j、pi、ans等等。4在实验报告中回答下面哪些赋值语句是正确的,如果不正确给出理由。a=1a20=1.2;年薪=100000 (错,只能以字母开头,只能有字母数字下划线) _fee=20.0 (错,只能以字母开头,只能有字母数字下划线)coordinate.x=15已知,用MATLAB分别执行下列语句。并在实验报告中记录语句和

3、结果。 a. b. c. d. 6. 运行以下命令并将运行结果与工作空间浏览器中的状态进行比较。 >> a=sin(pi); b=1, 2; c=1; 2;>> who >> whos 在实验报告中回答:如下运行结果中,Size下的1x1、1x2、2x1的含义 7通过工作目录浏览器(Current Directory Browser)或者“File”菜单中相应菜单项改变当前工作目录。改变当前路径,如f:mydir,然后打开一个M文件编辑器,输入如下指令:%Create an input array from -2*pi t0 2*pit=-2*pi:pi/1

4、0:2*pi;x=abs(sin(t);plot(t,x)1) 保存文件test1.m,而后在command window 输入指令test1,观察结果。结果是Figure图形窗口弹出,如图(2)关闭图形窗口,并将当前目录变为最初的路径,如d:work。然后在command window 中输入指令test1,看会出现什么情况。为什么?改变路径后出现:? Undefined function or variable 'test1'.的英文,因为路径不对。2) 如果在M文件编辑器中选择菜单Debug->Run(快捷键是F5)运行,又会是什么情况?会出现运行M文件Figure

5、图形在实验报告中回答,可以通过哪些方式运行M文件(运行的方式有2种,一是在命令中心输入.m文件的名字(如果有参数,就需要给出参数);二是在.m文件编辑环境中直接运行,一般是在debug菜单项中选run或者直接按F5 )8画出函数(y=2*exp(-0.2*x))的图形。要求在M文件编辑器中输入以下语句,然后分别使用 · 绘图 · plotit · 你的学号(即一串数字)做为文件名保存,运行各自的M文件程序,并观察是否有预期的结果。x = 0:0.1:10;y = 2 * exp(-0.2 * x);plot(x, y);成功运行之后,查看工作空间浏览器worksp

6、ace中的当前状态,查看变量x的内容,而后使用数字编辑器(array editor)修改变量 x的内容,而后在command window 中输入指令plot(x,y),观察figure window中图形的变化。(由图(3)变为图(4)在实验报告中回答:1)x = 0:0.1:10产生什么样的数组;2)下面哪些是合适的M文件的文件名?· 绘图 · plotit · 一串数字9比较以下两句运行时matlab不同的表现。x = 0:0.1:10;(运行时不出结果)y = 0:0.1:10(运行时出结果 0 0.1000 0.2000 0.3000 0.4000 .1

7、0.0000)在实验报告中回答:1)语句末尾有分号和无分号,有什么不同?(没加分号的语句执行后会立刻显示结果加了分号的语句执行后不会显示结果 )2)在编写matlab程序时,是否应该在语句末尾添加分号?不应该10通过帮助文档浏览器(Help Browser)查看MATLAB的帮助目录结构,熟悉帮助文档的组成,并查看关于如何在Windows平台安装MATLAB的信息。寻求函数exp的的帮助文档,分别利用a) 在command window 中输入指令 help exp和doc exp,两者有何不同?(如图(5)b) 利用Help Browser。11构造数组并回答以下引用的结果是什么。在实验报告

8、中列出方法和结果(1)求矩阵A的大小,(提示:函数size)。并回答它与length(A)的区别是什么?(2)A(:, 3) A(3, :) A(2,3) A(2:end,:) A(1,1 3)(3 ) 列出数组A中所包含的数值0.6的下标。提示:用函数find。(4)A(1:2,1 4)=20 21; 22 23 12在实验报告中回答:下列语句分别表示什么意思,执行后,数组a中的内容是什么?3a) a= eye(3,3)产生3×3的单位矩阵。b= eye(3,2)3行2列,主对角线为1,其他元素为0的矩阵b) a=eye(3,3) b=7 8 9; a(3,:)=b(3 1 2)c

9、) a=eye(3,3) b=4 5 6;a(:,3)=b;13构造以下数组并回答以下表达式的结果是什么。在实验报告中列出方法和结果 (1)r = a + b;r = 3 -3 -1 4(2)r = a * d;(3)r = a .* d;(4)r = a * c;(5)r = a .* c;(6)r = a b;(7)r = a . b;(8)r = a . b; (9)r=a.*c c14设value = 10,在实验报告回答以下命令运行的结果。(1)disp('value = ' num2str(value);(2)disp('value = ' int2

10、str(value);(3)fprintf('value = %en, value);(4)fprintf(value = %fn, value);(5)fprintf(value = %gn, value);(6)fprintf(value = %12.4fn, value);15运行下列语句,回答以下命令运行的结果。在实验报告回答结果,并比较三个函数的区别;为了实现“四舍五入“应该如何操作?(B = floor(A) .   (floor:朝负无穷方向舍入)B = ceil(A) (ceil:朝正无穷方向舍入)B = fix(A) (fix:朝零方向舍

11、入 )B = round(A) (round:四舍五入)round(3.4)ceil(3.4)=4floor(3.4)fix(3.4)round(3.5)ceil(3.5)floor(3.5)fix(3.5)round(-3.4)ceil(-3.4)floor(-3.4)fix(-3.4)round(-3.5)ceil(-3.5)floor(-3.5)fix(-3.5) 四、 实验仪器PC机 实验二 数值计算一、实验目的掌握常用的数值运算方法,熟悉运用MATLAB进行数值计算二、实验要求1 掌握MATLAB中的常用数学函数。2 掌握数值计算方法。3 熟悉简单M文件的编程方法。三、实验内容(请在

12、实验报告中记录以下程序和结果)1matlab中,正弦函数的参数单位,是度还是弧度?设计程序验证你的答案。如果是度,那么已知弧度x,如何计算其正弦值?或者反之,如果是弧度,计算x度的正弦值。(是弧度,原因:sin(30) =-0.9880, sin(30*pi/180)=0.5000,求x的正弦值sin(x*pi/180)2. 通过键盘输入一组数据,求取该组数据的和、平均值,方差。(提示:利用matlab内部函数完成)。3. 输入一组正整数,使用关系运算和逻辑运算找出大于60小于100的数的位置,并提取符合条件的数值。2设计MATLAB程序,通过键盘输入(提示,input函数)读取华氏(Fahr

13、enheit)温度F,并将其转换为开氏(Kelvins)绝对温度值T,最后输出结果。计算公式如下:function s=s(F)T=(5/9)*F-32.0)+273.15 end3计算笛卡尔坐标系中两点(2,3)和(8,-5)之间的距离,并输出结果。两点间距离公式如下:(计算笛卡尔坐标系中两点(2,3)和(8,-5)之间的距离,并输出    计算笛卡尔坐标系中两点(2,3)和(8,-5)之间的距离,并输出结果。两点间距离公式如下等于10啊 怎么了 不对吗d2=(8-2)2+(-5-3)2d=10啊         

14、;     matlab d=sqrt (x1-x2)2 (y1-y2)2)    function d=juli(x1,y1,x2,y2) d=sqrt(x1-x2)2+(y1-y2)2); > d=juli(1,1,2,2) d = 4142function exe0501 x=input('input A locatn'); y=input('input B locatn'); fprintf('x value = %gn', x); 

15、fprintf('y value = %gn', y); d=sqrt(y(1)-x(1)2+(y(2)-x(2)2); disp('distence= ',num2str(d); )function d=dis(x1,y1,x2,y2)dis=sqrt(x1-x2)2+(y1-y2)2)End文件名要为dis4执行以下两个多项式的相加、减、乘、除的运算,并输出其结果。提示:conv和deconv函数。(conv是卷积运算,同时也可以做多项式的乘法 )加法 p=2 5 0 4 1 4;>> q=0 0 5 1 3 2; >&

16、gt; M=p+qM =2 5 5 5 4 6减法: p=2 5 0 4 1 4;>> q=0 0 5 1 3 2; >> M=p-qM = 2 5 -5 3 -2 2乘法p=2 5 0 4 1 4;>> q=0 0 5 1 3 2;>> M=conv(p,q)M = 0 0 10 27 11 39 19 33 15 14 8除法 p=2 5 0 4 1 4;>> q=5 1 3 2;>> M=deconv(p,q)M = 0.4000 0.9200 -0.42405已知x=0.0 0.3 0.8 1.1 1.6 2.3,

17、 y=0.40 0.56 1.14 1.31 1.56 2.10。试用Matlab对数据点x-y进行多项式拟合(提示:polyfit函数),并绘制拟合曲线(提示:plot函数)。改变多项式的阶次,观察曲线的拟合效果。(多项式函数拟合:a=polyfit(xdata,ydata,n) ) p=polyfit(x,y,1) 图(1)p=polyfit(x,y,2) 图(2)四、实验仪器PC机实验三 数据类型与程序设计一、实验目的掌握常用的数据类型与流程控制,熟悉运用MATLAB进行程序设计的方法二、实验要求1 熟悉常用的程序结构。2 熟悉常用的程序设计方法。3 进一步熟悉M-文件的编写方法。三、实

18、验内容(请在实验报告中记录以下程序和结果)1使用if结构设计MATLAB程序,通过输入不同的a,b,c值,计算方程的根,并给出方程根情况的提示信息(提示,a、b可能为0)。 (打开matlab2012b,新建new script.输入如下代码:a=input('a=?');b=input('b=?');c=input('c=?');d=b*b-4*a*c;x=(-b+sqrt(d)/(2*a),(-b-sqrt(d)/(2*a);disp('x1=',num2str(x(1),',x2=',num2str(x(2)

19、;)a=input('a=n');b=input('b=n');c=input('c=n');d=b2-4*a*cx1=(-b+sqrt(d)/(2*a)x2=(-b-sqrt(d)/(2*a) if d<0 disp('有两个不同复数根 ') else d>0 disp('有两个不同实数根 ')end2 使用switch结构设计MATLAB程序,通过输入英文星期单词,将其转换成相应的中文,例如输入“Sunday”,输出“星期天”。注意输入单词的大小写。3 a=input('输入英文星期几:&#

20、39;,s')4 switch(a)5 case('Monday')6 disp('星期一')7 case('Tuseday')8 disp('星期二')9 case('Wednesday')10 disp('星期三')11 case('Thursday')12 disp('星期四')13 case('Friday')14 disp('星期五')15 case('Saturday')16 disp('星期

21、六')17 case('Sunday')18 disp('星期日')19 otherwise20 disp('no')21 end3通过输入不同的x,y值,根据以下公式计算f(x,y)的值并显示。x=input('pls input x:');y=input('pls input y:'); if x>=0&y>=0 f=x+y elseif x>=0&y<0 f=x+y2 elseif x<0&y>=0 f=x2+y else x<0&y<0 f=x2+y2 end 4 通过输入一组数据(数据可为正、负或零),根据以下公式计算其平均值和标准方差。平均:m=input(请输入一组数据m:n);N=length(m)s1=0;s2=0;for i=1:Ns1=s1+m(i);s2=s2+m(i)2end标准方差: x=s1/N;S=sqrt(N*s2-s12)/N*(N-1)5 分别使用for、while语句,和sum函数,求For语句: s=0; for i=1:100; s=s+i; End while语句: sum=0; i=0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论