您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > MATLAB实验指导书加程序
MATLAB语言实验指导书华东交通大学电气学院张永贤2006年2月1实验一MATLAB工作环境熟悉及简单命令的执行一、实验目的:熟悉MATLAB的工作环境,学会使用MATLAB进行一些简单的运算。二、实验内容:MATLAB的启动和退出,熟悉MATLAB的桌面(Desktop),包括菜单(Menu)、工具条(Toolbar)、命令窗口(CommandWindow)、历史命令窗口、工作空间(Workspace)等;完成一些基本的矩阵操作;学习使用在线帮助系统。三、实验步骤:1、启动MATLAB,熟悉MATLAB的桌面。2、在命令窗口执行命令完成以下运算,观察workspace的变化,记录运算结果。(1)(365-522-70)3(2)area=pi*2.5^2(3)已知x=3,y=4,在MATLAB中求z:232yxyxz(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)执行命令helpabs查看函数abs的用法及用途,计算abs(3+4i)(6)执行命令x=0:0.1:6*pi;y=5*sin(x);plot(x,y)(6)运行MATLAB的演示程序,demo,以便对MATLAB有一个总体了解。四、思考题1、以下变量名是否合法?为什么?(1)x2(2)3col(3)_row(4)for2、求以下变量的值,并在MATLAB中验证。(1)a=1:2:5;(2)b=[a'a'a'];(3)c=a+b(2,:)2实验二MATLAB语言矩阵运算一、实验目的:掌握基本的矩阵运算及常用的函数。二、实验内容:654321a531142b201c063258741d1、下列运算是否合法,为什么?如合法,结果是多少?(1)result1=a'(2)result2=a*b(3)result3=a+b(4)result4=b*d(5)result5=[b;c']*d(6)result6=a.*b(7)result7=a./b(8)result8=a.*c(9)result9=a.\b(10)result10=a.^2(11)result11=a^2(12)result11=2.^a2、用MATLAB求下面的的方程组。(1)017413231511222315921274321xxxx(2)56533332821wzyxwyxwzyxzyx3、已知1323151122231592127A(1)求矩阵A的秩(rank)(2)求矩阵A的行列式(determinant)(3)求矩阵A的逆(inverse)(4)求矩阵A的特征值及特征向量(eigenvalueandeigenvector)4、关系运算与逻辑运算已知a=20,b=-2,c=0,d=1(1)r1=ab(2)r2=ab&cd3(3)r3=a==b*(-10)(4)r4=~b|c三、思考题109910101022222nny,求y=?(用formatlong查看y的值)实验三程序的编辑及调试一、实验目的:掌握MATLAB程序编辑、运行及调试方法。二、实验内容:1、启动MATLAB后,点击File|New|M-File,启动MATLAB的程序编辑及调试器(Editor/Debugger),编辑以下程序,点击File|Save保存程序,注意文件名最好用英文字符。点击Debug|Run运行程序,在命令窗口查看运行结果,程序如有错误则改正。注:数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。重复此过程,最终得到的结果为1。如:21310516842163105168421运行下面的程序,按程序提示输入n=1,2,3,5,7等数来验证这一结论。%classic3n+1problemfromnumbertheory.while1n=input('Entern,negativequits:');ifn=0breakenda=n;whilen1ifrem(n,2)==0n=n/2;elsen=3*n+1;enda=[a,n];endaend2、编程求满足mii1100002的最小m值。三、思考题用对分法求解方程xexsin2在[0,1]内的解,并验证,在程序中统计出对分次数。提示:先将原方程转化成0sin2)(xexfx的形式。对分法的基本思想是:一个一元方程f(x)=0,若f(x1)*f(x2)0,则在[x1,x2]区间内有实数解。取该区间的中点xm=(x1+x2)/2,判定f(x1)和f(x2)二者中哪一个与f(xm)异号,若4f(x1)*f(xm)0,则解存在的区间缩小为[x1,xm],否则解存在的区间缩小为[xm,x2]。重复这样的步骤,直到区间的长度小于一个可以接受的小数(比如1e-10),则认为中点即是原方程的解。实验四函数的编写及调试一、实验目的:掌握MATLAB函数的编写及调试方法。二、实验内容:1、编写一个函数,计算下面函数的值,给出标量x的值,调用该函数后,返回y的值。function[y]=myfun1(x)3,630,0,sin)(xxxxxxxy选择一些数据测试你编写的函数。2、编写一个函数求向量x中元素的平均值、最大值、最小值、均方根值。function[m_x,max_x,min_x,rms_x]=myfun2(x)方均根值(RootMeanSquare)的计算公式为:NiixNrms121用下面数据测试你写的函数:(1)x=sin(0:0.01:6*pi)(2)x=rand(1,200),得到的x为200个(0,1)之间均匀分布的随机数。3、编写一个函数,给出一个向量],,[21nxxxx,生成如下范德蒙矩阵。function[v]=myvander(x)112112222121111nnnnnnxxxxxxxxx例如:v=myvander([2345])得v=1256427825169454321111生成一些数据测试你写的函数。三、思考题5编写程序,用如下迭代公式求a,a的值分别为:3,17,113。迭代的终止条件为5n1n10xx,迭代初值0.1x0,迭代次数不超过100次。分别对迭代结果和准确值进行比较,并统计迭代次数。1n1n1n222x2a2xxaxx2ax实验五MATLAB的绘图1、在同一坐标系下绘制下面三个函数在t[0,4]的图象。)sin(41.0321teytytyt2、编写程序,选择合适的步距,绘制下面函数在区间[-6,6]中的图象。3,630,0,sin)(xxxxxxxy3、用compass函数画下面相量图ua=1;ub=cos(-2*pi/3)+sin(-2*pi/3)*i;uc=cos(2*pi/3)+sin(2*pi/3)*i;compass([ua,ub,uc,ua-ub,ub-uc,uc-ua])0.511.5230210602409027012030015033018004、三维空间曲线绘制z=0:0.1:4*pi;x=cos(z);y=sin(z);6plot3(x,y,z)5、用mesh或surf函数,绘制下面方程所表示的三维空间曲面,x和y的取值范围设为[-3,3]。101022yxz三、思考题在同一坐标系下,用不同颜色和线型绘制以下两个函数在t[-2,2]范围内的图象。t5.012yt2.02e2y实验六MATLAB数值运算一、实验目的:掌握MATLAB常用的数值运算函数。二、实验内容:1、求代数方程012927432345xxxxx的5个根,并将其用星号(*)标记在复平面图上。(用roots和plot函数)。2、求代数方程015x的5个根,并将其用星号(*)标记在复平面图上。(用roots和plot函数)。3、求下面函数在[0.5,4]区间内的过零点。(用fzero函)xxxxxxxf1)cos(5)sin(2)(234、已知R=50欧姆,U=4V,二极管D正向电流与电压的关系为:1KTqUsddeII其中:Ud为二极管正向电压Is为反向饱合电流,取10-12AK为玻尔茨曼常数,1.38*10-23T为绝对温度,取300开尔文(27摄氏度)q为电子电荷1.6*10-19C7求此电路中的电流Id和二极管正向电压Ud(要求用fsolve函数求解)5、实验数据处理:已知某压力传感器的测试数据如下表p0.01.12.12.84.25.06.16.98.19.09.9u1011131417182224293439p为压力值,u为电压值,试用多项式dcpbpappu23)(来拟合其特性函数,求出a,b,c,d,并把拟合曲线和各个测试数据点画在同一幅图上。实验七MATLAB应用1、以原点为奇对称中心的方波y(wt),可以用相应频率的基波及其奇次谐波合成。,3,2,1)12sin()12(15sin513sin31sin4)(nwtnnwtwtwtwty取的阶数越多,越接近方波,但总消除不了边缘上的尖峰,这称为吉布斯效应。设方波频率为50Hz,时间t取0~0.04秒(f=50Hz,w=2*pi*f,h=1e-5,tf=40e-3,t=0:h:tf),编写程序,画出如下用1次谐波、1,3次谐波、1,3,5,7,9次谐波,1,3,5,…,19次谐波合成的近似方波。(产生方波的函数为:square)2、用Simulink求解下图所示电路0~100微秒内的响应。已知R=6*10-4欧,C=1700微法,L=6*10-9享,uc(0)=15kV。Scope1Scope1sIntegrator11sIntegratorRGain21/LGain1-1/CGainULiiiUcUc模块参数设置:Integrator1的Initialcondition:15kV在命令窗口为R,L,C赋值。仿真参数设置如下:Starttime:0Stoptime:100e-68SolverType:Variable-stepSolver:ode45Maxstepsize:1e-7Minstepsize:autoInitialstepsize:autoRelativetolerance:1e-3Absolutetolerance:1e-6MATLAB实验程序实验1第1题.(1)x=2*sin(85*pi/180)/(1+exp(2))x=0.2375(2).x=[21+2i;-0.455];y=0.5*log(x+sqrt(1+x^(2)))y=0.7114-0.0253i0.8968+0.3658i0.2139+0.9343i1.1541-0.0044i或x=[21+2i;-0.455];d=0.5*log(x+sqrt(1+x*x))d=0.7114-0.0253i0.8968+0.3658i0.2139+0.9343i1.1541-0.0044i或x=[21+2*i;-0.455];y=0.5*log(x+sqrt(1+x
本文标题:MATLAB实验指导书加程序
链接地址:https://www.777doc.com/doc-4281129 .html