北京科技大学《matlab和数学实验》 第二次课
(完整版)MATLAB数学实验第二版答案(胡良剑)

数学实验答案Chapter 1Page20,ex1(5) 等于[exp(1),exp(2);exp(3),exp(4)](7) 3=1*3, 8=2*4(8) a为各列最小值,b为最小值所在的行号(10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture(11) 答案表明:编址第2元素满足不等式(30>=20)和编址第4元素满足不等式(40>=10)(12) 答案表明:编址第2行第1列元素满足不等式(30>=20)和编址第2行第2列元素满足不等式(40>=10)Page20, ex2(1)a, b, c的值尽管都是1,但数据类型分别为数值,字符,逻辑,注意a与c相等,但他们不等于b(2)double(fun)输出的分别是字符a,b,s,(,x,)的ASCII码Page20,ex3>> r=2;p=0.5;n=12;>> T=log(r)/n/log(1+0.01*p)Page20,ex4>> x=-2:0.05:2;f=x.^4-2.^x;>> [fmin,min_index]=min(f)最小值最小值点编址>> x(min_index)ans =0.6500 最小值点>> [f1,x1_index]=min(abs(f)) 求近似根--绝对值最小的点f1 =0.0328x1_index =24>> x(x1_index)ans =-0.8500>> x(x1_index)=[];f=x.^4-2.^x; 删去绝对值最小的点以求函数绝对值次小的点>> [f2,x2_index]=min(abs(f)) 求另一近似根--函数绝对值次小的点f2 =0.0630x2_index =65>> x(x2_index)ans =1.2500>> z=magic(10)z =92 99 1 8 15 67 74 51 58 4098 80 7 14 16 73 55 57 64 414 81 88 20 22 54 56 63 70 4785 87 19 21 3 60 62 69 71 2886 93 25 2 9 61 68 75 52 3417 24 76 83 90 42 49 26 33 6523 5 82 89 91 48 30 32 39 6679 6 13 95 97 29 31 38 45 7210 12 94 96 78 35 37 44 46 5311 18 100 77 84 36 43 50 27 59>> sum(z)>> sum(diag(z))>> z(:,2)/sqrt(3)>> z(8,:)=z(8,:)+z(3,:)Chapter 2Page 45 ex1先在编辑器窗口写下列M函数,保存为eg2_1.m function [xbar,s]=ex2_1(x)n=length(x);xbar=sum(x)/n;s=sqrt((sum(x.^2)-n*xbar^2)/(n-1));例如>>x=[81 70 65 51 76 66 90 87 61 77];>>[xbar,s]=ex2_1(x)Page 45 ex2s=log(1);n=0;while s<=100n=n+1;s=s+log(1+n);endm=nPage 40 ex3clear;F(1)=1;F(2)=1;k=2;x=0;e=1e-8; a=(1+sqrt(5))/2;while abs(x-a)>ek=k+1;F(k)=F(k-1)+F(k-2); x=F(k)/F(k-1);enda,x,k计算至k=21可满足精度clear;tic;s=0;for i=1:1000000s=s+sqrt(3)/2^i;ends,toctic;s=0;i=1;while i<=1000000s=s+sqrt(3)/2^i;i=i+1;ends,toctic;s=0;i=1:1000000;s=sqrt(3)*sum(1./2.^i);s,tocPage 45 ex5t=0:24;c=[15 14 14 14 14 15 16 18 20 22 23 25 28 ...31 32 31 29 27 25 24 22 20 18 17 16];plot(t,c)Page 45 ex6(1)x=-2:0.1:2;y=x.^2.*sin(x.^2-x-2);plot(x,y)y=inline('x^2*sin(x^2-x-2)');fplot(y,[-2 2]) (2)参数方法t=linspace(0,2*pi,100);x=2*cos(t);y=3*sin(t); plot(x,y)(3)x=-3:0.1:3;y=x;[x,y]=meshgrid(x,y);z=x.^2+y.^2;surf(x,y,z)(4)x=-3:0.1:3;y=-3:0.1:13;[x,y]=meshgrid(x,y);z=x.^4+3*x.^2+y.^2-2*x-2*y-2*x.^2.*y+6;surf(x,y,z)(5)t=0:0.01:2*pi;x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z)(6)theta=linspace(0,2*pi,50);fai=linspace(0,pi/2,20); [theta,fai]=meshgrid(theta,fai);x=2*sin(fai).*cos(theta);y=2*sin(fai).*sin(theta);z=2*cos(fai);surf(x,y,z)(7)x=linspace(0,pi,100);y1=sin(x);y2=sin(x).*sin(10*x);y3=-sin(x);plot(x,y1,x,y2,x,y3)page45, ex7x=-1.5:0.05:1.5;y=1.1*(x>1.1)+x.*(x<=1.1).*(x>=-1.1)-1.1*(x<-1.1);plot(x,y)page45,ex9clear;close;x=-2:0.1:2;y=x;[x,y]=meshgrid(x,y);a=0.5457;b=0.7575;p=a*exp(-0.75*y.^2-3.75*x.^2-1.5*x).*(x+y>1);p=p+b*exp(-y.^2-6*x.^2).*(x+y>-1).*(x+y<=1);p=p+a*exp(-0.75*y.^2-3.75*x.^2+1.5*x).*(x+y<=-1);mesh(x,y,p)page45, ex10lookfor lyapunovhelp lyap>> A=[1 2 3;4 5 6;7 8 0];C=[2 -5 -22;-5 -24 -56;-22 -56 -16];>> X=lyap(A,C)X =1.0000 -1.0000 -0.0000-1.0000 2.0000 1.0000-0.0000 1.0000 7.0000Chapter 3Page65 Ex1>> a=[1,2,3];b=[2,4,3];a./b,a.\b,a/b,a\bans =0.5000 0.5000 1.0000ans =2 2 1ans =0.6552 一元方程组x[2,4,3]=[1,2,3]的近似解ans =0 0 00 0 00.6667 1.3333 1.0000矩阵方程[1,2,3][x11,x12,x13;x21,x22,x23;x31,x32,x33]=[2,4,3]的特解Page65 Ex 2(1)>> A=[4 1 -1;3 2 -6;1 -5 3];b=[9;-2;1];>> rank(A), rank([A,b]) [A,b]为增广矩阵ans =3ans =3 可见方程组唯一解>> x=A\bx =2.38301.48942.0213(2)>> A=[4 -3 3;3 2 -6;1 -5 3];b=[-1;-2;1];>> rank(A), rank([A,b])ans =3ans =3 可见方程组唯一解>> x=A\bx =-0.4706-0.2941(3)>> A=[4 1;3 2;1 -5];b=[1;1;1];>> rank(A), rank([A,b])ans =2ans =3 可见方程组无解>> x=A\bx =0.3311-0.1219 最小二乘近似解(4)>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1 2 3]';%注意b的写法>> rank(a),rank([a,b])ans =3ans =3 rank(a)==rank([a,b])<4说明有无穷多解>> a\bans =110 一个特解Page65 Ex3>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1,2,3]';>> x=null(a),x0=a\bx =-0.62550.6255-0.20850.4170x0 =11通解kx+x0Page65 Ex 4>> x0=[0.2 0.8]';a=[0.99 0.05;0.01 0.95];>> x1=a*x, x2=a^2*x, x10=a^10*x>> x=x0;for i=1:1000,x=a*x;end,xx =0.83330.1667>> x0=[0.8 0.2]';>> x=x0;for i=1:1000,x=a*x;end,xx =0.83330.1667>> [v,e]=eig(a)v =0.9806 -0.70710.1961 0.7071e =1.0000 00 0.9400>> v(:,1)./xans =1.17671.1767 成比例,说明x是最大特征值对应的特征向量Page65 Ex5用到公式(3.11)(3.12)>> B=[6,2,1;2.25,1,0.2;3,0.2,1.8];x=[25 5 20]'; >> C=B/diag(x)C =0.2400 0.4000 0.05000.0900 0.2000 0.01000.1200 0.0400 0.0900>> A=eye(3,3)-CA =0.7600 -0.4000 -0.0500-0.0900 0.8000 -0.0100-0.1200 -0.0400 0.9100>> D=[17 17 17]';x=A\Dx =37.569625.786224.7690Page65 Ex 6(1)>> a=[4 1 -1;3 2 -6;1 -5 3];det(a),inv(a),[v,d]=eig(a) ans =-94ans =0.2553 -0.0213 0.04260.1596 -0.1383 -0.22340.1809 -0.2234 -0.0532v =0.0185 -0.9009 -0.3066-0.7693 -0.1240 -0.7248-0.6386 -0.4158 0.6170d =-3.0527 0 00 3.6760 00 0 8.3766(2)>> a=[1 1 -1;0 2 -1;-1 2 0];det(a),inv(a),[v,d]=eig(a) ans =1ans =2.0000 -2.0000 1.00001.0000 -1.0000 1.00002.0000 -3.0000 2.0000v =-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i-0.5773 0.5774 0.5774-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000id =1.0000 0 00 1.0000 + 0.0000i 00 0 1.0000 - 0.0000i(3)>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]A =5 76 57 10 8 76 8 10 95 7 9 10>> det(A),inv(A), [v,d]=eig(A)ans =1ans =68.0000 -41.0000 -17.0000 10.0000-41.0000 25.0000 10.0000 -6.0000-17.0000 10.0000 5.0000 -3.000010.0000 -6.0000 -3.0000 2.0000v =0.8304 0.0933 0.3963 0.3803-0.5016 -0.3017 0.6149 0.5286-0.2086 0.7603 -0.2716 0.55200.1237 -0.5676 -0.6254 0.5209d =0.0102 0 0 00 0.8431 0 00 0 3.8581 00 0 0 30.2887(4)(以n=5为例)方法一(三个for)n=5;for i=1:n, a(i,i)=5;endfor i=1:(n-1),a(i,i+1)=6;endfor i=1:(n-1),a(i+1,i)=1;enda方法二(一个for)n=5;a=zeros(n,n);a(1,1:2)=[5 6];for i=2:(n-1),a(i,[i-1,i,i+1])=[1 5 6];enda(n,[n-1 n])=[1 5];a方法三(不用for)n=5;a=diag(5*ones(n,1));b=diag(6*ones(n-1,1));c=diag(ones(n-1,1));a=a+[zeros(n-1,1),b;zeros(1,n)]+[zeros(1,n);c,zeros(n-1,1)] 下列计算>> det(a)ans =665>> inv(a)ans =0.3173 -0.5865 1.0286 -1.6241 1.9489-0.0977 0.4887 -0.8571 1.3534 -1.62410.0286 -0.1429 0.5429 -0.8571 1.0286-0.0075 0.0376 -0.1429 0.4887 -0.58650.0015 -0.0075 0.0286 -0.0977 0.3173>> [v,d]=eig(a)v =-0.7843 -0.7843 -0.9237 0.9860 -0.92370.5546 -0.5546 -0.3771 -0.0000 0.3771-0.2614 -0.2614 0.0000 -0.1643 0.00000.0924 -0.0924 0.0628 -0.0000 -0.0628-0.0218 -0.0218 0.0257 0.0274 0.0257d =0.7574 0 0 0 00 9.2426 0 0 00 0 7.4495 0 00 0 0 5.0000 00 0 0 0 2.5505Page65 Ex 7(1)>> a=[4 1 -1;3 2 -6;1 -5 3];[v,d]=eig(a)v =0.0185 -0.9009 -0.3066-0.7693 -0.1240 -0.7248-0.6386 -0.4158 0.6170d =-3.0527 0 00 3.6760 00 0 8.3766>> det(v)ans =-0.9255 %v行列式正常, 特征向量线性相关,可对角化>> inv(v)*a*v 验算ans =-3.0527 0.0000 -0.00000.0000 3.6760 -0.0000-0.0000 -0.0000 8.3766>> [v2,d2]=jordan(a) 也可用jordanv2 =0.0798 0.0076 0.91270.1886 -0.3141 0.1256-0.1605 -0.2607 0.4213 特征向量不同d2 =8.3766 0 00 -3.0527 - 0.0000i 00 0 3.6760 + 0.0000i>> v2\a*v2ans =8.3766 0 0.00000.0000 -3.0527 0.00000.0000 0.0000 3.6760>> v(:,1)./v2(:,2) 对应相同特征值的特征向量成比例ans =2.44912.44912.4491(2)>> a=[1 1 -1;0 2 -1;-1 2 0];[v,d]=eig(a)v =-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i-0.5773 0.5774 0.5774-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000id =1.0000 0 00 1.0000 + 0.0000i 00 0 1.0000 - 0.0000i>> det(v)ans =-5.0566e-028 -5.1918e-017i v的行列式接近0, 特征向量线性相关,不可对角化>> [v,d]=jordan(a)v =1 0 11 0 01 -1 0d =1 1 00 1 10 0 1 jordan标准形不是对角的,所以不可对角化(3)>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]A =5 76 57 10 8 76 8 10 95 7 9 10>> [v,d]=eig(A)v =0.8304 0.0933 0.3963 0.3803-0.5016 -0.3017 0.6149 0.5286-0.2086 0.7603 -0.2716 0.55200.1237 -0.5676 -0.6254 0.5209d =0.0102 0 0 00 0.8431 0 00 0 3.8581 00 0 0 30.2887>> inv(v)*A*vans =0.0102 0.0000 -0.0000 0.00000.0000 0.8431 -0.0000 -0.0000-0.0000 0.0000 3.8581 -0.0000-0.0000 -0.0000 0 30.2887本题用jordan不行, 原因未知(4)参考6(4)和7(1)Page65 Exercise 8只有(3)对称, 且特征值全部大于零, 所以是正定矩阵. Page65 Exercise 9(1)>> a=[4 -3 1 3;2 -1 3 5;1 -1 -1 -1;3 -2 3 4;7 -6 -7 0]>> rank(a)ans =3>> rank(a(1:3,:))ans =2>> rank(a([1 2 4],:)) 1,2,4行为最大无关组ans =3>> b=a([1 2 4],:)';c=a([3 5],:)';>> b\c 线性表示的系数ans =0.5000 5.0000-0.5000 1.00000 -5.0000Page65 Exercise 10>> a=[1 -2 2;-2 -2 4;2 4 -2]>> [v,d]=eig(a)v =0.3333 0.9339 -0.12930.6667 -0.3304 -0.6681-0.6667 0.1365 -0.7327d =-7.0000 0 00 2.0000 00 0 2.0000>> v'*vans =1.0000 0.0000 0.00000.0000 1.0000 00.0000 0 1.0000 v确实是正交矩阵Page65 Exercise 11设经过6个电阻的电流分别为i1, ..., i6. 列方程组如下20-2i1=a; 5-3i2=c; a-3i3=c; a-4i4=b; c-5i5=b; b-3i6=0;i1=i3+i4;i5=i2+i3;i6=i4+i5;计算如下>> A=[1 0 0 2 0 0 0 0 0;0 0 1 0 3 0 0 0 0;1 0 -1 0 0 -3 0 0 0; 1 -1 0 0 0 0 -4 0 0;0 -1 1 0 0 0 0 -5 0;0 1 0 0 0 0 0 0 -3; 0 0 0 1 0 -1 -1 0 0;0 0 0 0 -1 -1 0 1 0;0 0 0 0 0 0 -1 -1 1];>>b=[20 5 0 0 0 0 0 0 0]'; A\bans =13.34536.44018.54203.3274-1.18071.60111.72630.42042.1467Page65 Exercise 12>> A=[1 2 3;4 5 6;7 8 0];>> left=sum(eig(A)), right=sum(trace(A))left =6.0000right =6>> left=prod(eig(A)), right=det(A) 原题有错, (-1)^n应删去left =27.0000right =27>> fA=(A-p(1)*eye(3,3))*(A-p(2)*eye(3,3))*(A-p(3)*eye(3,3)) fA =1.0e-012 *0.0853 0.1421 0.02840.1421 0.1421 0-0.0568 -0.1137 0.1705>> norm(fA) f(A)范数接近0ans =2.9536e-013Chapter 4Page84 Exercise 1(1)roots([1 1 1])(2)roots([3 0 -4 0 2 -1])(3)p=zeros(1,24);p([1 17 18 22])=[5 -6 8 -5];roots(p)(4)p1=[2 3];p2=conv(p1, p1);p3=conv(p1, p2);p3(end)=p3(end)-4; %原p3最后一个分量-4roots(p3)Page84 Exercise 2fun=inline('x*log(sqrt(x^2-1)+x)-sqrt(x^2-1)-0.5*x');fzero(fun,2)Page84 Exercise 3fun=inline('x^4-2^x');fplot(fun,[-2 2]);grid on;fzero(fun,-1),fzero(fun,1),fminbnd(fun,0.5,1.5)Page84 Exercise 4fun=inline('x*sin(1/x)','x');fplot(fun, [-0.1 0.1]);x=zeros(1,10);for i=1:10, x(i)=fzero(fun,(i-0.5)*0.01);end;x=[x,-x]Page84 Exercise 5fun=inline('[9*x(1)^2+36*x(2)^2+4*x(3)^2-36;x(1)^2-2*x(2)^2-20*x(3);16*x(1)-x(1)^3-2*x(2)^ 2-16*x(3)^2]','x');[a,b,c]=fsolve(fun,[0 0 0])Page84 Exercise 6fun=@(x)[x(1)-0.7*sin(x(1))-0.2*cos(x(2)),x(2)-0.7*cos(x(1))+0.2*sin(x(2))];[a,b,c]=fsolve(fun,[0.5 0.5])Page84 Exercise 7clear; close; t=0:pi/100:2*pi;x1=2+sqrt(5)*cos(t); y1=3-2*x1+sqrt(5)*sin(t);x2=3+sqrt(2)*cos(t); y2=6*sin(t);plot(x1,y1,x2,y2); grid on; 作图发现4个解的大致位置,然后分别求解y1=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[1.5,2])y2=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[1.8,-2])y3=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[3.5,-5])y4=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[4,-4])Page84 Exercise 8(1)clear;fun=inline('x.^2.*sin(x.^2-x-2)');fplot(fun,[-2 2]);grid on; 作图观察x(1)=-2;x(3)=fminbnd(fun,-1,-0.5);x(5)=fminbnd(fun,1,2);fun2=inline('-x.^2.*sin(x.^2-x-2)');x(2)=fminbnd(fun2,-2,-1);x(4)=fminbnd(fun2,-0.5,0.5);x(6)=2feval(fun,x)答案: 以上x(1)(3)(5)是局部极小,x(2)(4)(6)是局部极大,从最后一句知道x(1)全局最小,x(2)最大。
matlab及应用实验指导书08.9

