matlab课后习题解答第二章

合集下载

MATLAB程序设计与应用第二版课后题答案2(最新整理)

MATLAB程序设计与应用第二版课后题答案2(最新整理)

-0.6863 0.5621 0.4615
-0.0937 -0.6976 0.7103
D=
-0.0166
0
0
0 1.4801
0
0
0 2.5365
第四章
1.a=input('请输入一个 4 位数:');
while (a<1000|a>9999)
a=input('输入错误,请重新输入一个4位数:');
end
9
function f=factor(n,m); y=0; for k=1:n
y=y+k^m; end
10.(1)S=108 (2)x=4 12 20
y=2 4 6
1. (1) x=-10:0.1:10; y=100./(1+x.^2); plot(x,y)
第五章
(2) x=-10:0.1:10; y=1/(2*pi)*exp(-x.^2/2); plot(x,y)
第二章 3.设矩阵 A 为 A=[24 23 9 21 6;65 74 24 11 21;34 5 98 75 21;8 42 42 53 121;43 21 45 64 21]; (1) B=A(2:5,1:2:5)
B=
65 24 21 34 98 21 8 42 121 43 45 21 (2)A(7)=[] A= 24 65 34 8 43 23 5 42 21 9 24 98 42 45 21 11 75 53 64 6 21 21 121 21 (3)A+30 (4)size(A);ndims(A) (5)题目有误 (6)reshape(x,3,4) (7)abs(x) (8)char(x) 4. L1 = 000010000 L2 =

精讲多练MATLAB(第二版)课后习题答案

精讲多练MATLAB(第二版)课后习题答案

