您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > MATLAB基础教程薛山第二版课后习题答案讲解
湖北汽车工业学院《MATLAB及应用》实验指导书I《MATLAB及应用》实验指导书《MATLAB及应用》实验指导书班级:T1243-7姓名:柏元强学号:20120430724总评成绩:汽车工程学院电测与汽车数字应用中心湖北汽车工业学院《MATLAB及应用》实验指导书II目录实验04051001MATLAB语言基础.............................................1实验04051002MATLAB科学计算及绘图......................................18实验04051003MATLAB综合实例编程........................................31湖北汽车工业学院《MATLAB及应用》实验指导书1实验04051001MATLAB语言基础1实验目的1)熟悉MATLAB的运行环境2)掌握MATLAB的矩阵和数组的运算3)掌握MATLAB符号表达式的创建4)熟悉符号方程的求解2实验内容第二章1.创建double的变量,并进行计算。(1)a=87,b=190,计算a+b、a-b、a*b。clear,clca=double(87);b=double(190);a+b,a-b,a*b(2)创建uint8类型的变量,数值与(1)中相同,进行相同的计算。clear,clca=uint8(87);b=uint8(190);a+b,a-b,a*b2.计算:操作成绩报告成绩湖北汽车工业学院《MATLAB及应用》实验指导书2(1)sin60(2)e3(3)3cos4clear,clca=sind(60)b=exp(3)c=cos(3*pi/4)3.设2u,3v,计算:(1)4loguvv(2)22euvvu(3)3uvuvclear,clcu=2;v=3;a=(4*u*v)/log(v)b=((exp(u)+v)^2)/(v^2-u)c=(sqrt(u-3*v))/(u*v)4.计算如下表达式:(1)3542ii(2)sin28iclear,clc(3-5*i)*(4+2*i)sin(2-8*i)湖北汽车工业学院《MATLAB及应用》实验指导书35.判断下面语句的运算结果。(1)420(2)4=20(3)4==20(4)4~=20(5)'b''B'clear,clc420,4=20,4==20,4~=20,'b''B'6.设39a,58b,3c,7d,判断下面表达式的值。(1)ab(2)ac(3)&&abbc(4)ad(5)|abc(6)~~dclear,clca=39;b=58;c=3;d=7;ab,ac,ab&&bc,a==d,a|bc,~~d7.编写脚本,计算上面第2题中的表达式。clear,clcdisp('sin(60)=');disp(sind(60))disp('exp(3)=');disp(exp(3))disp('cos(3*pi/4)=');disp(cos(3*pi/4))湖北汽车工业学院《MATLAB及应用》实验指导书48.编写脚本,输出上面第6题中的表达式的值。clear,clca=39;b=58;c=3;d=7;disp('ab');disp(ab)disp('ac');disp(ac)disp('ab&&bc');,disp(ab&&bc)disp('a==d');disp(a==d)disp('a|bc');disp(a|bc)disp('~~d');disp(~~d)第三章1.在命令提示符下输入以下两条命令:x=[93063]y=mod((sqrt(length(((x+5).*[12345]))*5)),3)求y值为多少?2.在MATLAB中运行以下命令:a=[3,7,2,7,9,3,4,1,6];b=[7];a(4)=[];vec1=a==b;vec2=mod(a,2)==0;c=sum(vec1);vec3=vec1+vec2;d=vec3.*a;vec4=find(a5);e=a(vec4)+5;vec5=find(a5);f=vec5.^2;湖北汽车工业学院《MATLAB及应用》实验指导书5求c、d、e、f的值。clear,clca=[3,7,2,7,9,3,4,1,6];b=[7];a(4)=[];vec1=a==b;vec2=mod(a,2)==0;c=sum(vec1);vec3=vec1+vec2;d=vec3.*a;vec4=find(a5);e=a(vec4)+5;vec5=find(a5);f=vec5.^2;disp('c=');disp(c)disp('d=');disp(d)disp('e=');disp(e)disp('f=');disp(f)3.向量操作时MATLAB的主要部分,使用给出的向量来做下面的练习。注意:不要直接给出下列问题中任何一个的最终结果,不要在问题的任何部分使用迭代。vec=[4528472642572457432573362533430-65-343](1)创建一个新的向量vecR,使其为vec的转置。(2)创建一个新的向量vecB,使其为vec中的前半部分与后半部分对换的结果,这样vecB包含的元素为vec的后半部分紧接着vec的前半部分。(3)创建一个新的向量vecS,使其包含vec中所有小于45的元素,且元素按照vec中的顺序排列。(4)创建一个新的向量vec3R,使其从vec中从最后一个元素开始,并且间隔三个元素取一个元素,湖北汽车工业学院《MATLAB及应用》实验指导书6直到第一个元素为止。(5)创建一个新的向量vecN,使其包含vec中所有等于2或4的元素的索引值。(6)创建一个新的向量vecG,使其包含vec中去掉索引值为奇数且取值为2或4的元素后的所有元素。clear,clcvec=[4528472642572457432573362533430-65-343];vecR=vec';disp('vecR=[]');disp(vecR)a=length(vec);vecB=[vec(a/2+1:a)vec(1:a/2)];disp('vecB=[]');disp(vecB)C=find(vec45);vecS=vec(C);disp('vecS=[]');disp(vecS)vec3R=vec(end:-4:1);disp('vec3R=[]');disp(vec3R)vecN=find(vec==2|vec==4);disp('vecN=[]');disp(vecN)d=vec(2:2:end);vecG=d(find(d~=2&d~=4));disp('vecG=[]');disp(vecG)4.给定以下3个向量:nums1=[713532121991024];nums2=[5414569204548726132109411];nums3=[441125418477998852315];编写脚本文件创建相应的3个向量:newNums1、newNums2和newNums3,分别包含以上3个向量中从第一元素开始且间隔取值的元素。湖北汽车工业学院《MATLAB及应用》实验指导书7例如:numsEX=[635678944567437357543]newsNumsEx=[656844573574]注意:不能直接将相关数值输入答案中,如果再命令提示符下输入:newNumEx=[656844573574]将不能得分。提示:对于3个向量而言,其解决方法应当是一样的,只是变换向量名称而已。clear,clcnums1=[713532121991024];nums2=[5414569204548726132109411];nums3=[441125418477998852315];newNums1=nums1(1:2:end)newNums2=nums2(1:2:end)newNums3=nums3(1:2:end)思考题1.MATLAB中,数组与矩阵在表示与应用上有哪些区别。一维数组相当于向量,二维数组相当于矩阵.所以矩阵是数组的子集数组运算是指数组对应元素之间的运算,也称点运算.矩阵的乘法、乘方和除法有特殊的数学含义,并不是数组对应元素的运算,所以数组乘法、乘方和除法的运算符前特别加了一个点。矩阵是一个二维数组,所以矩阵的加、减、数乘等运算与数组运算是一致的。但有两点要注意:(1)对于乘法、乘方和除法等三种运算,矩阵运算与数组运算的运算符及含义都不同:矩阵运算按线性变换定义,使用通常符号;数组运算按对应元素运算定义,使用点运算符;(2)数与矩阵加减、矩阵除法在数学是没有意义的,在MATLAB中为简便起见,定义了这两类运算湖北汽车工业学院《MATLAB及应用》实验指导书8实验04051002MATLAB科学计算及绘图1实验目的1)熟悉MATLAB所提供的常用数值计算的函数(方程(组)的求解、插值、拟合);2)掌握MATLAB二维图形绘制命令及其图形控制(plot、loglog、contour、polar等);3)熟悉MATLAB三维图形绘制命令及其图形控制(mesh、surf等)。2实验内容第四章1.有如下数据:x11.11.21.31.4y1.000001.233681.552711.993722.61170利用本章介绍的几种插值方法对其进行插值,得到每隔0.05的结果。clear,clcx=[11.11.21.31.4];y=[1.000001.233681.552711.993722.61170];scalar_x=x(1):0.05:x(end);y_nearest=interp1(x,y,scalar_x,'nearest');y_linear=interp1(x,y,scalar_x,'linear');y_spline=interp1(x,y,scalar_x,'spline');y_cubic=interp1(x,y,scalar_x,'cubic');subplot(2,2,1),plot(x,y,'*'),holdon,plot(scalar_x,y_nearest),title('method=nearest');subplot(2,2,2),plot(x,y,'*'),holdon,操作成绩报告成绩湖北汽车工业学院《MATLAB及应用》实验指导书9plot(scalar_x,y_linear),title('method=linear');subplot(2,2,3),plot(x,y,'*'),holdon,plot(scalar_x,y_spline),title('method=spline');subplot(2,2,4),plot(x,y,'*'),holdon,plot(scalar_x,y_cubic),title('method=cubic');2.求下列函数的解,并绘制图形。(1)5exyx,初始点为8x(2)sinyxxclear,clc%第一小题y_1=@(x)exp(x)-x^5;x0=8;subplot(1,2,1),holdon,fplot(y_1,[x0,x0+10]),title('exp(x)-x^5');%第二小题y_2=@(x)x*sin(x);subplot(1,2,2),holdon,fplot(y_2,[-pi,pi]),title('x*sin(x)');湖北汽车工业学院《MATLAB及应用》实验指导书103.求下列函数的极值。(1)221zxy(2)21zxyclear,clcz_1=@(x)x(1)^2-(x(2)-1)^2;[x,fvalue,flag,output]=fminsearch(z_1,[0,0])disp('第二小题')z_2=@(x)(x(1)-x(2)+1)^2;[x,fvalue,fl
本文标题:MATLAB基础教程薛山第二版课后习题答案讲解
链接地址:https://www.777doc.com/doc-3699989 .html