data=[3 9 45 6; 7 16 -1 5] for n=data x=n(1)-n(2) end
(3)For 循环可按需要嵌套。
for n=1:5 for m=1:5 A(n,m)=n^2+m^2 end disp(n) end x=zeros(1,10); for n=1:10 x(n)=sin(n*pi/10); end
x=0:0.1:2*pi; y=sin(x); x1 =0:0.1:pi/2; y1= sin(x1); plot(x,y,'-r') hold on fill([x1,pi/2],[y1,0],'b')
将上面最后一句分别改为 fill(x1,y1,’b’),情况如何变化。
(二) 三维曲线图
格式 plot3(X,Y,Z,S)
x=linspace(0,2*pi,30); y=sin(x);plot(x,y)
(3)绘制 y=sin(x)图形
x=0:0.1:2*pi; y=sin(x); plot(x,y)
可以给图形加标记,格栅线
x =0:0.1:2*pi; y=sin(x); plot(x,y,'r-') title('正弦曲线') xlabel('自变量 x') ylabel('函数 y=sinx') text(5.5,0,' y=sinx') grid
1
实验一 熟悉 MATLAB 环境
一、实验目的 1、熟悉 MATLAB 主界面,并学会简单的菜单操作; 2、学会简单的矩阵输入与运算符; 3、掌握部分绘图函数。
二、实验原理 MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各
北京科技大学数学大作业物理组