第1章练习题答案1-2.A=1.2 ;B=-4.6 ;C=8.0 ;D=3.5 ;E=-4.0;T=atan((2*pi*A+E/(2*pi*B*C))/D)1-3clearx=45;(sin(x*pi/180)+sqrt(35))/(72^(1/5))1-4cleara=5.67;b=7.811;exp(a+b)/log10(a+b)1-5clearx=3;y=sqrt(x)-6*(x+1/x)+(x-3.2)^2/(x+7.7)^3 1-6clearr=15;d=2*rc=2*pi*rs=pi*r*r1-7cleara=8.5;b=14.6;c=18.4;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c))第2章练习题答案2-1 c learA=[ 3 1 1;2 1 2;1 2 3];B=[1 1 -1;2 -1 0;1 -1 1];2*A+B,4*(A^2)-3*(B^2),A*B,B*A,A*B-B*A2-2 clearA=[1/3 0 0;0 1/4 0;0 0 1/7];B=inv(inv(A)-eye(3))*62-3 clearB=[1 2 -3 -2;0 1 2 -3;0 0 1 2;0 0 0 1]; C=[1 2 0 1;0 1 2 0;0 0 1 2;0 0 0 1];A=(inv(2*eye(4)-inv(C)*B)*inv(C))'2-4 clearA=[2 -1;-1 2];B=[0 -2;-2 0];X=(1/2)*(B+2*A)2-5 clearA=[2 -3 0 2;1 5 2 1;3 -1 1 -1;4 1 2 2];B=[8;2;7;12];X=A\B2-6 A=[3 12 4 7 0 8 1];p=poly2str(A,'x')x=roots(A)2-7 A=[3 12 4 7 0 8 1];B=[1 -3 5 -15 0];[div,rest]=deconv(A,B)第三章3-1.x=sym('x');limit((cos(sqrt(x)))^(pi/x),x,0,'right')ans =exp(-1/2*pi)3-2.x=sym('x');f=sym('(3*sin(x)+x^2*cos(1/x))/((1+cos(x))*log(1+x))');limit(f,x,0)ans =3/23-3.x=sym('x');f=sym('(sqrt(4*x^2+x-1)+x+1)/sqrt(x^2+sin(x))');limit(f,x,-inf)ans =13-4.s yms x y;f=sym('(x^2+y^2)^(x^2*y^2)');limit(limit(f,x,0),y,0)ans =13-5.x=sym('x');y=sym('(tan(sqrt(x+sqrt(x+sqrt(2*x)))))^2');diff(y,x)ans=tan((x+(x+2^(1/2)*x^(1/2))^(1/2))^(1/2))*(1+tan((x+(x+2^(1/2)*x^(1/2 ))^(1/2))^(1/2))^2)/(x+(x+2^(1/2)*x^(1/2))^(1/2))^(1/2)*(1+1/2/(x+2^( 1/2)*x^(1/2))^(1/2)*(1+1/2*2^(1/2)/x^(1/2)))3-6.x=sym('x');y=sym('cos(x^2)*sin(1/x)^2');diff(y,x)ans =-2*sin(x^2)*x*sin(1/x)^2-2*cos(x^2)*sin(1/x)*cos(1/x)/x^23-7.x=sym('x');y=sym('sqrt(sin(x)-sin(x)^3)');int(y,x,0,pi)ans =4/33-8.x=sym('x');y=sym('sqrt((x+1)/(x-1))/x');int(y,x)ans=-((1+x)/(x-1))^(1/2)*(x-1)*(atan(1/(-1+x^2)^(1/2))-log(x+(-1+x^2)^(1/2)))/((1+x)*(x-1))^(1/2)3-9.dsolve('D2y+4*Dy+4*y=exp(-2*x)','x')ans =1/2*exp(-2*x)*(2*C2+2*x*C1+x^2)3-10.dsolve('x^2*Dy+x*y=y^2','y(1)=1')ans =x*exp(1/x)/(exp(1/x)+exp(1/x*t)*x-exp(1/x*t))第四章4-1.plot([1 2 4 0 5 10 11 21 3 1])4-2.t=0:pi/100:2*pi;x=cos(t);y=sin(t);plot(x,y);axis('square');4-3.R=[1 5 10 20];I=0:0.1:10;U=I'*R;plot(I,U);4-4.mon=1:12;temp=[0.2 2.3 8.7 18.5 24.6 32.1 36.8 37.1 28.3 17.8 6.4 -3.2];rainf=[4.6 3.6 2.1 2.9 3.0 2.7 2.2 2.5 4.3 3.4 2.1 3.7];plot(mon,temp,'r-p',mon,rainf,'b:s');xlabel('month');ylabel('temperature and rainfall');%title('Temperature and Rainfall Curve');%text(3,1,'rainfall');%text(9,28.3,'temperature');flag=12;while(flag)text(mon(flag),temp(flag),[num2str(mon(flag)),num2str(temp(flag))]); text(mon(flag),rainf(flag),[num2str(mon(flag)),num2str(rainf(flag))]);flag=flag-1;end4-5.A=[1 1 1 1 1 1 1;1 2 2 2 2 2 1;1 2 2 3 2 2 1;1 2 2 2 2 2 1;1 1 1 1 1 1 1];plot(A);4-6.x=-10:0.5:10;y=x;[X,Y]=meshgrid(x,y);Z=X.^2+Y.^2;surf(X,Y,Z);4-7.clccleartheta=(0:0.1:2)*pi;phi=(0:0.1:2)*pi;x=zeros(length(theta),length(phi));y=x;z=x;for i=1:length(theta)for j=1:length(phi)x(i,j)=2*sin(theta(i))*cos(phi(j));y(i,j)=3*sin(theta(i))*sin(phi(j));endz(i,:)=4*cos(theta(i));endaxis squaresubplot(2,2,1);mesh(x,y,z)title('三维')subplot(2,2,2);mesh(x,y,z)view(90,0)title('X轴视图')subplot(2,2,3);mesh(x,y,z)view(0,0)title('Y轴视图')subplot(2,2,4);mesh(x,y,z)view(0,90)title('Z轴视图')第五章5-1:clear;x=-2:0.01:2;for ii=1:401if(x(ii)<0)y(ii)=x(ii)+1;elseif (x(ii)<1)&(x(ii)>=0)y(ii)=1;elseif(x(ii)>=1)y(ii)=x(ii)^3;endendplot(x,y);5-2:function y=fenduan(x)if(x<0)y=x+1;elseif (x<1)&(x>=0)y=1;elseif(x>=1)y=x^3;end5-3:建立文件arcsin.m如下:function y=arcsin(x)if abs(x)>1disp('输入参数的绝对值必须小于1');return;endn=0;y=0;u=x;while u>epsu=(jiecheng(2*n)*x^(2*n+1))/(2^(2*n)*(jiecheng(n)^2*(2*n+1))); y=y+u;n=n+1;end建立文件jiecheng.m如下:function y=jiecheng(n)if(n<0)disp('输入参数必须为大于或等于0的整数');return;endif n==0 | n==1y=1;elsey=n*jiecheng(n-1);end5-4:建立shuliang.m文件如下:function [tu,ji]=shuliang(tou,jiao)tu=jiao/2-tou;ji=2*tou-jiao/2;在命令窗口中执行:>>[a,b]=shuliang(36,100)5-5:for i=2:999ge=rem(i,10);shi=rem(fix(i/10),10);bai=fix(i/100);if rem((ge+shi+bai),2) & isprime(i)disp(i);endend5-6:function y=issushu(n)y=1;for ii=2:fix(n/2)if(rem(n,ii)==0)y=0;endend习题1(程序段后面的是其运行的结果)例题1.2function lt12 a=1+2*i;b=3-4*i;disp(['a+b=',num2str(a+b)]) disp(['a-b=',num2str(a-b)]) disp(['a*b=',num2str(a*b)]) disp(['a/b=',num2str(a/b)]) >> lt12 a+b=4-2i a-b=-2+6i a*b=11+2ia/b=-0.2+0.4i >>例题1.3function z=lt13x=(-3.5)*pi/180;y=6.7*pi/180;z=sin(abs(x)+abs(y))/sqrt(cos(abs(x+y))); >> lt13ans =0.1772 >>例题1.4function p1=lt14r=0.0107;n=2015-2000;p0=12.9533E8; p1=p0*(1.0+r)^n; >> lt14ans =1.5195e+009 >>例题1.5function lt15 a=1;b=2;c=3;d=sqrt(b^2-4*a*c);x1=(-b+d)/2*a;x2=(-b-d)/2*a; disp('原方程的根是:')disp(['x1=',num2str(x1)]) disp(['x2=',num2str(x2)])>> lt15原方程的根是:x1=-1+1.4142i x2=-1-1.4142i >>。

