《《MATLAB及应用》参考答案.doc》由会员分享,可在线阅读,更多相关《《MATLAB及应用》参考答案.doc(36页珍藏版)》请在金锄头文库上搜索。
1、MATLAB及应用上机作业学院名称: 机械工程学院 专业班级: 测控1201 学生姓名: 学生学号: 201 年 4 月MATLAB及应用上机作业要求及规范一、作业提交方式:word文档打印后提交。二、作业要求:1封面:按要求填写学院、班级、姓名、学号,不要改变封面原有字体及大小。2内容:只需解答过程(结果为图形输出的可加上图形输出结果),不需原题目;为便于批阅,题与题之间应空出一行;每题答案只需直接将调试正确后的M文件内容复制到word中(不要更改字体及大小),如下所示:%作业1_1clcA=1 2 3 4;2 3 5 7;1 3 5 7;3 2 3 9;1 8 9 4;B=1+4*i 4
2、3 6 7 7;2 3 3 5 5 4+2*i;2 6+7*i 5 3 4 2;1 8 9 5 4 3;C=A*B D=C(4:5,4:6)三、大作业评分标准:1提交的打印文档是否符合要求;2作业题的解答过程是否完整和正确;3答辩过程中阐述是否清楚,问题是否回答正确;4作业应独立完成,严禁直接拷贝别人的电子文档,发现雷同者都以无成绩论处。作业11、用MATLAB可以识别的格式输入下面两个矩阵,再求出它们的乘积矩阵,并将矩阵的右下角子矩阵赋给矩阵。赋值完成后,调用相应的命令查看MATLAB工作空间的占有情况。解:A=1 2 3 4;2 3 5 7;1 3 5 7 ;3 2 3 9 ;1 8 9
3、4;B=1+4i 4 3 6 7 7;2 3 3 5 5 4+2i;2 6+7i 5 3 4 2;1 8 9 5 4 3;B=1+4i 4 3 6 7 7;2 3 3 5 5 4+2i;2 6+7i 5 3 4 2;1 8 9 5 4 3;C=A*BD=C(4:5,4:6);2、设矩阵,求,并求矩阵的特征值和特征向量。解: A=16 2 3 13;5 11 10 8;9 7 6 12;4 14 15 2; det(A) inv(A)A.32*A+inv(A)3*A-AV,D=eig(A)abs (A)3、解下列矩阵方程: 解:A=0 1 0;1 0 0;0 0 1;B=1 0 0;0 0 1;
4、0 1 0;C=1 -4 3; 2 0 -1;1 -2 0;X=inv(A)*C*inv(B)4、求多项式当时的值,并求的导数。解:a1=153513a2=01453a3=00313p1=conv(a1,a2)p1=conv(p1,a3)polyval(p1,3)polyder(p1) 5、求多项式的根和导数。解: p1=1-5-14-10-3roots(p1)polyder(p1) 6、对于有理多项式 (1)计算该多项式相除的结果;(2)将该多项式展开为部分分式的形式;(3)计算。解(1)A=1 0 4 5 6 7;B=A.*10;C=1 1;D=1 2;E=1 3;F=conv(conv(
5、C,D),E);G=deconv(B,F);(2)r,p,k=residue(B,F)(3)p,q=ployder(B,F)7、在某次传感器输入输出特性实验中测得输入输出的一组数据如下表所示:(输入)12345(输出)1。31。82。22。93。5已知输入和输出可以近似成线性关系,即,求系数和,并求当输入时输出的值。解x=1 2 3 4 5;y=1.3 1.8 2.2 2.9 3.5;p=polyfit(x,y,1)a=polyval(p,8)8、根据人口理论的马尔萨斯模型可知,人口总数可以采用指数函数对人口数据进行拟合。据统计,六十年代世界人口数据如下(单位:亿)t1960196119621
6、96319641965196619671968y3。39183。42133。45033。46983。47633。49203。51333。53223。5505试求马尔萨斯模型中的a,b值,并画出拟合曲线图,同时预测一下2010年的人口数值。解year=1960:1:1968;n=3.3918 3.4213 3.4503 3.4698 3.4763 3.4920 3.5133 3.5322 3.5505;y=log(n);p=polyfit(year,y,1);plot(year,y,g*);a=p(2)b=p(1)y2010=exp(polyval(p,2010)9、某实验测得强度随时间变化的一
7、组数据:00。511。522。5300。47940。84150。99150。90930。59850。14111)利用二次曲线拟合求出秒处强度指标。2)利用样条曲线插值求出秒处强度指标。解:t=00.511.522.53y=00.47940.84150.99150.90930.59850.1411p1=polyfit(t,y,2)y1=polyval(p1,2.25)y2=interp1(t,y,2.25,spline) 10、 试用MATLAB求解下面的问题:(1) 求极限;(2) 不定积分;(3) 对(2)的不定积分结果进行微分,看是否能还原原函数;(4) 对函数做20项的Taylor幂级数
8、展开;(5)求级数的和。解:(1)f=(sin(x)2-(sin(a)2)/(x-a);limit(f,x,a)(2)f=x2*e(2*x)+sinx*ex;int(f)(3) x=sym(x);f=1/3*x3+2*x+log(x2+1)+3*atan(x);diff(f) (4) f=x2*sin(cos(x2)*cos(x);taylor(f,x,21)(5) S=symsum(n2,n,1,inf)S=symsum(n2,n,1,100)11、求解下列方程组的解(1) (2) 解(1)x y=solve(sin(x+y)-exp(x)*y=0,x2-cos(y)=0,x,y)(2)x
9、y=solve(x2+x*y+y=0,x2-4*x+3=0,x,y)12、求微分方程(组)的解(1) , , (2), (3) 解:(1) y=dsolve(D3y+Dy-x,y(1)=8,Dy(1)=7,Dy(2)=4,x)(2) x=dsolve(Dx)2+x2-1,x(0)=0)(3) x,y=dsolve(Dy-2*x+y,Dx-4*x+2*y,t)作业21、一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过多少米?第10次反弹有多高?解:y=0.5*x;sum=0;for i=2:10,sum=sum+x+y;x=0.5*x;y=0.5*x
10、;endsumy2、用MATLAB的M函数文件定义如下分段函数: 解:function y=f(x)if x10y=5;elseif x=-10&x=10y=1/2*x;elsey=-5;end3、分别用for和while循环编写程序,求出并考虑一种避免循环的简洁方法来进行求和,并比较各种算法的运行时间。解:x=2;K=0;for i=1:63,K=K+xi;endK4、应用MATLAB语言及二分法编写求解一元方程在区间3,6的实数解的算法,要求绝对误差不超过0.001。解:A=1 -14 59 -70;a=3;b=6;c=0.001;while c0;a=x1;else f1*fb0;b=x
11、1;end endendx=x15、二阶系统的单位阶跃响应为,在同一平面绘制分别为0,0。3,0。5,0。707的单位阶跃响应曲线。要求:(1) 四条曲线的颜色分别为蓝、绿、红、黄,线型分别为“”、“”、“oooooo”、“+”;(2) 添加横坐标轴和纵坐标轴名分别为“时间t”和“响应y”,并在平面图上添加标题“二阶系统曲线”和网格;(3) 在右上角添加图例(即用对应的字符串区分图形上的线),并分别在对应的响应曲线的第一个峰值处标示“zeta0”、“zeta0。3”、“zeta0。5”、“zeta0。707”。解:t=0:0.1:10;kos=0;y=1-1/sqrt(1-kos2)*exp(
12、-kos*t).*sin(sqrt(1-kos2)*t+2*cos(kos);plot(t,y,b-)hold on;kos=0.3;y=1-1/sqrt(1-kos2)*exp(-kos*t).*sin(sqrt(1-kos2)*t+2*cos(kos);plot(t,y,g.)hold on;kos=0.5;y=1-1/sqrt(1-kos2)*exp(-kos*t).*sin(sqrt(1-kos2)*t+2*cos(kos);plot(t,y,ro)hold on;kos=0.707;y=1-1/sqrt(1-kos2)*exp(-kos*t).*sin(sqrt(1-kos2)*t+
13、2*cos(kos);plot(t,y,y+)hold on;xlabel(时间t); ylabel(响应y);grid on;title(二阶系统曲线); legend(kos=0,kos=0.3,kos=0.5,kos=0.707) gtext(kos=0)gtext(kos=0.3)gtext(kos=0.5)gtext(kos=0.707) 6、绘制如下图所示的图形,把图形窗口分割为2行2列,窗口左上角画一正弦曲线;窗口右上角画3条单边指数曲线;窗口左下角画一矩形脉冲信号,脉冲宽度为1,高为2,开始时间为1;窗口右下角画一单位圆。解:t=0:0.01:2;subplot(2,2,1);plot(t,sin(2*pi*t);title(plot(x,2*PI*t);grid on;subplot(2,2,2);plot(t,exp(-t);hol