《Matlab数学实验》大作业研究课题轻杆单摆振动的周期和运动规律学院数理学院班级物理1101组长周慧斌组员童鑫周涛2012年12月一、应用题目及背景单摆是质点振动系统的一种,是最简单的摆。
绕一个悬点来回摆动的物体,都称为摆,但其周期一般和物体的形状、大小及密度的分布有关。
但若把尺寸很小的质块悬于一端固定的长度且不能伸长的轻杆(质量可忽略不计)上,把质块拉离平衡位置,放手后质块往复振动,此即轻杆单摆的振动问题。
当轻杆和过悬点铅垂线所成角度小于10°时,可视为质点的振动周期 T只和当地的重力加速度g有关,而和质块的质量、形状和振幅的大小都无关系,其运动状态可用简谐振动公式表示,称为单摆或数学摆。
如果振动的角度大于 10°,则振动的周期将随振幅的增加而变大,就不成为单摆了。
如摆球的尺寸相当大,轻杆的质量不能忽略,就成为复摆(物理摆),周期就和摆球的尺寸有关了。
本文将从严格的物理学角度,应用Matlab软件对各种角度下的轻杆类单摆的周期和运动规律进行模拟分析。
此项研究对物理学其它模型的研究,各种科研活动中精密仪器的研制具有重要指导意义。
此项研究解决的主要问题如下:1.设想一长为l的轻杆,连接一个质量为m的摆球,形成一个单摆,不计摩擦。
建立单摆的周期与角振幅关系的数学模型,并用matlab 进行曲线模拟.2.编程演示单摆振动的动画,比较单摆振动和简谐振动的规律。
3.当单摆角振幅的度数为1°到7 °时(间隔为1 °),将单摆运动的角位置和角速度与简谐振动进行比较。
当单摆角振幅的度数为30 °到150 °时(间隔为30 °),另加179 ° ,同样进行比较。
二、数学模型的建立如图1所示,设角位置为θ,摆锤的运动方程为即:在小角度的情况下,sinθ ≈ θ,可得ω0为圆频率: 振动周期为:图1 可见:在小角振动的情况下,单摆的周期与角振幅无关,这称为单摆的等时性。
数学建模之绘图

