您好,欢迎访问三七文档
第1页共45页MATLAB实验报告班级:学号:姓名:指导教师:成绩:第2页共45页实验一MATLAB环境及命令一、目的和要求1、熟悉掌握matlab的启动和退出。2、熟悉matlab的命令窗口和其他窗口。3、熟悉常用菜单和工具栏。4、使用帮助查找帮助信息。二、内容和步骤1、使用命令窗口在命令窗口中输入以下命令并查看运行结果。(1)单独显示命令窗口。第3页共45页(2)使用标点符号修改命令。①;用于不显示计算结果。②%用做注释。③…用于把后面的行与该行连接。(3)数值显示格式的计算。①formatshorte:5位科学计数法表示。第4页共45页②formatshortg:从formatshort和formatshorte中自动选择最佳的计数方法。③formatlong:15位数字表示。④formatrat:近似有理数表示。(4)使用“Preferences”修改设置。①单击对话框左栏的“commandwindow”项,在右边的“numericformat”栏设置数据的显示格式。②修改颜色。对话框左栏的“colors”可以设置不同格式的文字的颜色。第5页共45页(5)通过常用的操作键编辑命令。主要有“↑”、“↓”“Esc”2、查看历史命令窗口3、查看工作空间窗口4、变量编辑器窗口第6页共45页5、修改搜索路径第7页共45页6、使用当前目录在命令窗口中输入:7、学会使用帮助第8页共45页第9页共45页8、自我练习(1)在命令窗口输入:实验二MATLAB的数值计算一、实验目的和要求(1)熟悉掌握matlab变量的使用。(2)熟悉掌握matlab的矩阵和数组的运算方法。(3)熟悉matlab的多项式运用。(4)掌握数据分析的方法。二、内容和步骤1、创建矩阵(1)直接输入(2)用from:step:to方式:(3)用linspace函数:(4)使用特殊矩阵函数,并修改元素:第10页共45页(5)获取子矩阵练习:a、使用全下标方式获取a矩阵中的第二列子矩阵块。b、使用logspace函数创建0~4π的行向量,有20个元素,查看元素分布情况。第11页共45页2、矩阵的运算(1)利用矩阵除法解线性方程组。(2)利用矩阵的基本运算求解矩阵方程。已知矩阵A和B满足关系式A第12页共45页(3)计算矩阵的特征值和特征向量。验证特征值和特征向量与该矩阵的关系xv=dv。(4)利用科学记数进行矩阵运算。第13页共45页3、多维数组4逻辑运算(1)产生100以内的10个数的行向量,并排序。第14页共45页(2)查找49所在的位置。5多项式的运算(1)多项式的运算,程序如下:计算x在[0,20]内的多项式的值。第15页共45页计算多项式的根。(2)多项式的拟合与插值。对多项式y和y1分别进行插值,计算在5.5处的值。6数据统计(1)产生一个魔方阵。验证多项式的积,得出P1为G除以P2、P3的值。(2)计算各行和列的值。第16页共45页7、元胞数组和结构数组的使用(1)创建结构数组用于表示3个学生的成绩。(2)修改学社2的第2个成绩为73.(5)将平均成绩放在元胞数组中,使用3种方法创建元胞数组。方法一:方法三:(3)显示scores域并计算平均成绩。方法二:第17页共45页实验三MATLAB的符号计算目的和要求(1)熟练掌握MATLAB符号表达式的创建和代数运算。(2)掌握符号表达式的化简和替换。(3)熟练掌握符号微积分和积分变换。(4)熟悉符号方程的求解。1、创建符号表达式和符号表达式的操作对符号表达式f=sinx,teyg2(1)使用sym命令创建符号表达式。(2)使用sym命令创建符号表达式f、g。f=sym('sin(x)')g=sym('y/exp(-2*t)')f=sin(x)g=y/exp(-2*t)symsxytf=sym(sin(x))g=sym(y/exp(-2*t))f=sin(x)g=y/exp(-2*t)findsym(g)findsym(g,1)findsym(g,2)ans=t,yans=yans=y,tx=0:10;y=subs(f,x)y=00.84150.90930.1411-0.7568-0.9589-0.27940.65700.98940.4121-0.5440f1=subs(f,'5')y1=double(f1)y2=eval(f1)y3=numeric(f1)f1=sin((5))y1=-0.9589y2=-0.9589Digits=32ans=-.95892427466313846889315440615599ans=-.9589242747第18页共45页f=sym('sin(x)')finverse(f)finverse(g)finverse(g,'t')compose(f,g)compose(f,g,'z')diff(f)diff(g)diff(g,'t')symstxlimit((sin(x+t)-sin(x))/t,t,0)int(f)int(g)int(g,'t')int(g,'t',0,10)f=sin(x)ans=asin(x)ans=y*exp(-2*t)ans=-1/2*log(y/t)ans=sin(y/exp(-2*t))ans=sin(z/exp(-2*t))ans=cos(x)ans=1/exp(-2*t)ans=2*y/exp(-2*t)ans=cos(x)ans=-cos(x)ans=1/2*y^2/exp(-2*t)ans=1/2*y/exp(-2*t)ans=1/2*y*exp(20)-1/2*y第19页共45页(1)符号表达式的代数运算f=sym('x^2+3*x+2')g=sym('x^3-1')f+gf~=gf=x^2+3*x+2g=x^3-1ans=x^2+3*x+1+x^3ans=1(2)符号表达式化简pretty(f)2x+3x+2f1=2+(3+x)*xf2=(x+2)*(x+1)simplify:x^3-1radsimp:x^3-1combine(trig):x^3-1factor:(x-1)*(x^2+x+1)expand:x^3-1combine:x^3-1convert(exp):x^3-1convert(sincos):x^3-1convert(tan):x^3-1collect(x):x^3-1mwcos2sin:x^3-1第20页共45页ans=x^3-1(3)符号表达式与多项式的转换。f1=sym()h=sym2poly(f)f=poly2sym(h)h=132f=x^2+3*x+2符号矩阵的操作A=sym('[xx^2;2*xcos(2*t)]')A.'det(A)diff(A)A=[x,x^2][2*x,cos(2*t)]ans=[x,2*x][x^2,cos(2*t)]ans=x*cos(2*t)-2*x^3ans=[1,2*x][2,0]实验四MATLAB的计算可视化和GUI设计目的和要求(1)熟悉掌握matlab二维曲线的绘制和修饰。(2)掌握三维曲线的绘制。(3)熟悉掌握各种特殊图形的绘制。(4)掌握句柄图形的概念和GUI设计。内容和步骤第21页共45页1、绘制二位曲线2、绘制多条二阶系统时域曲线和三维图形绘制多条二阶系统时域曲线和三维图形的方法如下。(1)在同一平面绘制多条二阶系统时域曲线。a:绘制一条阻尼系数zeta=0的二阶系统曲线。第22页共45页b:使用holdon命令在同一窗口叠绘4条曲线。C:添加文字标注d:使用交互式图形命令修改得出图形:第23页共45页(2)使用句柄图形a:获得图形对象句柄b:设置图形对象属性第24页共45页修改得出图形:(3)使用图形窗口功能。修改对象属性。选择菜单“View”→“propertyEditor”命令可以打开图形属性窗口,单机图形中的对象就可以打开当前对象属性。第25页共45页(4)绘制三维图形a.将x、y和zeta构成三维曲线第26页共45页b.色图显示和控制3特殊图形(1)绘制条形图(2)绘制实心图第27页共45页(3)绘制阶梯图(4)绘制火柴杆图特殊图形如下:第28页共45页实验5MATLAB程序设计目的和要求1、熟练掌握MATIAB的程序流程控制结构。2、熟练掌握M文件的结构和函数调用。3、掌握内联函数和函数句栖的使用。4、了解程序性能窗口内容和步骤MATLAB的语法规则简洁,编程效率高.作为1个完整的程序语言,MATLAB也有外部各种程序流程控制、文件格式和函数凋用的规则,通过对函数的调用就能够组成庞大的程序,完成复杂功能。1.使用程序流程控制(1)按M函数文件格式创建文件开头(2)用while循环实现程序功能第29页共45页命令行显示结果:(3)使用fur循环实现(4)当某个元素大于50时,退出循环结构程序修改如下第30页共45页5)将该.m文件生成P码文件将shiyan0501m删除,重新运行该文件,结果如下:2使用函数调用(1)在MATLAB界两个选择菜单File”一”New”一”Function”命令,创建一个新的函数文件,修改输入输出参数和函数名:(2)子函数cal(3)主函数Shiyan0502求主函数计算arcsinx输入参数为x,输出参数为aresinx计算结果。第31页共45页(4)程序性能剖析。选择菜单“View”-“Proflier”命令:或使用在命令窗口输入“pofileviewe”命令都可以打开程序性能剖析窗口(5)程序的调试。当有多个函数调用时,由于函数变量的工作空间是独立的,被调用的函数执行结束后变量就消失,因此调试时要使用MATLAB调试器查看运行过程中的变量值.(6)使用函数句柄。在命令窗口使用函数句柄调用函数。(7)使用全局变量第32页共45页子函数cal没有输入变量,而用全局变量n传递。3、利用泛函命令实现数值分析(1)使用函数调用的方法,1创建函数shiyan0503实现上述表达式关系2查看输出波形3利用函数求过零点第33页共45页4利用函数句柄求过零点5利用函数句柄求极小值第34页共45页(2)使用内联函数f2绘制曲线图第35页共45页3求过零点4求极小值(3)使用字符串1创建字符串第36页共45页2绘制曲线图3求零点第37页共45页实验6线性控制系统分析与设计目的和要求1熟练掌控线性系统的各种模型描述和转换。2熟练掌握结构框图传递函数的计算。(3)熟练掣:握时域、频域和根轨迹分析,4超前和滞后校正,内容和步骤MATLAB的控制系统工具箱提供了对线性系统建模、分析和设·MATLAB是控制领域最主要的计算机辅助分析和设计语言,掌握了控握了一个方便的分析和设计控制系统的工具。1、由结构框图获得系统数学模型(1)计算系统总的传递函数模型。使用append命令实现各模型块未连接的系统矩阵。(2)建立Q矩阵指定连接关系G1=tf(1,[20]);G2=tf(1,[110]);G3=tf(1,[11]);G4=tf(5,[34]);G5=tf(-11);G6=tf(-11);G7=tf(-11);GG=append(Cl,G2,G3,G4,G5,G6,G7);Q=[165;217;320;430;540;620;730;]INPUTS=1;OUTPUTS=4;G=connect(Sys,Q,INPUTS,OUTPUTS)第38页共45页num1=[0.50];den=[1-1.50.5];G1=tf(num1,den,-1)Transferfunction:0.5z-----------------z^2-1.5z+0.5Samplingtime:unspecifiednum2=[00.5];den=[1-1.50.5];G2=filt(num2,den)Transferfunction:0.5z^-1-----------------------1-1.5z^-1+0.5z^-2Samplingtime:unspecified实验7Simulink仿真环境目的和要求(1)熟悉Simulink的
本文标题:MATAB实验
链接地址:https://www.777doc.com/doc-4506542 .html