matlab 部分答案

matlab 部分答案

4. 用三点公式计算 y=f(x)在 x=1.0,1.2 处的导数值, f(x)值由下表给出; x f(x)
5
1.0 0.25
4
1.1
ww w
1.2
2
.k
1.3 0.1890 1.4 0.1736

7. 求解下列线性常微分方程的解析解。

6.设方程的根为 x = [−3, −5, −8, −9] ,求它们对应的 x 多项式的系数。
y=x(:,1);
20. 求解线性常微分方程 3 y + 4 y + 5 y + 6 y = 3u + 0.5u + 4u , 在输入 u(t)为单位脉冲
''' '' ' '' '
并单位阶跃信号时的解析解。
第四章 习题
1.若 x(n) = cos(

2.求有限长序列 x( n) = 5(0.6) ( 0 ≤ n < 20 )的圆周移位 f (n) = x((n − 10)) 20 R20 ( n) 。
5. 创建 3×4 矩阵魔方阵和相应的随机矩阵,将两个矩阵并接起来,然后提取任意两个列向
6. 创建一个 4×4 单位阵,提取对角线以上部分。
8. 创建一个 5×5 随机阵并求其逆。 9. 利用上题的矩阵,计算矩阵的 5 次方。
求 C = A * B , D = A.* B 。
B=[5,4,3,-2; 6,-2,3,-8; -1,3,-9,7]; C=A*B
部分习题与解答
第二章 习题及部分解答
1 1. 计算 y = x3 + ( x − 0.98) 2 /( x + 1.35)3 − 5( x + ) ,当 x = 2 和 x = 4 时的值。 x

Matlab习题答案

Matlab习题答案
(1) (3− 5i)(4 + 2i) (2) sin (2 − 8i)
参考答案: (1) >> (3-5*i)*(4+2*i) ans =
22.0000 -14.0000i
(2) >> sin(2-8*i) ans =
1.3553e+003 +6.2026e+002i
5.判断下面语句的运算结果。 (1) 4 < 20 (2) 4 <= 20 (3) 4 == 20 (4) 4 ~= 20 (5) 'b'<'B' 参考答案: (1) >> 4<20 ans =
y_nearest(i)=interp1(x,y,scalar_x(i),'nearest'); y_linear(i) =interp1(x,y,scalar_x(i),'linear'); y_spline(i) =interp1(x,y,scalar_x(i),'spline'); y_cubic(i) =interp1(x,y,scalar_x(i),'cubic'); end subplot(2,2,1),plot(x,y,'*'),hold on,plot(scalar_x,y_nearest),title('method=nearest'); subplot(2,2,2),plot(x,y,'*'),hold on,plot(scalar_x,y_linear),title('method=linear'); subplot(2,2,3),plot(x,y,'*'),hold on,plot(scalar_x,y_spline),title('method=spline'); subplot(2,2,4),plot(x,y,'*'),hold on,plot(scalar_x,y_cubic),title('method=cubic'); 得到结果为:

数字图像处理及应用(MATLAB)第2章习题答案

数字图像处理及应用(MATLAB)第2章习题答案

7.平均值说明f (x ,y )的平均值等于其傅里叶变换F (u ,v )在频率原点的值F (0,0)。

2-3证明离散傅里叶变换的频率位移和空间位移性质。

证明:)(2101),(1),(NvyM ux j M x N y e y x f MN v u F +--=-=∑∑=π),(),(1),(100)(21010)(2)(21010000v v u u F dxdy ey x f MNe ey x f MN y Nv v x M u u j M x N y N yv M x u j Nvy M ux j M x N y --==-+---=-=++--=-=∑∑∑∑πππ因为()()v u F y x f ,,⇔ 所以 ),(),(00)(200v v u u F e y x f N y v M x u j --⇔+π2-4小波变换是如何定义的?小波分析的主要优点是什么?小波之所以小,是因为它有衰减性,即是局部非零的;而称为波,则是因为它有波动性,即其取值呈正负相间的振荡形式,将)(2R L 空间的任意函数f (t )在小波基下展开,称其为函数f (t )的连续小波变换。

小波变换是时间(空间)频率的局部化分析,它通过伸缩平移运算对信号(函数)逐步进行多尺度细化,最终达到高频处时间细分,低频处频率细分,能自动适应时频信号的要求从而可聚焦到信号的任意细节,解决了Fourier 变换的困难问题。

2-5 在图像缩放中,采用最近邻域法进行放大时,如果放大倍数太大,可能会出现马赛克效应,这个问题有没有办法解决,或者有所改善。

可以利用线性插值法,当求出的分数地址与像素点不一致时,求出周围四个像素点的距离比,根据该比率, 由四个邻域的像素灰度值进行线性插值。

2-6 复合变换的矩阵等于基本变换的矩阵按顺序依次相乘得到的组合矩阵。

即,T=T N T N-1…T 1。

问矩阵顺序的改变能否影响变换的结果。

矩阵顺序的改变不会影响变换的结果。

matlab编程与工程应用课后答案-第2章

matlab编程与工程应用课后答案-第2章

matlab编程与工程应用课后答案-第2章1%计算空心球体积r0 = 3;ri = 2;volume = 4*pi/3*(r0^3-ri^3) —————————————————————————————————————2%计算过氧化氢分子量H = 15.9994;O = 1.0079;H2O2 = 2*H + 2*O —————————————————————————————————————3%计算字符创长度string = input('enter string: ','s');stringlength = length(string) —————————————————————————————————————%4 输入实数,fprintf输出这个变量,格式为两位小数num = input('enter a num: ');fprintf('The num is %.2f\n',num) —————————————————————————————————————6fprintf('不指定宽度: %f\n',12345.6789)不指定宽度: 12345.678900fprintf('10个字符宽度,4个小数位: %10.4f\n',12345.6789)10个字符宽度,4个小数位: 12345.6789fprintf('10个字符宽度,2个小数位: %10.2f\n',12345.6789)10个字符宽度,2个小数位: 12345.68fprintf('6个字符宽度,4个小数位: %6.4f\n',12345.6789)6个字符宽度,4个小数位: 12345.6789fprintf('2个字符宽度,4个小数位: %2.4f\n',12345.6789)2个字符宽度,4个小数位: 12345.6789 —————————————————————————————————————7fprintf('不指定宽度:%int16\n',12345)不指定宽度:12345nt16fprintf('不指定宽度:%d\n',12345)不指定宽度:12345fprintf('5个字符宽度:%5d\n',12345)5个字符宽度:12345fprintf('8个字符宽度:%8d\n',12345)8个字符宽度:12345fprintf('3个字符宽度:%3d\n',12345)3个字符宽度:12345 —————————————————————————————————————8x = 12.34;y = 4.56;fprintf('x is %.3f\n',x)x is 12.340fprintf('x is %2.0f\n',x)x is 12fprintf('y is %.1f\n',y)y is 4.6fprintf('y is %-6.1f!\n',y)y is 4.6 ! —————————————————————————————————————9%计算矩形面积x = input('enter length:');y = input('enter borad:');area = x*y;fprintf('area is %.2f\n',area) —————————————————————————————————————10string = input('what is your name?','s');fprintf('WoW,your name is %s\n',string) —————————————————————————————————————11string = input('enter your string:','s');fprintf('your string was:''%s''\n',string) %输出单引号是应采用''格式—————————————————————————————————————12v = input('enter the flow in m^3/s:');fprintf('a flow rate of %.3f meters per sec\nis equivalent to %.3f feet per sec\n',v,v/0.028) —————————————————————————————————————13incomeyear = input('enter your income per year: ');fprintf('the range of food expenditure per year %f~%f\nthe range of food expenditure per mounth %f~%f\n',incomeyear*0.08,incomeyear*0.1,incomeyear* 0.08/12,incomeyear*0.1/12)—————————————————————————————————————14wight = input('wight of plant: ');area = input('area of wing: ');fprintf('W/A: %f kg/m^2\n',wight/area)—————————————————————————————————————15x= 10;y =22;plot(x,y,'g+')—————————————————————————————————————16x = -2:0.1:2;plot(x,exp(x))xlabel('x')ylabel('y')title('y=e^x') —————————————————————————————————————17x = 1:5:100;y = sqrt(x);figure(1)plot(x,y)figure(2)bar(x,y)—————————————————————————————————————18略—————————————————————————————————————19x1 = linspace(0,pi,10);figure(1)plot(x1,sin(x1))x2 = linspace(0,pi,100);figure(2)plot(x2,sin(x2)) —————————————————————————————————————20mat = [1000 2000 3000 5000 10000;288 281 269 256 223]';x = mat(:,1);y = mat(:,2);plot(x,y)xlabel('high')ylabel('tempture')title('high-tempture') —————————————————————————————————————21mat1 = randi([50,100],3,6)save randfile.dat mat1 -ascii;mat2 = randi([50,100],2,6)save randfile.dat mat2 -ascii -append;load randfile.dat;;randfile —————————————————————————————————————22mat = rand(2,3)*4-1;save testtan.dat mat -ascii;load testtan.dat;mattan = tan(testtan)—————————————————————————————————————23mat = [89 42 49 55 72 63 68 77 82 76 67;90 45 50 56 59 62 68 75 77 75 66;91 44 43 60 60 60 65 69 74 70 70]save hightemp.dat mat -ascii;load hightemp.dathightemp(:,1) = hightemp(:,1)+1900;hightempsave y2ktemp.dat hightemp -ascii—————————————————————————————————————24%24 Calculates y as a function of xfunction y = fn(x)y = x^3-4*x^2+sin(x); —————————————————————————————————————25%25 Converts from MWh to GJfunction gj = mwh_to_gj(mwh)gj = 3.6*mwh;—————————————————————————————————————26%26 converta from inch/h to meter/sfunction meter_sec = converta(inch_hour)meter_sec = inch_hour*5280*0.3048/3600;—————————————————————————————————————27function Tn = fn27(P,i,n)Tn = P*(1+i)*n;—————————————————————————————————————28略—————————————————————————————————————29function V = fn29(Pt,Ps)V = 1.016*sqrt(Pt-Ps);—————————————————————————————————————30function THR = fn30(A)THR = (220-A)*0.6;—————————————————————————————————————31function outdate = fn31(n)outdate = sqrt(2*pi*n)*(n/exp(1))^n;—————————————————————————————————————32%32 脚本n = input('enter the number of units: ');Cn = costn(n);fprintf('the cost for %d units will be $%.2f\n',n,Cn)%32 mygcost函数function Cn = costn(n)Cn = 5*n^2-44*n+11; —————————————————————————————————————33%33 脚本rain = input('enter the rain: ');snow = fn33(rain);fprintf('the snow is %f\n',snow)%33 调用函数function snow = fn33(rain)snow = rain*6.5; —————————————————————————————————————34%34 脚本s = input('enter long_side: ');V = fn34(s);fprintf('volume is %.2f\n',V)%34 函数function V = fn34(s)V = sqrt(2)*s^3/12; —————————————————————————————————————35%35 pickone(x) returns a random element from vector xfunction outdate = pickone(x)outdate = randi([x(1) x(end)],1,1); —————————————————————————————————————36function outdate = vecout(x)outdate = x:1:x+5;—————————————————————————————————————37%37b = input('enter the first side: ');c = input('enter the second side: ');alpha = input('enter the angle between them: ');a = sqrt(b^2+c^2-2*b*c*cosd(alpha)); %切记这里用sindfprintf('the third side is %.3f\n',a)—————————————————————————————————————38略—————————————————————————————————————39%39mat = [90.5792 27.8498 97.0593;12.6987 54.6882 95.7167;91.3376 95.7507 48.5376;63.2359 96.4889 80.02809.7540 15.7613 14.1886];save floatnums.dat mat -ascii;load floatnums.dat;floatnums = round(floatnums')save intnums.dat floatnums -ascii—————————————————————————————————————40%40costssales = [1100 800;1233 650;1111 1001;1222 1300;999 1221];fprintf('there were %d quarters in the file\n',length(costssales))x = costssales(:,1);y = costssales(:,2);plot(x,'ko')hold onplot(y,'b*')mat = fliplr(costssales)';save newfile.dat mat -ascii。

matlab教程第二章课堂练习及答案

matlab教程第二章课堂练习及答案

Matlab教程第二章符号计算课堂练习1 创建符号变量有几种方法?MATLAB提供了两种创建符号变量和表达式的函数:sym和syms。

sym用于创建一个符号变量或表达式,用法如x=sym(‘x’) 及f=sym(‘x+y+z’),syms用于创建多个符号变量,用法如syms x y z。

f=sym(‘x+y+z’)相当于syms x y zf= x+y+z2 下面三种表示方法有什么不同的含义?(1)f=3*x^2+5*x+2(2)f='3*x^2+5*x+2'(3)x=sym('x')f=3*x^2+5*x+2(1)f=3*x^2+5*x+2表示在给定x时,将3*x^2+5*x+2的数值运算结果赋值给变量f,如果没有给定x则指示错误信息。

(2)f='3*x^2+5*x+2'表示将字符串'3*x^2+5*x+2'赋值给字符变量f,没有任何计算含义,因此也不对字符串中的内容做任何分析。

(3)x=sym('x')f=3*x^2+5*x+2表示x是一个符号变量,因此算式f=3*x^2+5*x+2就具有了符号函数的意义,f也自然成为符号变量了。

3 用符号函数法求解方程a t2+b*t+c=0。

>> r=solve('a*t^2+b*t+c=0','t')[ 1/2/a*(-b+(b^2-4*a*c)^(1/2))] [ 1/2/a*(-b-(b^2-4*a*c)^(1/2))]4 用符号计算验证三角等式:sin(ϕ1)cos(ϕ2)-cos(ϕ1)sin(ϕ2) =sin(ϕ1-ϕ2) >> syms phi1 phi2;>> y=simple(sin(phi1)*cos(phi2)-cos(phi1)*sin(phi2)) y =sin(phi1-phi2)5 求矩阵⎥⎦⎤⎢⎣⎡=22211211a a a a A 的行列式值、逆和特征根。

MATLAB运算基础(第2章)答案

MATLAB运算基础(第2章)答案

实验01讲评、参考答案讲评未交实验报告的同学名单数学:6人(11、12级)信科:12-04, 12-22, 13-47批改情况:问题1:不仔细,式子中出错。

问题2:提交的过程不完整。

问题3:使用语句尾分号(;)不当,提交的过程中不该显示的结果显示。

问题4:截屏窗口没有调整大小。

附参考答案:《MATLAB软件》课内实验王平实验01 MATLAB运算基础(第2章MATLAB数据及其运算)一、实验目的1. 熟悉启动和退出MATLAB 的方法。

2. 熟悉MATLAB 命令窗口的组成。

3. 掌握建立矩阵的方法。

4. 掌握MATLAB 各种表达式的书写规则以及常用函数的使用。

二、实验内容1. 数学表达式计算先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。

1.1 计算三角函数122sin 851z e=+(注意:度要转换成弧度,e 2如何给出) 示例:点击Command Window 窗口右上角的,将命令窗口提出来成悬浮窗口,适当调整窗口大小。

命令窗口中的执行过程:1.2 计算自然对数221ln(1)2z x x =++,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦(提示:clc 命令擦除命令窗口,clear 则清除工作空间中的所有变量,使用时注意区别,慎用clear 命令。

应用点乘方) 命令窗口中的执行过程:1.3 求数学表达式的一组值0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+=++=--提示:利用冒号表达式生成a 向量,求各点的函数值时用点乘运算。

命令窗口中的执行过程:1.4 求分段函数的一组值2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5提示:用逻辑表达式求分段函数值。

命令窗口中的执行过程:1.5 对工作空间的操作接着显示MATLAB当前工作空间的使用情况并保存全部变量提示:用到命令who, whos, save, clear, load,请参考教材相关内容。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章符号运算习题2及解答1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”符号对象?3/7+0.1; sym(3/7+0.1); sym('3/7+0.1'); vpa(sym(3/7+0.1))〖目的〗●不能从显示形式判断数据类型,而必须依靠class指令。

〖解答〗c1=3/7+0.1c2=sym(3/7+0.1)c3=sym('3/7+0.1')c4=vpa(sym(3/7+0.1))Cs1=class(c1)Cs2=class(c2)Cs3=class(c3)Cs4=class(c4)c1 =0.5286c2 =37/70c3 =0.52857142857142857142857142857143c4 =0.52857142857142857142857142857143Cs1 =doubleCs2 =symCs3 =symCs4 =sym2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是自由符号变量.sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)')〖目的〗●理解自由符号变量的确认规则。

〖解答〗symvar(sym('sin(w*t)'),1)ans =wsymvar(sym('a*exp(-X)'),1)ans =asymvar(sym('z*exp(j*th)'),1) ans = z5求符号矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=333231232221131211a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。

〖目的〗● 理解subexpr 指令。

〖解答〗A=sym('[a11 a12 a13;a21 a22 a23;a31 a32 a33]')DA=det(A) IA=inv(A);[IAs,d]=subexpr(IA,d) A =[ a11, a12, a13] [ a21, a22, a23] [ a31, a32, a33] DA =a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31 IAs = [ d*(a22*a33 - a23*a32), -d*(a12*a33 - a13*a32), d*(a12*a23 - a13*a22)] [ -d*(a21*a33 - a23*a31), d*(a11*a33 - a13*a31), -d*(a11*a23 - a13*a21)] [ d*(a21*a32 - a22*a31), -d*(a11*a32 - a12*a31), d*(a11*a22 - a12*a21)] d =1/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31)8(1)通过符号计算求t t y sin )(=的导数dtdy。

(2)然后根据此结果,求-=0t dtdy 和2π=t dtdy 。

〖目的〗● diff, limit 指令的应用。

● 如何理解运行结果。

〖解答〗syms ty=abs(sin(t))d=diff(y) %求dy/dtd0_=limit(d,t,0,'left') %求dy/dt|t=0- dpi_2=limit(d,t,pi/2) %求dy/dt|t=pi/2 y =abs(sin(t)) d =sign(sin(t))*cos(t) d0_ = -1dpi_2 = 09求出dx x e x sin 7.110⎰--ππ的具有64位有效数字的积分值。

〖目的〗● 符号积分的解析解和符号数值解。

● 符号计算和数值计算的相互校验。

〖解答〗(1)符号积分syms x clear syms xy=exp(-abs(x))*abs(sin(x))si=vpa(int(y,-10*pi,1.7*pi),64) y =abs(sin(x))/exp(abs(x)) si =1.087849499412904913166671875948174520895458535212845987519414166(2)数值计算复验xx=-10*pi:pi/100:1.7*pi;sn=trapz(exp(-abs(xx)).*abs(sin(xx)))*pi/100 sn =1.087710计算二重积分⎰⎰+211222)(x dydx y x 。

〖目的〗● 变上限二重积分的符号计算法。

〖解答〗syms x y f=x^2+y^2;r=int(int(f,y,1,x^2),x,1,2) r =1006/10511在]2,0[π区间,画出dt ttx y x⎰=sin )(曲线,并计算)5.4(y 。

〖目的〗● 在符号计算中,经常遇到计算结果是特殊经典函数的情况。

● 如何应用subs 获得超过16位有效数字的符号数值结果。

● 初步尝试ezplot 指令的简便。

〖解答〗(1)符号计算syms t x; f=sin(t)/t;y=int(f,t,0,x) % 将得到一个特殊经典函数 y5=subs(y,x,sym('4.5')) ezplot(y,[0,2*pi]) y =sinint(x) y5 =(2)数值计算复验tt=0:0.001:4.5; tt(1)=eps;yn=trapz(sin(tt)./tt)*0.001 yn =1.654112在0>n 的限制下,求xdx n y n ⎰=20sin )(π的一般积分表达式,并计算)31(y 的32位有效数字表达。

〖目的〗● 一般符号解与高精度符号数值解。

〖解答〗syms xsyms n positivef=sin(x)^n;yn=int(f,x,0,pi/2)y3s=vpa(subs(yn,n,sym('1/3'))) y3d=vpa(subs(yn,n,1/3)) yn =beta(1/2, n/2 + 1/2)/2 y3s =1.2935547796148952674767575125656 y3d =1.293554779614895178241340545355313有序列k a k x =)(,k b k h =)(,(在此0≥k ,b a ≠),求这两个序列的卷积∑=-=kn n k x n h k y 0)()()(。

〖目的〗● 符号离散卷积直接法和变换法。

〖解答〗 (1)直接法syms a b k n x=a^k; h=b^k;w=symsum(subs(h,k,n)*subs(x,k,k-n),n,0,k) %据定义 y1=simple(w) w =piecewise([a = b, b^k + b^k*k], [a <> b, (a*a^k - b*b^k)/(a - b)]) y1 =piecewise([a = b, b^k + b^k*k], [a <> b, (a*a^k - b*b^k)/(a - b)])(2)变换法(复验)syms zX=ztrans(a^k,k,z); H=ztrans(b^k,k,z);y2=iztrans(H*X,z,k) %通过Z 变换及反变换 y2 =piecewise([b <> 0, (a*a^k)/(a - b) - (b*b^k)/(a - b)])〖说明〗● 符号计算不同途径产生的结果在形式上有可能不同,而且往往无法依靠符号计算本身的指令是它们一致。

此时,必须通过手工解决。

15求0,)(>=-ααt Ae t f 的Fourier 变换。

〖目的〗● 符号变量限定性定义的作用。

● fourier 指令的应用。

〖解答〗syms A t wa=sym('a','positive'); f=A*exp(-a*abs(t)); y=fourier(f,t,w) F=simple(y) y =(2*A*a)/(a^2 + w^2)F =(2*A*a)/(a^2 + w^2)17求4633)(23++++=s s s s s F 的Laplace 反变换。

〖解答〗syms s tF=(s+3)/(s^3+3*s^2+6*s+4); f=simple(ilaplace(F,s,t)) f =(3^(1/2)*sin(3^(1/2)*t) - 2*cos(3^(1/2)*t) + 2)/(3*exp(t))19求Tk ke k f )(λ-=的Z 变换表达式。

〖目的〗● 注意:变换中,被变换变量的约定。

〖解答〗syms lambda k T z;f_k=k*exp(-lambda*k*T);F_z=simple(ztrans(f_k,k,z)) F_z =(z*exp(T*lambda))/(z*exp(T*lambda) - 1)^220求方程2,122==+xy y x 的解。

〖目的〗● solve 指令中,被解方程的正确书写,输出量的正确次序。

〖解答〗eq1='x^2+y^2=1'; eq2='x*y=2';[x,y]=solve(eq1,eq2,'x','y') x =(1/2 + (15^(1/2)*i)/2)^(1/2)/2 - (1/2 + (15^(1/2)*i)/2)^(3/2)/2 - (1/2 + (15^(1/2)*i)/2)^(1/2)/2 + (1/2 + (15^(1/2)*i)/2)^(3/2)/2 (1/2 - (15^(1/2)*i)/2)^(1/2)/2 - (1/2 - (15^(1/2)*i)/2)^(3/2)/2 - (1/2 - (15^(1/2)*i)/2)^(1/2)/2 + (1/2 - (15^(1/2)*i)/2)^(3/2)/2 y =(1/2 + (15^(1/2)*i)/2)^(1/2) -(1/2 + (15^(1/2)*i)/2)^(1/2) (1/2 - (15^(1/2)*i)/2)^(1/2) -(1/2 - (15^(1/2)*i)/2)^(1/2)23求微分方程045=+'x y y 的通解,并绘制任意常数为1时解的图形。

相关文档
最新文档