绘制三维图形时生 成空间曲面的格点。
等价于
[X,Y,Z]=meshgrid(x,x,x)
等价于
说明: x是区间[x0,xm]上分划点组成的m维向量; y是区间[y0,yn]上分划点组成的n维向量; 输出变量X与Y都是n×m矩阵; 矩阵X的行向量都是向量x; 矩阵Y的列向量都是向量y。
legend作用是:对图形进行图例标注
例2的绘图结果
图形的重叠绘制hold hold 在hold on与 hold off之间进行切换 hold on 保留当前图形和它的轴,使此后图形叠放在当前图形上 hold off返回Matlab的缺省状态。此后图形指令运作将抹掉当前窗中的旧图形,然后画上新图形。
说明:2、当x为n维向量,y为n * m矩阵时,plot(x,y) 按向量x分别与矩阵y的每一列匹配,画出m条曲线或折线。
例 x=[ 3 4 7]; y=[4 5 6 5 4 7 9 5 1 4 2 5]; plot (x,y)
可以。 x=a:h:b 函数f(x)在绘图区间[a,b]上的自变量点向 量数据 y=f(x) 对应的函数值向量 步长h可以任意选取,步长越小,曲线越光滑。
meshgrid的调用形式是:
[X,Y]=meshgrid(x,y)
[X,Y]=meshgrid(x)
[X,Y,Z]=meshgrid(x,y,z)
matlab实验报告(实验4)

