您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 实验指导书MATLAB程序设计
MATLAB程序设计实验指导书电子信息工程教研室辽宁工业大学2008年8月-1-目录实验一MATLAB语言基础...............................................................-1-实验二MATLAB数值运算...............................................................-6-实验三MATLAB绘图.....................................................................-13-实验四MATLAB建模与仿真.........................................................-15--1-实验一MATLAB语言基础一、实验目的1.学习了解MATLAB语言环境;。2.练习MATLAB命令的基本操作。3.练习m文件的基本操作。二、实验仪器计算机、MATLAB软件环境。三、实验内容及步骤⒈学习了解MATLAB语言环境(1)MATLAB语言操作界面开机执行程序c:\matlab6p5\bin\matlab.exe(或用鼠标双击图标)即可进入MATLAB命令窗口:“CommandWindow”。在命令提示符位置键入命令,完成下述练习。(2)练习DOS相似命令MATLAB语言与DOS操作系统有如下常用的相似命令,在操作界面上练习这些命令。Dirdirc:\matlab6p5\toolboxTypetypeanyprogram.mCdcd..cdtoolbox-2-(3)MATLAB的数据显示格式显示格式有:short,long,hex,shorte,longe,rational等。键入:a=pi;b=exp(1);由options菜单选项改变数据格式,观察变量值,并作记录。(4)变量查询变量查询命令有who,whos,查询变量并作记录。(5)目录与目录树结构目录项显示命令dir查询当前目录项。(6)路径函数与搜索路径path路径函数which文件定位路径函数path列出MATLAB自动搜索路径清单,执行该命令。(7)联机帮助键入helphelp阅读help函数的使用说明。键入help列出help项。查询前面使用过的命令helpwhohelppath阅读上述函数的功能、使用格式等。(8)字符串查询键入helplookfor阅读MATLAB函数lookfor的功能与使用方法,并使用该命令查询相应的关键词字符串。(9)MATLAB语言演示键入intro-3-阅读MATLAB语言介绍,如矩阵输入、数值计算、曲线绘图等,尽量阅读命令平台上的注释内容,以便尽快了解MATLAB语言的应用。键入demoMATLAB语言功能演示⒉练习MATLAB命令的基本操作(1)键入常数矩阵输入命令a=[123]a=[1;2;3]记录结果,比较显示结果有何不同。b=[125]b=[125];记录结果,比较显示结果有何不同。aa’bb’记录结果,比较变量加"'"后的区别。c=a*bc=a*b’记录显示结果与出错原因。a=[123;456;780]a^2a^0.5记录显示结果。(2)作循环命令程序-4-makesum=0;fori=1:1:100makesum=makesum+i;end键入makesum,按回车键,记录计算结果。(3)分别执行下列命令:a=[123;456;780]poly(a)rank(a)det(a)trace(a)inv(a)eig(a)观察、记录显示结果.使用联机帮助help查阅相应m函数的意义和函数格式,并作记录。⒊练习m文件的基本操作打开file菜单,其中有“openM-file”用于打开m文件“runM-file”用于执行m文件可以自由练习上述两项操作。注意:大部分m文件需要相应的数据才可以运行,此时命令平台上给出警告提示。例如:打开:plot.m阅读绘图命令的功能以及变量格式执行penddemo.m观察倒立摆控制系统的演示四、分析整理实验数据,写出实验报告按照上述步骤进行实验,并按实验记录完成实验报告及思考题。-5-五、思考题1.变量查询命令who和whos的区别是什么,各自用在什么场合?2.循环命令中的步长意义。-6-实验二MATLAB数值运算一、实验目的1.学习MATALB的基本矩阵运算。2.学习MATLAB的点运算。3.学习复杂运算。二、实验仪器计算机、MATLAB软件环境。三、实验内容及步骤在下面的实验操作中,认真记录每项操作的作用和目的1.基本矩阵运算(1)创建数值矩阵键入a=[123;456;789];观察a(3,2)a(:,1)键入t=0:10;u=0:0.1:10;观察-7-向量t,u的值键入a(:,3)=[2;3;4];a观察矩阵a的变化。键入b=[11+2i;3+4i3];观察复数矩阵。(2)特殊矩阵分别建立3×3、3×2和与矩阵a同样大小的零矩阵,建立4阶单位阵。观察特殊矩阵。(3)矩阵运算键入a=[010;001;-6-11-6];b=[12;34;56];c=[110;011];作矩阵乘运算(各种组合至少3个),矩阵乘方运算(至少2种),矩阵加减运算a1=a+b*ca2=c*b-a(1:2,1:2)a3=a(1:2,2:3)+c*b矩阵a和b右除(常规除)、左除(4)矩阵特征完成如下矩阵特征运算(至少5个)-8-a’inv(a)diag(a)tril(a)inv(a)poly(a)rank(a)det(a)trace(a)eig(a)2.MATLAB的点运算(1)练习点乘与点除a1=[12;34]a2=0.2*a1;观察[a1a2][a1.*a2a1./a2]由点运算完成标量函数运算并作图。(2)正弦、余弦函数t=0:2*pi/180:2*pi;y1=sin(t);y2=cos(t);y=y1.*y2;plot(t,[y;y1;y2];(3)复数函数w=0.1:0.1:2;g1=(1+0.5*w*i)/(1-0.5*w*i)g1g2=(1+0.5*w*i)./(1-0.5*w*i)g2plot(g2);xlabel(‘realg2(w)’);ylabel(imagg2(w)’)axis(‘square’)3.多项式运算-9-(1)建立多项式向量ap=[1331]b=[-1-2-3];bp=poly(b)(2)多项式乘与根p=conv(ap,bp)roots(p)(3)多项式运算a=[1234];b=[1–1];c=a+[zeros(1,length(a)-length(b)),b]poly2str(c,’x’)polyvalm(a,3)4.代数方程组(选做)(1)恰定方程组AX=BX:n×1,A:n×n,B:n×1方程组的解X=A-1BorX=A\B方程为[12;23][x1x2]=[813]a=[12;23];b=[8;13]方法1:逆矩阵求解。X=inv(a)*b方法2:矩阵左除求解X=a\b(2)超定方程组AX=BX:n×1,A:m×n,B:m×1,mn-10-方程组的解X=(ATA)-1ATBorX=A\B方程为[12;23;34][X1X2]=[123]a=[12;23;34];b=[1;2;3];方法1:正则方程求解。X=inv(a’*a)*a’*b方法2:矩阵左除求解X=a\b(3)欠定方程组AX=BX:n×1,A:m×n,B:m×1,mn方程组的解X=X—BorX=A\B式中,X—维矩阵A的满足式AX—A=A的广义逆矩阵。方程为[123;234][X1X2X3]=[12]方法1:广义逆矩阵求解。aa=[123;234];bb=[1;2]X=pinv(aa)*bb方法2:矩阵左除求解。X=aa\bb由于欠定方程组的解是非唯一的,因此矩阵左除解是由基础解系构成的最小范数解,解元素中字少出现(n—m)个零元素;而广义逆矩阵解向量则不是最小范数解.-11-5.数值分析(选做)(1)基本统计a=randn(1,100)t=1:100;plot(t,a)am=mean(a)as=std(a)amed=median(a)(2)快速傅里叶变换t=1:256;y=sin(2*pi/8*t)+rand(size(t));ty=fft(y);subplot(211),plot(t,y);subplot(212),plot(t,ty);6.函数优化(选做)(1)寻找函数f=x2+3x+2在[—5,5]区间的最小值fmin(’x^2+3*x+2’,-5,5)(2)不等式约束条件下的优化问题min:f(x)=ex1(4x12+2x22+4x1x2+2x2+1)sub:1.5+x1x2-x1-x2=0-x1x2=10x0=[-1,1];给定初值options=[];默认参数[x,options]=constr([‘f=exp(x(1))*(4*x(1)^2+2*x(2)^2+…4*x(1)*x(2)+2*x(2)+1;’,…‘g(1)=1.5+x(1)*x(2)–x(1)–x(2);’,…‘g(2)=-x(1)*x(2)-10;’],x0,options);部分解答-12-x=-9.54741.0474函数值options(8)ans=0.0236约束条件值g=[1.5+x(1)*x(2)–x(2),-x(1)*x(2)-10]g’=1.0e-014*[0.1110-0.1776](3)各种约束条件的优化问题键入tutdemo四、分析整理实验数据,写出实验报告按照上述步骤进行实验,并按实验记录完成实验报告及思考题。五、思考题1.矩阵左除和右除的区别。2.点乘除和常规乘除的区别。-13-实验三MATLAB绘图一、实验目的1.学习MATLAB的各种二维绘图。2.学习MATLAB三维绘图。3.MATLAB的绘图修饰(多种绘图,绘图注释,绘图颜色,色图矩阵)。二、实验仪器计算机、MATLAB软件环境。三、实验内容在下面的实验操作中,认真记录每项操作的作用和目的1.基本二维绘图(1)在0≤X≤π区间内,绘制曲线y1=sin(2πx),y2=cos(2πx),要求(1)应用保持作图、矩阵作图方法分别绘制在同一窗口中;(2)设定颜色为红色和绿色;(3)分别在不同窗口绘图;(4)子图绘图,在一个窗口分别绘制4个子图:y1,y2,y1和y1+y2,y2和y1-y2(位置排列可随意安排)(2)某工厂2004年各月总产值(单位:万元)分别为24、65、82、96、57、21、5、17、15、89、54、22,试绘制折线图以显示出该厂总产值的变化情况(3)用不同标度在同一坐标内绘制曲线y1=e-0.5xsin(2πx)及曲线y2=1.5e-0.1xsin(x)(4)用图形保持功能,在同一坐标内绘制曲线y=2e-0.5xsin(2πx)及其包络线,并加网格线。2.各种二维绘图-14-(1)某次考试优秀、良好、中等、及格、不及格的人数分别为:7,17,23,19,5,试用饼图作成绩统计分析。(2)绘制复数的相量图:3+2i、4.5-i和-1.5+5i。(3)绘制正弦曲线的极坐标图、直方图、离散棒图、阶梯图3.三维绘图(1)分析由函数z=x2-2y2构成的曲面形状及与平面z=a的交线;(2)设计一个直径不断变化的球体(选做)。四、分析整理实验数据,写出实验报告按照上述步骤进行实验,并按实验记录完成实验报告及思考题。五、思考题1.多窗口绘图的方法有几种?2.子图绘图中各参数意义。-15-实验四MATLAB建模与仿真一、实验目的1.了解学习MATLAB常用工具箱的基本内容。2.学习MATLAB工具箱的查询与使用。3.学习应用Simulink建模与仿真方法。二、实验仪器计算机、MATLAB软件环境。三、实验内容及步骤1、MATLAB的目录树目录树结构如下:c:\matlab6p5\binextern\simulink\toolbox\control\……………………symbolic\unitools\2、Tool
本文标题:实验指导书MATLAB程序设计
链接地址:https://www.777doc.com/doc-4095066 .html