您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > MATLAB-语言及其用-实验(答案)
《MATLAB语言及其用》实验指导书目录实验一Matlab使用方法和程序设计........................实验二控制系统的模型及其转换.............................实验三控制系统的时域、频域和根轨迹分析...........实验四动态仿真集成环境-Simulink.........................实验一Matlab使用方法和程序设计一、实验目的1、掌握Matlab软件使用的基本方法;2、熟悉Matlab的数据表示、基本运算和程序控制语句3、熟悉Matlab绘图命令及基本绘图控制4、熟悉Matlab程序设计的基本方法二、实验内容:1、帮助命令使用help命令,查找sqrt(开方)函数的使用方法;在CommandWindowL里输入help,接在在search里输入sqr即可。sqrtSquarerootSyntaxB=sqrt(X)DescriptionB=sqrt(X)returnsthesquarerootofeachelementofthearrayX.FortheelementsofXthatarenegativeorcomplex,sqrt(X)producescomplexresults.TipsSeesqrtmforthematrixsquareroot.Examplessqrt((-2:2)')ans=0+1.4142i0+1.0000i01.00001.4142SeeAlsonthroot|realsqrt|sqrtm2、矩阵运算(1)矩阵的乘法已知A=[12;34];B=[55;78];求A^2*BA=[12;34];B=[55;78];C=A^2*BformatcompactC=105115229251(2)矩阵除法已知A=[123;456;789];B=[100;020;003];A\B,A/BA=[123;456;789];B=[100;020;003];C=A\B,D=A/BC=1.0e+016*0.3152-1.26090.9457-0.63042.5218-1.89130.3152-1.26090.9457D=1.00001.00001.00004.00002.50002.00007.00004.00003.0000(3)矩阵的转置及共轭转置已知A=[5+i,2-i,1;6*i,4,9-i];求A.',A'A=[5+i,2-i,1;6*i,4,9-i];B=A.',C=A'B=5.0000+1.0000i0+6.0000i2.0000-1.0000i4.00001.00009.0000-1.0000iC=5.0000-1.0000i0-6.0000i2.0000+1.0000i4.00001.00009.0000+1.0000i(4)使用冒号表达式选出指定元素已知:A=[123;456;789];求A中第3列前2个元素;A中所有列第2,3行的元素;A=[123;456;789];B1=A([1,2],[3])B2=A([2,3],:)B1=36B2=456789方括号[]用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列A=magic(4)B=A(:,[1,2,3])或A=magic(4)A(:,4)=[]A=16231351110897612414151B=162351110976414153、多项式(1)求多项式42)(3xxxp的根Y=[10-2-4];S=roots(Y)S=2.0000-1.0000+1.0000i-1.0000-1.0000i(2)已知A=[1.2350.9;51.756;3901;1234],求矩阵A的特征多项式;把矩阵A作为未知数代入到多项式中;A=[1.2350.9;51.756;3901;1234]P=poly(A)polyval(P,A)A=1.20003.00005.00000.90005.00001.70005.00006.00003.00009.000001.00001.00002.00003.00004.0000P=1.0000-6.9000-77.2600-86.1300604.5500ans=1.0e+003*0.3801-0.4545-1.99510.4601-1.99510.2093-1.9951-2.8880-0.4545-4.89780.60460.43530.43530.0840-0.4545-1.16174、基本绘图命令(1)绘制余弦曲线y=cos(t),t∈[0,2π](2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π](1)t=[0:0.05:2*pi];y=cos(t);plot(t,y)01234567-1-0.8-0.6-0.4-0.200.20.40.60.81(2)t=[0:0.05:2*pi];y1=cos(t-0.25);y2=sin(t-0.5);plot(t,y1)holdonplot(t,y2)01234567-1-0.8-0.6-0.4-0.200.20.40.60.815、基本绘图控制绘制[0,4π]区间上的x1=10sint曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)坐标轴控制:显示范围、刻度线、比例、网络线(3)标注控制:坐标轴名称、标题、相应文本;t=[0:0.1:4*pi];x1=10*sin(t);plot(t,x1,'r-.+');%画图,显示红色、点划线、标记加号;axis([0,15,-10,10]);%定义显示范围,横轴为[0,15],纵轴为[-10,10];title('曲线x1=10sint');%显示标题;xlabel('T轴');ylabel('X1轴');%显示坐标轴名称;set(gca,'xminortick','on');set(gca,'yminortick','on');%显示刻度线;gridon%显示网络线051015-10-8-6-4-20246810曲线x1=10sintT轴X1轴6、基本程序设计(1)编写命令文件:计算1+2+…+n2000时的最大n值;(2)编写函数文件:分别用for和while循环结构编写程序,求2的0到n次幂的和。(3)@如果想对一个变量x自动赋值。当从键盘输入y或Y时(表示是),x自动赋为1;当从键盘输入n或N时(表示否),x自动赋为0;输入其他字符时终止程序。(1)s=0;i=0;while(s2000)i=i+1;s=s+i;endi=i-1,s=s-is=1954i=62(2)sum1=0;fori=0:15sum1=sum1+2^i;enddisp(['用for循环所求的值为'num2str(sum1)]);sum2=0;i=0;whilei16sum2=sum2+2^i;i=i+1;enddisp(['用while循环所求的值为'num2str(sum2)]);结果:用for循环所求的值为65535用while循环所求的值为65535实验二控制系统的模型及其转换一、实验目的1、掌握建立控制系统模型的函数及方法;2、掌握控制系统模型间的转换方法及相关函数;3、熟悉控制系统模型的连接方法;4、掌握典型系统模型的生成方法。二、实验内容:1.控制系统模型1.1系统的模型为23324(2)(66)()(1)(325)sssGssssss试建立系统的传递函数模型。s=tf('s');G=4*(s+2)*(s^2+6*s+6)/s/(s+1)^3/(s^3+3*s^2+2*s+5)Transferfunction:4s^3+32s^2+72s+48-----------------------------------------------------s^7+6s^6+14s^5+21s^4+24s^3+17s^2+5s1.2已知单输入双输出系统的零极点模型3(12)4(5)(3)()(3)(4)(5)sssGssss建立系统的零极点模型。s=zpk('s');g11=3*(s+12);g21=4*(s+5)*(s+3);G=[g11;g21]/(s+3)/(s+4)/(s+5)Zero/pole/gainfrominputtooutput...3(s+12)#1:-----------------(s+3)(s+4)(s+5)4(s+5)(s+3)#2:-----------------(s+3)(s+4)(s+5)1.3给定系统的状态空间表达式,2.81.40011.40000()()()1.80.31.40.61000.600()0001()xtxtutytxt建立系统的状态空间模型。A=[-2.8,-1.4,0,0;1.4,0,0,0;-1.8,-0.3,-1.4,-0.6;0,0,0.6,0];B=[1;0;1;0];C=[0,0,0,1];D=zeros(1,1);G=ss(A,B,C,D)a=x1x2x3x4x1-2.8-1.400x21.4000x3-1.8-0.3-1.4-0.6x4000.60b=u1x11x20x31x40c=x1x2x3x4y10001d=u1y10Continuous-timemodel.2.控制系统模型的转换2.1将1.1的模型转换为零极点模型s=zpk('s');G=4*(s+2)*(s^2+6*s+6)/s/(s+1)^3/(s^3+3*s^2+2*s+5)Zero/pole/gain:4(s+2)(s+1.268)(s+4.732)--------------------------------------------s(s+1)^3(s+2.904)(s^2+0.09584s+1.722)2.2将1.2的模型转换为状态空间模型s=zpk('s');g1=3*(s+12);g2=4*(s+5)*(s+3);G=[g1;g2]/(s+3)/(s+4)/(s+5);ZTFC=ss(G)结果a=x1x2x3x1-310x20-42x300-5b=u1x10x20x34c=x1x2x3y13.3750.3750y200.51d=u1y10y20Continuous-timemodel.2.3将1.3的模型转换为零极点模型A=[-2.8,-1.4,0,0;1.4,0,0,0;-1.8,-0.3,-1.4,-0.6;0,0,0.6,0];B=[1;0;1;0];C=[0,0,0,1];D=zeros(1,1);G=ss(A,B,C,D);X=zpk(G)Zero/pole/gain:0.6(s^2+s+1.54)------------------------------(s+1.4)^2(s+1.061)(s+0.3394)3.控制系统模型的连接:已知两个系统11111101012113xxuyxu2222201013114xxuyx求按串联、并联、系统2联接在反馈通道时的负反馈系统的状态方程。A1=[0,1;1,-2];B1=[0;1];C1=[1,3];D1=[1];A2=[0,1;-1,-3];B2=[0;1];C2=[1,4];D2=[0];G1=ss(A1,B1,C1,D1);G2=ss(A2,B2,C2,D2);G=G2*G1G3=G1+G2G4=G1/(1+G1*G2)结果:a=x1x2x3x4x10100x2-1-313x30001x4001-2b=u1x10x21x30x41c=x1x2x3x4y11400d=u1y10Continuous-timemodel.a=x1x2x3x4x10100x21-200x30001x400-1-3b=u1x10x21x30x41c=x1x2x3x4
本文标题:MATLAB-语言及其用-实验(答案)
链接地址:https://www.777doc.com/doc-4865124 .html