《MATLAB仿真及其在光学课程中的应用(胡章芳-第三版) 习题及答案.docx》由会员分享,可在线阅读,更多相关《MATLAB仿真及其在光学课程中的应用(胡章芳-第三版) 习题及答案.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、MATLAB仿真及其在光学课程中的应用第一章习题1.1 与其它计算机语言相比较,MATLAB语言突出的特点是什么?参考答案:MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。1.2 MATLAB系统由那些部分组成?参考答案:环境开发、MATLAB数学函数库、MATLAB语言、句柄制图、 MATLAB应用程序界面(API)1.3 存储在工作空区中的数组能编辑吗?如何操作?参考答案:双击工作空间的某个变量名,会打开变量:编辑窗口,直接在编辑窗口进行 修改。1.4 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?参考答案:还可进行命令历史的查找、检查等工作,也可以在该
2、窗口中进行命令复制 与重运行,为用户下一次使用同一个命令提供方便1.5 在MATLAB中有儿种获得帮助的途径?参考答案:第种,也是最有效的就是选中函数名,按F1直接查看该函数的帮助文 档;第二种,通过命令窗口中(help函数名)来获取该函数的帮助文档;第三种,通过工具栏中的帮助菜单来输入函数名,获取该函数的帮助文档; 第四种,通过matlab官网MathWorks查找函数的帮助文档第二章习题习题2.1 定义变量a是3x3的全()数组,访问其第2行第3列的元素,并将值改为1。参考答案:a=zcros(3);a(2,3)a(2,3)=l生成两个向量13 7-4和5 9 6,计算它们的和、点积和叉积
3、。参考答案:a=3 7 -4b=5 9 6s=a+bd=dot(a,b)c=cross(a,b)生成一个4x4的正态分布随机数组,求其对角线元素的和。参考答案:r=randn(4)dia=diag(r);s=sum(dia)生成一个3x5的均匀分布随机数组,将其第2行元素加1,并将数组元素与0.4比大小。 参考答案:r=rand(3,5)r(2,:)=r(2,:)+Ir0.4 %大于0.4则输出为1创建一个10x10的方阵,其对角元素为3,其它元素均为5。参考答案:a=5*ones(10)a=a-diag(diag(a)+diag(3*ones( 10,1)2.2 求矩阵A = 2 5 6;1
4、 3 7;1 一3 -8的行列式的值、转置、逆矩阵、秩、迹、特征值和特征向量。参考答案:A=2 5 6;l 3 7;1 -3 -8det=dct(A)AA=Ainv=inv(A)rank=rank(A) trace=trace(A)IV D|=eig(A)2.3 设有两个多项式f(x) = 3x3 + 4/ + 5工+ 7及g(x) = 2x2-4x4-5,要求对此两个多项式作如下运算:(1)多项式相乘;(2)多项式相加;(3)多项式相除。参考答案:Tl=3 4 5 7;T2=0 2 -4 5;fl=poly2sym(Tl)f2=poly2sym(T2)conv=conv(TI,T2);con
5、v=poly2sym(conv)sum=poly2sym(T 1+T2)T2=2 -4 5;deconv=deconv(T 1,T2);deconv=poly2sym(deconv)2.4 编制程序完成下面的运算:1一+3-7+而一756 参考答案:sum=O;for i=l:4sum=sum+l/(-l)A(i+l)*i);endsum2 3 5 8 13 ? |2.5 编制程序计算序列:,/,前3项之和。1 2 3 5 o 13参考答案:a=2;b=l;sum=a/b;for i=2:30c=a;a=a+b;b=c;sum=sum+a/b;endsumcos X2.6 设),=4。工1+二
6、二,在x = 02开间均匀的插入103个点,画出以x为横坐标, L。+昌y为纵坐标的曲线。参考答案:x=linspacc(0,2*pi, 103);y=sin(x).*( 1 +cos(x)./( l+x.A2);plot(x,y)3o8Isin x2.7 在 MATLAB中实现以下计算:、Y 、lim:、!吧(品严、卜。g(1)近、!吧(品严、卜。g(1)近、. sin(x+ y) + sinx .3lim、 limxey-0yx-0fo fi 区+参考答案:sum=0;for i=l:30sum=sum+iA2;endsum syms n sum( 1 )=symsum( l/(nA2+1
7、),1,Inf);sum(2)=symsum( 1 Z(n+1),1,Inf);sumsyms xlim=limit(sin(x)/x,x,O)syms x ylimil(sin(x+y)+sin(x)/y,y,O)syms x ylim=limit(x*exp(xA(l/2),x,0)syms xlim=limit(x/(3*x+ l)A(x+l),x,Inf)syms x Cinl=int(l /(xA2+1 )+Csyms xint=int(x*log(x+l ),0J)syms x y zint=int(int(int(xA2+yA2+zA2,z,sqrt(x*y),x*y),y,sq
8、rt(x),x),x,0,l)在同一张图上绘制y = cosx和),= + l在区间-2(X02上的图形。使用不同的线型和图注区分曲线,并标注坐标轴。参考答案:x=l-2:0.01:2J;y l=cos(x);y2=exp(x)+l;plot(x,yl;-x,y2;r:);legend(y=cos(x),y=exp(x)+1)xlabel(x)ylabel(y)分别作函数),=3ev的双对数坐标和),轴对数坐标图。参考答案:x=-2:0.01:2;y=3*exp(x);subplot( 121)loglog(x,y)subplot( 122)semilogy(x,y)CCS X设y = sin
9、x x-,,,把九二0,2乃区间分成250点,画出以x为横坐标、X +3x4-1y为纵坐标的曲线。参考答案:x=linspace(0,2*pi,250);y=sin(x).*(x-cos(x)./(x.A2+3*x+1);plot(x,y)设工= zsin3z, y = zcos3z ,要求在-2020区间内画出x、y . z三维曲线。参考答案:z=-20:0.01:20;x=z.*sin(3*z);y=z.*cos(3*z);plot3(x,y,z)2.12 画出函数z = j2f+3),2 的图形,xg-2,2, jg-2,2o参考答案:x=-2:0.01:2;y=x;z=sqrt(2*x
10、.A2+3*y.A2);plot3(x,y,z)2.13 计算。至八(X)之间的奇数的余弦值并存储。参考答案:k=l;fori=0:100if mod(i,2)=0s(k)=cos(i);k=k+l;endendsave(test,s)10002.14 利用for和while循环语句编制程序求:5/h = x2-x ,当 500时停止运 X=1算。参考答案:for循环语句:sum=0;for x=l:1000sum=sum+x.A2-x;if sum500breakend endsumwhile循环语句:sum=O;x=l;while sum500breakendx=x+l;endsum写出下
11、面程序执行的结果。x(D=lfor i=2:7x(i)=3*x(i-l);endx参考答案:1 392781243729找出下面程序的错误。m=0;n=l;while (m=100)x=nA2-2n;m=m+x;n=n+l;m,n参考答案: x=nA2-2n;改成 x=nA2-2*n;n=n+1;后补充end正确程序:m=0;n=l;while (m= 100)x=nA2-2*n;m=m+x;n=n+l;endm,nM命令文件与函数文件的主要区别是什么?分别编写命令文件与函数文件来实现分x + 4x-段函数。y = l 2/+5X + 3-1x 1参考答案:M命令文件没有参数传递功能,但M函数文件有此功能。M函数文件的格式有严格规定,它必须以“function”开头,其格式如下: function输出变量=函数名称(输入变量)命令文件:ifx=-ly=x+4elseif xly=2*xA2+5*x+3elsey=3*xA3+xA2+7End函数文件: function s=y(x) ifx=-ly=x+4elseif xly=2*xA2+5*x+3 elsey=3*xA3+xA2+7 end