学生实验报告开课学院及实验室: 机电学院2012年12月21日学院机电学院年级、专业、班姓名学号实验课程名称MATLAB程序设计成绩实验项目名称实验4: 数据和函数的可视化指导老师一、实验目的1、掌握MATLAB绘图的基本步骤和相关指令调用的先后顺序。
2、掌握MATLAB绘图指令的调用方法。
二、实验内容数学函数从形式上可以分为离散函数和连续函数。
MATLAB对这两种函数数据的可视化都提供了相应的指令。
仔细阅读教材【例5.1-1】的实现代码, 运行并保存结果;并改用stem函数, 画出【例5.1-1】的序列图。
仔细阅读教材【例5.1-2】的实现代码, 运行并保存结果;并分别使用描点和连折线方式, 画出连续函数y=xcosx的近似图形(采样点数自定, 要求画出的图尽量接近原连续函数的图)。
仔细阅读【例5.2-2】的实现代码, 理解plot指令画多条曲线的运用方法, 运行并保存结果;并使用plot函数和legend函数, 在同一个图形窗口上画出y=sint和y=sin(2t)在[0,2pi]区间上的图形, 并标出图例。
仔细阅读【例5.2-4】的实现代码, 理解图形标识选项的运用方法, 运行并保存结果;并修改代码, 把“sin(t)”字体改为正体, 大小改为20, “极大值”改为宋体。
阅读【例5.2-6】, 理解使用hold on指令画多幅图的方法, 运行并保存结果。
阅读【例5.2-8】, 理解使用subplot函数画多个子图的方法, 运行并保存结果。
(1)综合实验: 阅读以下关于通过绘制二阶系统阶跃响应综合演示图形标识的示例, 理解示例中所有图形标识指令的作用, 掌握各个图形标识指令的运用方法, 并在原指令上改动以实现以下功能:(2)把横坐标范围改为0至5pi, 纵坐标范围改为0至2;(3)把图中的横轴的刻度改为从0开始到4pi, 中间各点间隔为pi/2;纵轴刻度改为从0开始到1.5, 中间各点间隔为0.3;(4)把图中的α改为σ。
最新Matlab数学实验第二版课后习题答案

