matlab课后习题解答第二章doc
- 格式:doc
- 大小:1.69 MB
- 文档页数:16
实验二数组(矩阵)及其运算《MATLAB原理及应用》实验报告1 •课后练习122-1 3 •1、建立/二25-1和B二31-541034-11⑴求矩阵A和B的乘积,矩阵A左除B,以及矩阵A的2次方⑵求数组A和B的乘积,数组A左除B ,及数组A的2次方程序如下:>)A二[1 2 1; 2 5 -1; 4 10 3];»B=[2 —1 3 ;3 1 -5 ; 4 — 1 1];}) C1=A*B;>} C2=A\B;>> C3=A~2;/ ? DI = A •卡B:)> D2 = A. \B;>> D3=A「2;)> Cl运行后显示:C1 =12 0 -615 4-2050 3 -35>> C2C2 =9o S000 4. 0 0 0 0 一了. 5 000 19, 3333 8. 6 6 6 7 -15, 666744, 5 000 19o 00 0 0 -3 5.500 0» C3C3 =9 2 2 28 19 -63 6 88 3» D1D1 二2-2 36 5 51 6 -1 0 3} > D2D2 =0. 5000 -2. 0000 0. 3 3330. 6667 5 o 0000 Oo 2 0 0 01。
0 0 00 - 10o 0 0 00 3. 0 00 0} > D3D3 =1 4 14 25 116 1 0 0 916 3213-1一45 10118 79A =9 6812-424 1514 1 -5152.建立矩阵< 1)用两种方法索引出A矩阵第3行第2列的元素.并将其值改为自己的学号加20(2>索引出A矩阵第2行至第4行.第二列至第5列的所有元素程序如下:〉> A二[16 3 2 1 3 —1 —4; 5 10 11 8 7 9; 9 6 8 1 2 -4 2 :415 14 1 -5 15]A =16 3 2 13 1 -45 10 1 1 8 7 99 6 8 12 —4 24 15 1 4 1 -5 15> > A (3, 2)an s =6>} A(7)ans =6» A(3, 2) = 21A 二1 6 32 13 -1 -45 1 0 11 8 7 g9 2 18 1 2 -4 24 15 1 4 1 -5 15(2) >> B=A(2:4, 2: 5)B =1 011 8 12 1 8 12 -41 5 1 4 1 一53、使用两神方法建立范围为[1°20]的向呈,使得向量中的元素相邻元袤的间隔是2 <1>改变第二个元素的值,并将其赋给一个新的变量〈学号加20〉,并求两个向量的点积(2)从第二个元素开始提取三个元素,并与向量[123]做叉积程序如下:» a=l 0 :2:20 %求 (1) ID 12 16IS20 i nspace(10. 20< 6) 14 IS20b (2) =21 21 20 >> dotb 〉 a ns 1 5 28 b=(3 : 5) %求(2) [12 3] >> cro & s(b,c )4、复数可二彳+及计程序如下:» zl =3+4* i: z2= 1 +2*i: z3=2* e xp z=zl z2/z30o 3349 4 5。
matlab程序设计与应用第二版习题答案Matlab程序设计与应用第二版习题答案Matlab是一种强大的数学软件,广泛应用于科学计算、数据分析和工程设计等领域。
《Matlab程序设计与应用》是一本经典的教材,对于学习和掌握Matlab编程语言具有重要的意义。
本文将为大家提供《Matlab程序设计与应用第二版》中部分习题的答案,帮助读者更好地理解和应用Matlab。
第一章:Matlab基础1.1 基本操作1. a = 3; b = 4; c = sqrt(a^2 + b^2); disp(c);2. x = linspace(-pi, pi, 100); y = sin(x); plot(x, y);3. A = [1 2 3; 4 5 6; 7 8 9]; B = [9 8 7; 6 5 4; 3 2 1]; C = A + B; disp(C);1.2 控制结构1. for i = 1:10disp(i);end2. n = 0; sum = 0; while sum < 100n = n + 1;sum = sum + n;enddisp(n);3. x = 5; if x > 0disp('x is positive');elseif x < 0disp('x is negative');elsedisp('x is zero');end第二章:向量和矩阵运算2.1 向量运算1. A = [1 2 3]; B = [4 5 6]; C = A .* B; disp(C);2. A = [1 2 3]; B = [4 5 6]; C = A ./ B; disp(C);3. A = [1 2 3]; B = [4 5 6]; C = dot(A, B); disp(C);2.2 矩阵运算1. A = [1 2 3; 4 5 6]; B = [7 8; 9 10; 11 12]; C = A * B; disp(C);2. A = [1 2 3; 4 5 6]; B = [7 8; 9 10; 11 12]; C = B * A; disp(C);3. A = [1 2 3; 4 5 6]; B = [7 8; 9 10; 11 12]; C = A .* B; disp(C); 第三章:函数和脚本文件3.1 函数1. function y = myfunc(x)y = x^2 + 3*x + 2;end2. function [y1, y2] = myfunc(x1, x2)y1 = x1^2 + 3*x1 + 2;y2 = x2^2 + 3*x2 + 2;end3. function [y1, y2] = myfunc(x)y1 = x^2 + 3*x + 2;y2 = sin(x);end3.2 脚本文件1. x = linspace(0, 2*pi, 100); y = sin(x); plot(x, y);2. x = linspace(-10, 10, 100); y = x.^2 + 3*x + 2; plot(x, y);3. x = linspace(0, 2*pi, 100); y1 = sin(x); y2 = cos(x); plot(x, y1, x, y2);通过以上习题的答案,读者可以对Matlab程序设计的基本语法和常用函数有一个初步的了解。
习题2.1画出下列常见曲线的图形y (1)立方抛物线3x 命令:syms x y;ezplot('x.^(1/3)')(2)高斯曲线y=e^(-X^2);命令:clearsyms x y;ezplot('exp(-x*x)')(3)笛卡尔曲线命令:>> clear>> syms x y;>> a=1;>> ezplot(x^3+y^3-3*a*x*y)(4)蔓叶线命令:>> clear>> syms x y;>> a=1 ezplot(y^2-(x^3)/(a-x))(5)摆线:()()t b y t t a x cos 1,sin -=-=命令:>> clear>> t=0:0.1:2*pi;>> x=t-sin(t);>>y=2*(1-cos(t)); >> plot(x,y)7螺旋线命令:>> clear >> t=0:0.1:2*pi; >> x=cos(t); >> y=sin(t);>> z=t;>>plot3(x,y,z) (8)阿基米德螺线>> theta=0:0.1:2*pi;>> rho1=(theta);>> subplot(1,2,1),polar(theta,rho1)(9) 对数螺线命令:cleartheta=0:0.1:2*pi;rho1=exp(theta);subplot(1,2,1),polar(theta,rho1) (12)心形线>> theta=0:0.1:2*pi;>> rho1=1+cos(theta);>> subplot(1,2,1),polar(theta,rho1)练习2.21. 求出下列极限值(1)nn n n 3lim 3+∞→命令:>>syms n>>limit((n^3+3^n)^(1/n))ans =3(2))121(lim n n n n ++-+∞→命令:>>syms n>>limit((n+2)^(1/2)-2*(n+1)^(1/2)+n^(1/2),n,inf)ans =(3)x x x 2cot lim 0→命令:syms x ;>> limit(x*cot(2*x),x,0)ans =1/2(4))(cos lim c m xx ∞→ 命令:syms x m ;limit((cos(m/x))^x,x,inf)ans =1(5))111(lim 1--→e x x x 命令:syms x>> limit(1/x-1/(exp(x)-1),x,1)ans =(exp(1)-2)/(exp(1)-1)(6))(2lim x x x x -+∞→命令:syms x>> limit((x^2+x)^(1/2)-x,x,inf)ans =1/2练习2.41. 求下列不定积分,并用diff 验证:(1)⎰+xdx cos 1 >>Clear>> syms x y>> y=1/(1+cos(x));>> f=int(y,x)f =tan(1/2*x)>> y=tan(1/2*x);>> yx=diff(y,x);>> y1=simple(yx)y1 =1/2+1/2*tan(1/2*x)^2 (2)⎰+e x dx 1clearsyms x yy=1/(1+exp(x));f=int(y,x)f =-log(1+exp(x))+log(exp(x))syms x yy=-log(1+exp(x))+log(exp(x));yx=diff(y,x);y1=simple(yx)y1 =1/(1+exp(x))(3)dx x x ⎰sin 2syms x yy=x*sin(x)^2;>> f=int(y,x)f =x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2clearsyms x y y=x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2;yx=diff(y,x);>> y1=simple(yx)y1 =x*sin(x)^2(4) xdx ⎰sec 3syms x yy=sec(x)^3;f=int(y,x)f =1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x))clearsyms x yy=1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x));yx=diff(y,x);y1=simple(yx)y1 =1/cos(x)^32. 求下列积分的数值解1)dx x x ⎰-10clearsyms xy=int(x^(-x),x,0,1)y =int(x^(-x),x = 0 .. 1)vpa(y,10)ans =1.2912859972)xdx e x cos 3202⎰πclearsyms xy=int(exp(2*x)*cos(x)^3,x, clearsyms xy=int((1/(2*pi)^(1/2))*exp(-x^2/2),x,0,1)y =7186705221432913/36028797018963968*erf(1/2*2^(1/2))*2^(1/2)*pi^(1/0,2*pi) y =22/65*exp(pi)^4-22/65vpa(ans,10)(3) dx x e 210221-⎰π>> clear>> syms x>> y=int(1/(2*pi)^(1/2)*exp(-x^2/2),0,1);>> vpa(y,14)ans =.341344746068552(4)>> clear>> syms x>> y=int(x*log(x^4)*asin(1/x^2),1,3);Warning: Explicit integral could not be found.> In sym.int at 58>> vpa(y,14)ans =2.45977212823752(5)>> clear>> syms x>> y=int(1/(2*pi)^(1/2)*exp(-x^2/2),-inf,inf);>> vpa(y,14)ans =.99999999999999练习2.51判断下列级数的收敛性,若收敛,求出其收敛值。
1 数字1.5e2,1.5e3 中的哪个与1500相同吗?1.5e32 请指出如下5个变量名中,哪些是合法的?abcd-2xyz_33chan a 变量ABCDefgh 2、5是合法的。
3 在MATLAB 环境中,比1大的最小数是多少? 1+eps4 设 a = -8 , 运行以下三条指令,问运行结果相同吗?为什么?w1=a^(2/3) w2=(a^2)^(1/3) w3=(a^(1/3))^2w1 = -2.0000 + 3.4641i ;w2 = 4.0000 ;w3 =-2.0000 + 3.4641i 5 指令clear, clf, clc 各有什么用处?clear 清除工作空间中所有的变量。
clf 清除当前图形。
clc 清除命令窗口中所有显示。
第二章1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”符号对象?3/7+0.1双; sym(3/7+0.1)符; sym('3/7+0.1') 符;; vpa(sym(3/7+0.1)) 符;2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是自由符号变量. sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)') symvar(sym('sin(w*t)'),1) w a z3 (1)试写出求三阶方程05.443=-x 正实根的程序。
注意:只要正实根,不要出现其他根。
(2)试求二阶方程022=+-a ax x 在0>a 时的根。
(1)reset(symengine)syms x positive solve(x^3-44.5) ans =(2^(2/3)*89^(1/3))/2(2)求五阶方程022=+-a ax x 的实根 syms a positive %注意:关于x 的假设没有去除 solve(x^2-a*x+a^2)Warning: Explicit solution could not be found. > In solve at 83 ans =[ empty sym ]syms x clear syms a positivesolve(x^2-a*x+a^2) ans =a/2 + (3^(1/2)*a*i)/2 a/2 - (3^(1/2)*a*i)/24 观察一个数(在此用@记述)在以下四条不同指令作用下的异同。
MATLAB-实用教程-课后习题标准答案第二章1.计算复数3+4i与5-6i的乘积。
a=3+4ib=5-6ic=a*b2.构建结构体Students,属性包含Name、age和Email,数据包括{’Zhang’,18,[‘’,’’]}、{’Wang’,21,[]}和{’Li’,[],[]},构建后读取所有Name属性值,并且修改’Zhang’的Age 属性值为19。
Students(1).Age=18Students(1).Email='',''Students(2).Name='Wang'Students(2).Age=21Students(2).Email=[]Students(3).Name='Li'Students(3).Age=[]Students(3).Email=[]/doc/805835364.html,Student(1).Age(1)=19Student.Age3.用满矩阵和稀疏矩阵存储方式分别构造下属矩阵:A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0]A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0]S=sparse(A)S=sparse([2,1,4],[1,2,4],[1,1,1],4,5)4.采用向量构造符得到向量[1,5,9....,41].A=1:4:415.按水平和竖直方向分别合并下述两个矩阵:A=[1 0 0;1 1 0;0 01],B=[2 3 4;5 6 7;8 9 10]A=[1 0 0;1 1 0;0 0 1]B=[2 3 4;5 6 7;8 9 10]C=[A B]D=[A;B]6.分别删除第五题两个结果的第2行。
A=[1 0 0;1 1 0;0 0 1]B=[2 3 4;5 6 7;8 9 10]C=[A B]D=[A;B]C(2,:)=[]D(2,:)=[]7.分别将第5题两个结果的第2行最后3列的数值改为[11 12 13]。
第一章5题已知a=4.96,b=8.11,计算)ln(b a e b a +-的值。
解:clearclca=4.96;b=8.11;exp(a-b)/log(a+b)ans =0.01676题已知三角形的三边a=9.6,b=13.7,c=19.4,求三角形的面积。
提示:利用海伦公式area =))()((c s b s a s s ---计算,其中S=(A+B+C)/2.解:clearclca=9.6;b=13.7;c=19.4;s=(a+b+c)/2area=sqrt(s*(s-a)*(s-b)*(s-c))s =21.3500第二章8题已知S=1+2+2^2+2^3+……+2^63,求S 的值解:clearclcS=0;for i=0:1:63S=S+2^i;endSS =1.8447e+0199题分别用for 和while 循环结构编写程序,计算∑=-1001n 1n 2)(的值。
解:clearclcs=0;for n=1:100s=s+(2*n-1);endss =10000clearclcn=1;s=0;while n<=100s=s+(2*n-1);n=n+1;endss =10000第三章2题在同一坐标下绘制函数x ,,2x -,2x xsin(x)在()∏∈,0x 的曲线。
解:clearclcx=0:0.2:pi;y1=x;y2=x.^2;y3=-(x.^2);y4=x.*sin(x);plot(x,y1,'-',x,y2,'-',x,y3,'-',x,y4,'-')00.51 1.52 2.53-10-8-6-4-22468109题用不同的线型和颜色在同一坐标内绘制曲线y1=2e x 5.0 、y2=sin(2∏x )的图形。
解:clearclcx=0:0.01:pi;y1=2*exp(-0.5*x);y2=sin(2*pi*x);plot(x,y1,'b:',x,y2,'r--')00.51 1.52 2.53 3.5-1-0.50.511.52第四章1题对表达式f=3238641+++x x x 进行化简。
(完整版)MATLAB作业2参考答案MATLAB 作业⼆参考答案1、试求出如下极限。
【求解】极限问题可以由下⾯语句直接求解。
>> syms x; f=(x+2)A(x+2)*(x+3)A(x+3)/(x+5F(2*x+5); limit(f,x,i nf) ans = exp(-5) >> syms x yfa=(x A 2*y+x*y A 3)/(x+y)A 3; limit(limit(fa,x,-1),y,2) ans = -6>> fc=(1-cos(xA2+yA2))*exp(xA2+yA2)/(xA2+yA2); limit(limit(fc,x,O),y,O) ans = 02、试求出下⾯函数的导数。
(1) y(x) . xsinx 、1e x , (2) atan yIn(x 2 y 2)x【求解】由求导函数diff() 可以直接得出如下结果,其中 (2)为隐函数,故需要⽤隐函数求导公式得出导数。
>> syms x;f=sqrt(x*si n( x)*sqrt(1-exp(x))); simple(diff(f)) ans =1/2/(x*s in (x)*(1-exp(x))A(1/2))A(1/2)*(si n(x)*(1-exp(x))A(1/2)+ x*cos(x)*(1-exp(x))A(1/2)-1/2*x*sin (x)/(1-exp(x))A(1/2)*exp(x)) >> syms x,y; f=ata n(y /x)_log(xA2+yA2); f1=simple(-diff(f,x)/diff(f,y)) f1 =(y+2*x)/(x-2*y)2 23、假设U cos 1 J *,试验证⼀———。
\y x y y x【求解】证明⼆者相等亦可以由⼆者之差为零来证明,故由下⾯的语句直接证明。
>> syms x y; u=acos(x/y); diff(diff(u,x),y)-diff(diff(u,y),x) ans =(1) limx (x 2)x 2(x 3)x3(x 5)2x 52..x y lim y 21(x xy 3y)3H xy2Xos2Xe2o o2xyt 2x2f2f2f4、假设 f (x, y) e dt ,试求 22 2y x x yy【求解】由下⾯的命令可以得出所需结果。
2.1创建一个有七个元素的一维数组,并做如下处理(1)直接寻访一维数组的第六个元素(2)寻访一维数组的第一、三、五个元素(3)寻访一维数组中第四个至最后一个元素(4)寻访一维数组中大于70的元素A=linspace(1,200,7)%创建一个有七个元素的一维数组>>A =Columns 1 through 31.0000 34.1667 67.3333Columns 4 through 6100.5000 133.6667 166.8333Column 7200.0000(5)>> A(6)%直接寻访一维数组的第六个元素ans =166.8333(6)>> A([1,3,5])%寻访一维数组的第一、三、五个元素ans =1.0000 67.3333 133.6667(7)>> A(4:end)%寻访一维数组中第四个至最后一个元素ans =100.5000 133.6667 166.8333 200.0000>> b=A>70%判断A中的各元素是否大于70b =0 0 0 1 1 1 1>> A(b)%显示A 中大于70的元素ans =100.5000 133.6667 166.8333 200.00002.3找出数组A=⎥⎦⎤⎢⎣⎡----5311342024中所有绝对值大于3的元素 >> A=[-4,-2,0,2,4;-3,-1,1,3,5]%创建AA =-4 -2 0 2 4-3 -1 1 3 5>> b=abs(A)>3%判断A 中各元素绝对值是否大于3b =1 0 0 0 10 0 0 0 1>> A(b)%显示逻辑值为1的各元素ans =-4452.5求1)1)(4)(232+++++s s s s s (的商及余多项式 >> p1=[1,5,6,10,8];%创建分子多项式>> ps1=poly2str(p1,'s')%以s 作为未知数显示多项式ps1 =s^4 + 5 s^3 + 6 s^2 + 10 s + 8>> p2=[1,1,1];%创建分母多项式>> ps2=poly2str(p2,'s')%以s 作为未知数显示多项式ps2 =s^2 + s + 1>> [q,r]=deconv(p1,p2)%求商及余多项式q =1 4 1r =0 0 0 5 7>> disp(['商:',poly2str(q,'s')])%显示商多项式 商: s^2 + 4 s + 1>> disp(['余:',poly2str(r,'s')])%显示余多项式 余: 5 s + 72.6求3阶方阵A 的特征多项式构造方阵A=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡200030001 A=[1,0,0;0,3,0;0,0,2;];%构造方阵A>> B=poly(A);%B 为A 的特征多项式>> poly2str(B,'s')ans =s^3 - 6 s^2 + 11 s - 6>> p=roots(B)%求B 的根p =3.00002.00001.0000。
第1章 MATLAB概论1.1与其他计算机语言相比较,MATLAB语言突出的特点是什么?MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。
1.2 MATLAB系统由那些部分组成?MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。
1.3 安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装MATLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。
第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。
1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。
1.5 如何启动M文件编辑/调试器?在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。
在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。
1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。
1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
第二章%分段函数的写法syms y xz=int(x*y,x,0,1);g = evalin(symengine,[' piecewise([y > 1/2,' char(z) '], [y <= 1/2, 1])']) G=int(g,y)g =piecewise([1/2 < y, y/2], [y <= 1/2, 1])G =piecewise([1/2 < y, y^2/4], [y <= 1/2, y])%习题2-1class(vpa(sym(3/7+0.1),4))%习题2-2findsym(sym('sin(w*t)'),1)findsym(sym('a*exp(-X)'),1)findsym(sym('z*exp(j*th)'),1)%习题2-3syms x a positivex_1=solve('x^3-44.5')syms x unrealx_2=solve('x^2-a*x+a^2')syms a unrealx_2=solve('x^2-a*x+a^2')x_3=solve('x^2-a*x-a^2')syms x realevalin(symengine,'anames(Properties)')evalin(symengine,'getprop(x)')%习题2-47/3, pi/3 , pi*3^(1/3)a = pi*3^(1/3) ,b = sym( pi*3^(1/3) ),c = sym( pi*3^(1/3),'d'),d = sym( 'pi*3^(1/3) ' )vpa(abs(a-d)) , vpa(abs(b-d)) , vpa(abs(c-d))%习题2-5syms a11 a12 a13 a21 a22 a23 a31 a32 a33A = [a11 a12 a13;a21 a22 a23;a31 a32 a33]a=det(A)B=inv(A)C=subexpr(B)[RS,w]=subexpr(B,'w')%习题2-6syms ksyms a positive% fk =a^k * heaviside(k)fk =a^ks=symsum(fk,k,0,inf)%习题2-7clear allsyms ksyms x positivefk =2/(2*k+1)*(((x-1)/(x+1))^(2*k+1))s=symsum(fk,k,0,inf)s1=simple(s)%习题2-8clear all, syms ty=abs(sin(t))df=diff(y),class(df)df1=limit(df,t,0,'left')df2=subs(df,'t',sym(pi/2))%习题2-9clear all, syms x;f=exp(-abs(x)).*abs(sin(x));fint=int(f,x,-5*pi,1.7*pi), digits(64), vpa(fint)class(fint)%习题2-10clear all,syms x y,f=x.^2+y.^2,fint=(int(int(f,y,1,x.^2),x,1,2)), double(fint)%习题2-11clear all, syms t x; f=sin(t)/t, yx=int(f,t,0,x), ezplot(yx,[0 2*pi])fint=subs(yx,x,4.5),%或yxd=int(f,t,0,4.5),fint=double(yxd)hold on, plot(4.5,fint,'*r')%习题2-12% clear all, syms x n; f=(sin(x))^n; yn=int(f,'x',0,pi/2), class(yn)clear all, syms x n; syms n positive ; f=(sin(x))^n; yn=int(f,'x',0,pi/2), class(yn) % y(1/3)=?yn1=subs(yn,'n',sym(1/3)),vpa(yn1)%或yn=limit(yn,n,1/3),vpa(yn)%或yy=int(sin(x).^(1/3),x,0,pi/2) ,vpa(yy)%习题2-23clear, syms x y SS = dsolve('Dy*y/5+x/4=0','x')ezplot(subs(S(1),'C3',1),[-2,2 -2,2],1), hold onezplot(subs(S(2),'C3',1),[-2,2 -2,2],1)%解为S =% 2^(1/2)*(C3 - (5*x^2)/8)^(1/2)% -2^(1/2)*(C3 - (5*x^2)/8)^(1/2)ezplot(subs(S(1),'C3',1),[-2,2 -2,2],1), hold onezplot(subs(S(2),'C3',1),[-2,2 -2,2],1) % 用此两条指令绘圆,在y=0处有间隙ezplot(subs(y^2-(S(1))^2, 'C3', 1),[-2,2 -2,2],2) %用椭圆方程绘图不产生间隙colormap([0 0 1]) %用ezplot(fun)绘图时,如果fun中只有一个参数,绘图的颜色是蓝色;如果fun中有两个参数,绘图的颜色是绿色,此指令设置图形颜色为蓝。
第2章数值计算功能(2)1 内容简介基本内容主要包括:(1)矩阵及其运算。
(2)数组及其运算(3)多项式运算2 达到的目标(1)熟悉MATLAB的数据类型。
(2)通过例题验证,掌握MATLAB的向量的建立及其运算。
3 具体内容3.1 矩阵及其运算【例2.7】创建一简单数值矩阵。
a=[1 2 3;1 1 1;4,5,6]【例2.8】创建一带有运算表达式的矩阵。
b=[sin(pi/3),cos(pi/4);log(9),tanh(6)];b3.1.2 矩阵的基本数学运算【例如】a=[1 2 3;2 3 4;3 4 5];b=[1 1 1;2 2 2;3 3 3];c1=a+bc1=a-b【例如】a1=[1 2 3;2 3 4;3 4 5];b1=[1 1 1;2 2 2;3 3 3];c=a1*b1【例2.9】求解恰定方程。
已知方程组Ax=b ,系数矩阵A=⎪⎪⎪⎭⎫⎝⎛20119162873220139216125,常数矩阵b=⎪⎪⎪⎭⎫ ⎝⎛231915解x=A -1*bA=[125 216 39;201 32 287;16 19 201]; b=[15;19;23]; x1=A^(-1)*b x2=A\b x=b'/A'; x3=x'【例】A=⎪⎪⎭⎫⎝⎛246351,求A+5,A-5,A*5,5*A ,A/5,5/AA=[1 5 3;6 4 2];B1=A+5 B2=A-5 B3=A*5 B4=5*A B5=A/5【例2.12】求下面A 矩阵的逆。
解:a=[2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5];b1=inv(a) b2=a^(-1)【例2.13】求A 矩阵及其逆的行列式之积。
解:a=[2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5];al=det(a);a2=det(inv(a));b1=al*a2b2=det(a*inv(a))【例】求A矩阵的3次方解:a=[2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5];b=a^3【例】求A矩阵的3次方解:a=[2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5];c1=sqrtm(a)c2=a^0.53.1.3 矩阵的基本函数运算【例2.16】计算矩阵A的特征值和特征向量。
实验一 MATLAB 运算基础1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。
(1) 0122sin851z e =+ (2) 221ln(1)2z x x =++,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦(3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+=++=--(4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5 解: M 文件:z1=2*sin(85*pi/180)/(1+exp(2))x=[2 1+2*i;-.45 5];z2=1/2*log(x+sqrt(1+x^2))a=-3.0:0.1:3.0;z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2)t=0:0.5:2.5;z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3) .*(t.^2-2*t+1) 运算结果:z1=2*sin(85*pi/180)/(1+exp(2))x=[2 1+2*i;-.45 5];z2=1/2*log(x+sqrt(1+x^2))a=-3.0:0.1:3.0;z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2)t=0:0.5:2.5;z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3) .*(t.^2-2*t+1)z1 =0.2375z2 =0.7114 - 0.0253i 0.8968 + 0.3658i0.2139 + 0.9343i 1.1541 - 0.0044iz3 =Columns 1 through 40.7388 + 3.1416i 0.7696 + 3.1416i 0.7871 + 3.1416i 0.7913 + 3.1416iColumns 5 through 80.7822 + 3.1416i 0.7602 + 3.1416i 0.7254 + 3.1416i 0.6784 + 3.1416iColumns 9 through 120.6196 + 3.1416i 0.5496 + 3.1416i 0.4688 + 3.1416i 0.3780 + 3.1416iColumns 13 through 160.2775 + 3.1416i 0.1680 + 3.1416i 0.0497 + 3.1416i -0.0771 + 3.1416iColumns 17 through 20-0.2124 + 3.1416i -0.3566 + 3.1416i -0.5104 + 3.1416i -0.6752 + 3.1416iColumns 21 through 24-0.8536 + 3.1416i -1.0497 + 3.1416i -1.2701 + 3.1416i -1.5271 + 3.1416iColumns 25 through 28-1.8436 + 3.1416i -2.2727 + 3.1416i -2.9837 + 3.1416i -37.0245 Columns 29 through 32-3.0017 -2.3085 -1.8971 -1.5978Columns 33 through 36-1.3575 -1.1531 -0.9723 -0.8083Columns 37 through 40-0.6567 -0.5151 -0.3819 -0.2561Columns 41 through 44-0.1374 -0.0255 0.0792 0.1766Columns 45 through 480.2663 0.3478 0.4206 0.4841Columns 49 through 520.5379 0.5815 0.6145 0.6366Columns 53 through 560.6474 0.6470 0.6351 0.6119Columns 57 through 600.5777 0.5327 0.47740.4126Column 610.3388z4 =0 0.2500 0 1.2500 1.0000 2.2500 2. 已知:求下列表达式的值:(1) A+6*B和A-B+I(其中I为单位矩阵)(2) A*B和A.*B(3) A^3和A.^3(4) A/B及B\A(5) [A,B]和[A([1,3],:);B^2]解:M 文件:A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7]; A+6.*BA-B+eye(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]运算结果:A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7]; A+6.*BA-B+eye(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]ans =18 52 -1046 7 10521 53 49ans =12 31 -332 8 840 67 1ans =68 44 62309 -72 596154 -5 241ans =12 102 468 0 2619 -130 49ans =37226 233824 48604247370 149188 60076678688 454142 118820 ans =1728 39304 -6439304 343 65850327 274625 343 ans =16.4000 -13.6000 7.600035.8000 -76.2000 50.200067.0000 -134.0000 68.0000109.4000 -131.2000 322.8000-53.0000 85.0000 -171.0000-61.6000 89.8000 -186.2000ans =12 34 -4 1 3 -134 7 87 2 0 33 65 7 3 -2 7ans =12 34 -43 65 74 5 111 0 1920 -5 403. 设有矩阵A和B(1) 求它们的乘积C。
习题二1.如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。
因此,矩阵是MATLAB最基本、最重要的数据对象。
2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等?答:不相等。
(2)A./B和B.\A的值是否相等?答:相等。
(3)A/B和B\A的值是否相等?答:不相等。
(4)A/B和B\A所代表的数学含义是什么?答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。
3.写出完成下列操作的命令。
(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。
答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A的第7号元素。
答:A(7)=[](3)将矩阵A的每个元素值加30。
答:A=A+30;(4)求矩阵A的大小和维数。
答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。
答:t(find(t==0))=eps;(6)将含有12个元素的向量x转换成34矩阵。
答:reshape(x,3,4);(7)求一个字符串的ASCII码。
答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。
答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0]L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0]L4的值为[4, 5, 6]5.已知完成下列操作:(1)取出A的前3行构成矩阵B,前两列构成矩阵C,右下角32⨯子矩阵构成矩阵D,B 与C的乘积构成矩阵E。
matlab课后习题及答案详解第1章MATLAB概论与其余计算机语言对比较,MATLAB语言突出的特色是什么?MATLAB拥有功能强盛、使用方便、输入简捷、库函数丰富、开放性强等特色。
MATLAB系统由那些部分构成?MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。
安装MATLAB时,在选择组件窗口中哪些部分一定勾选,没有勾选的部分此后怎样补安装?在安装MATLAB时,安装内容由选择组件窗口中个复选框能否被勾选来决定,能够依据自己的需要选择安装内容,但基本平台(即MATLAB选项)一定安装。
第一次安装没有选择的内容在补安装时只要依据安装的过程进行,不过在选择组件时只勾选要补装的组件或工具箱即可。
MATLAB操作桌面有几个窗口?怎样使某个窗口离开桌面成为独立窗口?又怎样将离开出去的窗口从头搁置到桌面上?在MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是封闭窗口的Close按钮,一个是能够使窗口成为独立窗口的Undock 按钮,点击Undock按钮就能够使该窗口离开桌面成为独立窗口,在独立窗口的view菜单中选择Dock,,菜单项就能够将独立的窗口从头防备的桌面上。
怎样启动M文件编写/调试器?在操作桌面上选择“成立新文件”或“翻开文件”操作时,M文件编写/调试器将被启动。
在命令窗口中键入edit命令时也能够启动M文件编写/调试器。
储存在工作空间中的数组能编写吗?怎样操作?储存在工作空间的数组能够经过数组编写器进行编写:在工作空间阅读器中双击要编写的数组名翻开数组编写器,再选中要改正的数据单元,输入改正内容即可。
命令历史窗口除了能够察看前方键入的命令外,还有什么用途?命令历史窗口除了用于查问从前键入的命令外,还能够直接履行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
怎样设置目前目录和搜寻路径,在目前目录上的文件和在搜寻路径上的文件有什么差别?目前目录能够在目前目录阅读器窗口左上方的输入栏中设置,搜寻路径能够经过选择操作桌面的file菜单中的SetPath菜单项来达成。