Matlab数学实验第二版课后习题答案胡良剑第一章%Page20,ex1(5) 等于[exp(1),exp(2);exp(3),exp(4)](7) 3=1*3, 8=2*4(8) a为各列最小值,b为最小值所在的行号(10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture(11) 答案表明:编址第2元素满足不等式(30>=20)和编址第4元素满足不等式(40>=10)(12) 答案表明:编址第2行第1列元素满足不等式(30>=20)和编址第2行第2列元素满足不等式(40>=10)%Page20, ex2(1)a, b, c的值尽管都是1,但数据类型分别为数值,字符,逻辑,注意a与c相等,但他们不等于b(2)double(fun)输出的分别是字符a,b,s,(,x,)的ASCII码%Page20,ex3>> r=2;p=0.5;n=12;>> T=log(r)/n/log(1+0.01*p)T =11.5813%Page20,ex4>> x=-2:0.05:2;f=x.^4-2.^x;>> [fmin,min_index]=min(f)fmin =-1.3907 %最小值min_index =54 %最小值点编址>> x(min_index)ans =0.6500 %最小值点>> [f1,x1_index]=min(abs(f)) %求近似根--绝对值最小的点f1 =0.0328x1_index =24>> x(x1_index)ans =-0.8500>> x(x1_index)=[];f=x.^4-2.^x; %删去绝对值最小的点以求函数绝对值次小的点>> [f2,x2_index]=min(abs(f)) %求另一近似根--函数绝对值次小的点f2 =0.0630x2_index =65>> x(x2_index)ans =1.2500%Page20,ex5>> z=magic(10)z =92 99 1 8 15 67 74 51 58 4098 80 7 14 16 73 55 57 64 414 81 88 20 22 54 56 63 70 4785 87 19 21 3 60 62 69 71 2886 93 25 2 9 61 68 75 52 3417 24 76 83 90 42 49 26 33 6523 5 82 89 91 48 30 32 39 6679 6 13 95 97 29 31 38 45 7210 12 94 96 78 35 37 44 46 5311 18 100 77 84 36 43 50 27 59>> sum(z)ans =505 505 505 505 505 505 505 505 505 505>> sum(diag(z))ans =505>> z(:,2)/sqrt(3)ans =57.157746.188046.765450.229553.693613.85642.88683.46416.928210.3923>> z(8,:)=z(8,:)+z(3,:)z =92 99 1 8 15 67 74 51 58 4098 80 7 14 16 73 55 57 64 414 81 88 20 22 54 56 63 70 4785 87 19 21 3 60 62 69 71 2886 93 25 2 9 61 68 75 52 3417 24 76 83 90 42 49 26 33 6523 5 82 89 91 48 30 32 39 6683 87 101 115 119 83 87 101 115 11910 12 94 96 78 35 37 44 46 5311 18 100 77 84 36 43 50 27 59 1小时单位负责人接到报告后,应当于1小时内向事故发生地县级以上人民政府安全生产监督管理部门和负有安全生产监督管理职责的有关部门报告。
数学实验第二次测验题及参考答案(09级)

数学实验第二次测验题及参考答案(09级)数学实验第二次测验题及参考答案一、写出下列MATLAB指令的运算结果.1. A=[1;2;3]; transpose(A)1 2 31 2 32. A=[1, 2, 3 ; 4, 5, 6 ]; B=A([1 2], [1,3]) , d=size(A)B =1 34 6d =2 33. a=1:3; b=linspace(1,3,3); x=sum(a.*b), y=cross(a, b)x = 14y = 0 0 04. A=[1,2, 3; 4,5,6; 7,8,9]; B=ones(3); C=A-BC =0 1 23 4 56 7 85. v=[1, 2, 3]; A=diag(v); E=eig(A), D=det(A)E=123D =66. x=[1,2,3,4,5]; [mean(x), median(x), range(x),sum(x), prod(x)]3 34 15 1207. x=[2,3,4]; a=cumsum(x) ,b=sort(x)a =2 5 9b =2 3 48.format rat; v=[1, 2, 3]; A=diag(v); inv(A)ans =1 0 00 1/2 00 0 1/39. [m,v]=normstat(1,4) % 求参数为1,4的正态分布的均值与方差m =1, v =16二、写出下列MATLAB指令的实验目的.1. dsolve('x*Dy+y-exp(-x)=0', 'y(1)=2*exp(1)', 'x')求微分方程0=-+'-x e y y x 在初始条件e y x 2|1==下的特解.2. u=[1,2,3],v=[0,3,2], w=[5, 2, 1]; dot(w, cross(u, v))计算向量u, v, w 的混合积.3. A=[1 2 3; 2 2 5; 3 5 1]; b=[1;2;3]; det(A); inv(A)*b利用逆矩阵解线性方程组=++=++=++3532522132321 321321x x x x x x x x x .4. A=[0 0 1; 0 1 1; 1 1 1; 1 0 0]; rref(A)求向量组)1,0,0(1=α,)1,1,0(2=α,)1,1,1(3=α,)0,0,1(4=α的秩.或对矩阵A 做行初等变换。
matlab作业第三次北京科技大学.doc

《数学实验》报告实验名称线性代数相关运算及数值方法计算定积分学院材料科学与工程专业班级材料科学与工程姓名学号2011年 10月一、 【实验目的】掌握矩阵的基本运算、特征值、特征向量和线性方程组的求解;能熟练运用数值方法求定积分。
二、 【实验任务】第五章第12、14、21 (1) (2)题,第七章第17(2)、18题。
三、 【实验程序】1. >> A=[1 1 1 1 1 1;2 2 2 2 2 2;3 3 3 3 3 3;4 4 4 4 4 4;5 5 5 5 5 5;6 6 6 6 6 6]>> A' >> det(A) >> rank(A) >> rref(A)2. >> A=[2 1 1;1 2 1;1 1 2] >> [V,D]=eig(A)>> poly(A) >> p=poly(A); >> poly2str(p,'x')3. >> A=[1 1 2 -1;-1 1 3 0;2 -3 4 -1]; >> rref(A) ans =1.0000 0 0 -0.5600 0 1.0000 0 -0.2000 0 0 1.0000 -0.1200结果分析:系数矩阵A 的秩为3,小于未知量个数4,有无穷多解,原方程组对应的通解方程组为:⎪⎩⎪⎨⎧===43422112.02.056.0xx x x x x 分别取⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡156.021x x 和⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡2.0112.021x x ,解得方程组的基础解系为: ⎪⎪⎩⎪⎪⎨⎧=56.0156.01ξ,⎪⎪⎩⎪⎪⎨⎧=112.02.0112.02ξ所以方程组的通解为:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡112.02.0112.056.0156.0214321k k x x x x ,其中21,k k 为任意实数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数学实验
三.Matlab空间曲面绘图
Meshgrid命令: • meshgrid的调用形式是: [X,Y]=meshgrid(x,y) 绘制二维图形时生成小矩形的格点 [X,Y]=meshgrid(x) 等价于[X,Y]=meshgrid(x,x) [X,Y,Z]=meshgrid(x,y,z)绘制三维图形时生成空间曲面的格点 [X,Y,Z]=meshgrid(x) 等价于[X,Y,Z]=meshgrid(x,x,x)
数学实验
10
数学实验
例2 :在同一图形窗口画出三个函数y = cos 2x , y = x2 , y = x的图形,自变量范围为:-2 x 2 解 Matlab命令: x=-2:0.1:2; ↙ plot(x,cos(2*x),x,x.^2,x,x) ↙ legend('cos(2x)','x^2','x')
15
数学实验
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
-1 -0.8 -0.6 -0.4 -0.2
0
0.2 0.4 0.6 0.8
1
16
4.图形的标注
• 图名标注title – title(‘String’)
数学实验
在图形的顶端加注文字作为图名
• 坐标轴标注xlabel,ylabel,zlabel(‘String’)
数学实验
第四章 Matlab 绘图
1
Matlab绘图
• 二维曲线 • 空间曲线 • 空间曲面
数学实验
2
数学实验
一、Matlab 二维曲线绘图
1、基本绘图指令 命令形式1:plot(y) 功能:画一条或多条折线图。 将(i,y(i)) 画出,x 取的是自然数
3
命令形式2:plot(x,y) 功能:画一条或多条折线图。
20
数学实验
21
数学实验
二.Matlab空间曲线绘图
• 三维空间曲线命令plot3 • plot3(x,y) • plot3(x,y,z,’String’) • plot3(x1,y1,z1,’String1’,x2,y2,z2, ’String2’,……) • plot3与plot的用法相同
22
X= 1 2 3
Y =1 1 1
123 123 123
222 333 444
Z=ones(size(X));mesh(X,Y,Z)
数学实验
2
1.5 1 (1,4,1)
0.5
(1,3,1)
(2,4,1) (1,2,1)
(2,3,1)
(3,4,1) (2,2,1)
(3,3,1) (2,1,1)
(3,2,1)
19
数学实验
• 例7 在同一坐标系中画出两个函数y = cos 2x ,y = x的图形, 自变量范围为:-2 x 2,函数y = cos 2x为红色实线, 函数y = x 为蓝色点划线。并加注标题,坐标轴。 解: Matlab命令为 clf x=-2:.1:2; y1=cos(2*x);y2=x; subplot(1,2,1) plot(x,y1,'r-',x,y2,'b-.'),grid on title('曲线y1=cos(2x)与y2=x') xlabel('x轴'),ylabel('y轴') gtext('y1=cos(2x)'),gtext('y2=x') legend('y1=cos(2x)','y2=x') subplot(1,2,2) plot (x,y1,x,y2)
其中,x,y 可以是向量或矩阵。
数学实验
说明:1、当x,y都是向量时,元素个数必须相等, plot(x,y) 按顺序连接各点(x(i),y(i))成一 条曲线或折线。
4
例:x=[1 2 3]; y=[3 2 5]; plot(x,y)
数学实验
5
数学实验
说明:2、当x为n维向量,y为n * m矩阵时,plot(x,y) 按向量x分别与矩阵y的每一列匹配,画出m 条曲线或折线。
28
数学实验
马鞍面与平面相交的形状
29
作业
数学实验
• P79 第6 8 9题
• 要求:程序及结果以Word的形式保存并 上交。
30
– xlabel(‘String’)
在当前图形的x轴旁边加入文字内容
– ylabel(‘String’)
在当前图形的y轴旁边加入文字内容
– zlabel(‘String’)
在当前图形的z轴旁边加入文字内容
17
数学实验
• 图形标注gtext – gtext(‘String’) 在鼠标指定位置上标注 说明:使用gtext指令后,会在当前图形上出现一个十字 叉,等待用户选定位置进行标注。移动鼠标到所需位置按 下鼠标左键,Matlab就在选定位置标上文字。
8
曲线y=sinx^2
数学实验
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
-5
-4
Hale Waihona Puke -3-2-1
0
1
2
3
4
5
9
命令形式3 :plot(x1,y1,x2,y2,x3,y3…) 功能:在同一图形窗口画出多条曲线 。
y1 f (x1), y2 f (x2 ), y3 f (x3 ),
数学实验
• Mesh命令介绍
– 利用函数meshgrid生成格点矩阵后,然后 求出各格点对应的函数值,就可以利用三维 网格命令mesh画出空间曲面。
– 函数mesh用来生成函数的网格曲面,即各 网格线段组成的曲面。
25
例:x=[1,2,3] y=[1,2,3,4] [X,Y]=meshgrid(x,y)
•图例标注legend legend(‘String1’,’ String2’,’ String3’,…) 当在一幅图中出现多种曲线时,结合在绘制时的不同线性与 颜色等特点,用户可以用legend命令进行说明。
18
数学实验
5.一个图形窗口多个子图的绘制
–subplot指令它不仅适用于二维图形而且也适用于三维 图形。其本质是将窗口分为几个区域,再在每个小曲域 中画图形。 –subplot(m,n,i) 把图形窗口分为mn个子图,并在 第i个子图中画图。
14
数学实验
例6 利用hold指令在同一坐标系中画出如下两条参数曲线,参 数曲线方程为:
x1 cos t, y1 sin t; x2 sin t, y2 sin 2t;
t满足 0 t 2
解 Matlab 命令为 t=0:pi/50:2*pi; plot(cos(t),sin(t),’b*’) ,grid on, hold on,plot(sin(t),sin(2*t),’r.’)
7
数学实验
例1 画出函数y = sin x2 在-5 x 5 的图形。
解: Matlab 命令: x=-5:0.1:5;↙ y=sin(x.^2); ↙ plot(x,y),grid on
X=a:h:b; 步长h可以任意选取, 步长越小,曲线越光滑。
grid on作用是:在图形中标出网格线
–hold
在hold on与 hold off之间进行切换
–hold on 保留当前图形和它的轴,使此后图形叠放在当前图形上
–hold off 返回Matlab的缺省状态。此后图形指令运作将抹掉
当前窗中的旧图形,然后画上新图形。
13
数学实验
3.线型、定点标记、颜色
• 二维绘图指令还提供一组控制曲线线型、标记类型、颜色的 开关。该开关总跟在一元或二元对的后面,具体如下: – plot(x,y,’ String’) – plot(x1,y1,’ String1’,x2,y2,’ String2’,…) 其中,string是字符串,该字符串由表4-1、表4-2表4-3 (见课本P44)中的字符组成。
23
数学实验
例:x=[1,2,3];y=[1,2,3,4]; [X,Y]=meshgrid(x,y)
X= 1 2 3
Y =1 1 1
123
222
123
333
123
444
例:x=[1,2,3] [X,Y]=meshgrid(x)
X= 1 2 3
Y =1 1 1
123
222
123
333
24
三维网格图命令Mesh命令
(3,1,1)
0
(1,1,1)
4
3
3
2.5
2
2
1.5
11
26
例:
x=1:.1:3;
y=1:.1:4;
[X,Y]=meshgrid(x,y);
Z=ones(size(X)); mesh(X,Y,Z)
数学实验
27
数学实验
• 例6 用平行截面法讨论由方程构成的马鞍面形状。p73
解:Matlab命令为
t=-10:0.1:10; [x,y]=meshgrid(t); z1=(x.^2-2*y.^2)+eps; subplot(1,3,1),mesh(x,y,z1),title('马鞍面') a=input('a=(-50<a<50)'), z2=a*ones(size(x)); subplot(1,3,2),mesh(x,y,z2),title('平面') r0=abs(z1-z2)<=1; zz=r0.*z2;yy=r0.*y;xx=r0.*x; subplot(1,3,3),plot3(xx(r0~=0),yy(r0~=0),zz(r~=0),'x') title('交线')