MATLAB教程2012a第5章习题解答-张志涌.doc

上传人:b****2 文档编号:1399122 上传时间:2022-10-22 格式:DOC 页数:13 大小:1.58MB
下载 相关 举报
MATLAB教程2012a第5章习题解答-张志涌.doc_第1页
第1页 / 共13页
MATLAB教程2012a第5章习题解答-张志涌.doc_第2页
第2页 / 共13页
MATLAB教程2012a第5章习题解答-张志涌.doc_第3页
第3页 / 共13页
MATLAB教程2012a第5章习题解答-张志涌.doc_第4页
第4页 / 共13页
MATLAB教程2012a第5章习题解答-张志涌.doc_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

MATLAB教程2012a第5章习题解答-张志涌.doc

《MATLAB教程2012a第5章习题解答-张志涌.doc》由会员分享,可在线阅读,更多相关《MATLAB教程2012a第5章习题解答-张志涌.doc(13页珍藏版)》请在冰豆网上搜索。

MATLAB教程2012a第5章习题解答-张志涌.doc

第5章数据和函数的可视化

习题5及解答

1已知椭圆的长、短轴,用“小红点线”画椭圆。

(参见图p5-1)

l

〖解答〗

clf

a=4;b=2;

t=0:

pi/80:

2*pi;

x=a*cos(t);

y=b*sin(t);

plot(x,y,'r.','MarkerSize',15)

axisequal

xlabel('x')

ylabel('y')

shg

图p5-1

2根据表达式绘制如图p5-2的心脏线。

(提示:

采用极坐标绘线指令polar)

〖解答〗

clf

theta=0:

pi/50:

2*pi;

rho=1-cos(theta);

h=polar(theta,rho,'-r'); %极坐标绘线指令。

h是所画线的图柄。

set(h,'LineWidth',4) %利用set设置h图形对象的“线宽”

axissquare %保证坐标的圆整性

title('\rho=1-cos\theta') %采用特殊字符映射

图p5-2

3A,B,C三个城市上半年每个月的国民生产总值如见表p5.1。

试画出如图p5-3所示的三城市上半年每月生产总值的累计直方图。

表p5.1各城市生产总值数据(单位:

亿元)

城市

1月

2月

3月

4月

5月

6月

A

170

120

180

200

190

220

B

120

100

110

180

170

180

C

70

50

80

100

95

120

〖目的〗

l借助MATLAB的帮助系统,学习直方图指令polar的使用。

lbar指令常用格式之一:

bar(x,Y,'style')。

x是自变量列向量;Y是与x行数相同的矩阵,Y的每一行被作为“一组”数据;style取stacked时,同一组数据中每个元素对应的直方条被相互层叠。

l在本例中,Y中的一列代表一个城市。

绘图时,各列的颜色,取自“色图”;图形窗的默认色图是jet。

〖解答〗

x=(1:

6)';

Y=[170,120,180,200,190,220;120,100,110,180,170,180;70,50,80,100,95,120]';

%以下两条指令是为了让读者看清x,Y中对应数据关系而写的。

它们不影响画图。

disp([blanks(5),'x',blanks(4),'YA',blanks(4),'YB',blanks(4),'YC'])

disp([x,Y])

%

bar(x,Y,'stacked'); %层叠直方条

colormap(cool); %采用cool色图

legend('A','B','C',2); %该指令的第4个输入量,用来控制图例的位置。

axis([0,7,0,600])

shg

xYAYBYC

117012070

212010050

318011080

4200180100

519017095

6220180120

图p5-3

4二阶线性系统的归一化(即令)冲激响应可表示为:

其中,为阻尼系数。

(1)希望在同一张图上,绘制区间内不同取值时的各条曲线(参见图p5-4)。

在此图上,的各条曲线为细蓝线;为粗黑线;为细红线;并且对最上方及最下方的两条曲线给出和的醒目标志。

(2)读者运行题下程序exmp504.m,可以发现该程序画出的曲线中没有“粗黑线”。

你能讲出原因吗?

如何对exmp504.m作最少的修改(比如只改一条指令),就可画出所需图形。

(提示:

该题深层次地暴露数值计算可能存在的隐患。

〖解答〗

clc,clf,clear;

t=(0:

0.05:

18)';N=length(t);

zeta=0.2:

0.2:

1.4;%可能画不出黑线。

<3>

%zeta=linspace(0.2,1.4,7);

L=length(zeta);

y=zeros(N,L);

holdon

fork=1:

L

zk=zeta(k);

beta=sqrt(abs(1-zk^2));

ifzk<1

y=1/beta*exp(-zk*t).*sin(beta*t);

plot(t,y,'b')

ifzk<0.4

text(2.2,0.63,'\zeta=0.2')

end

elseifzk==1

y=t.*exp(-t);

plot(t,y,'k','LineWidth',2)

else

y=(exp(-(zk-beta)*t)-exp(-(zk+beta)*t))/(2*beta);

plot(t,y,'r')

ifzk>1.2

text(0.3,0.14,'\zeta=1.4')

end

end

end

text(10,0.7,'\Delta\zeta=0.2')

axis([0,18,-0.4,0.8])

holdoff

boxon

gridon

图p5-4

5用绿实线绘制,,的三维曲线,曲线如图p5-5所示。

(提示:

使用plot3指令)

〖解答〗

t=(0:

0.01:

4)*pi;

x=sin(t);

y=cos(t);

z=t;

plot3(x,y,z,'-b.','linewidth',3)

boxon

图p5-5

〖解答〗

l不管是平面曲线,还是三维立体曲线,它们的描述函数中只有一个自由变量。

6在区域,绘制的如图p5-6的三维(透视)网格曲面。

〖解答〗

x=-3:

0.1:

3;

y=x;

[X,Y]=meshgrid(x,y);

Z=4*X.*exp(-X.^2-Y.^2);

mesh(X,Y,Z)

hiddenoff

axis([-3,3,-3,3,-2,2])

图p5-6

7在区间里,根据表达式,绘制如图p5-7所示的曲面。

〖解答〗

x=-4*pi:

pi/10:

4*pi;

y=x;

[X,Y]=meshgrid(x,y);

Q=X+Y;

Q=Q+(Q==0)*eps; %这保证:

Q中不包含NaN,图形不产生裂缝

Z=sin(Q)./Q;

surf(X,Y,Z)

shadinginterp

view([27,30]) %视角控制

xlabel('x'),ylabel('y'),zlabel('z')

title('z=sin(x+y)/(x+y)')

图p5.7

8试用图解法回答:

(1)方程组有多少个实数解?

(2)求出离最近、且满足该方程组的一个近似解。

〖解答一〗

若记,那么使用ezplot可以先后绘制出和的曲线,而这两个函数对应曲线的交点就是方程组的解。

(1)绘制曲线

clf

ezplot('y/(1+x^2+y^2)-0.1',[-2*pi,2*pi,-pi/2,7/2*pi])

holdon

ezplot('sin(x+cos(y))',[-2*pi,2*pi,-pi/2,7/2*pi])

title('CRROS-POINTSOF''y/(1+x^2+y^2)-0.1''AND''sin(x+cos(y))''')

holdoff

gridon

图p5-8-1

由图可知:

方程组有6个实数解。

(2)对图形(x=0,y=0)附近局部放大,然后找交点位置。

[x0,y0]=ginput(4)

x0=

-0.9801

-0.9801

-0.9801

-0.9801

y0=

0.2005

0.2005

0.2005

0.2005

图p5-8-2

(3)取平均,得近似解

x00=mean(x0)

y00=mean(y0)

x00=

-0.9801

y00=

0.2005

(4)验算

y00/(1+x00^2+y00^2)

ans=

0.1002

sin(x00+cos(y00))

ans=

-1.4841e-004

9制作如文件prob509.p运行时那样的色图变幻。

〖解答〗

functionprob_solve509

clearall

clf

[X,Y,Z]=sphere(40);

colormap(jet)

surf(X,Y,Z)

axisoff

axisequal

shadinginterp

light('position',[0-101.5],'style','infinite')

lightingphong

materialshiny

light;

lightingflat

set(gcf,'Color','w')

view([-160,30])

shg

C=jet;

CC=[C;flipud(C)];

colormap(CC)

disp('按任意键,观察色图变幻。

')

pause

spinmap(40,8)

图p5-9

10在区间内,根据,通过图形曲线表现“行波”。

做题前,请先运行prob510.p文件,观察演示。

图p5-10

〖解答〗

functionprob510

%prob510.m

clearall

clf,shg

d=0.05; %控制运动速度(0.01——0.5)

n=200;

x=[0:

pi/30:

4*pi]; %供画曲线用的横坐标

axis([-0.2,4*pi,-1,1]),axisoff,

pause(0.1) %足够迟延似乎不可缺。

否则可能图形有误。

fortt=0:

n %决定画曲线的时刻

a=tt*pi/24-x; %小于0的元素,表示“波”尚未传到

an=find(a<0);

y=exp(-0.2.*x).*sin(tt*pi/24-x);

y(1,an)=0; %尚未受“波”影响处置零

iftt==0

h1=line('Xdata',x

(1),'Ydata',y

(1),'Marker','d','Color','b','Markersize',20,'MarkerFaceColor','b','EraseMode','xor');

h2=line(x,y,'linewidth',3,'EraseMode','xor');

else

set(h1,'xdata',x

(1),'ydata',y

(1))

set(h2,'xdata',x,'ydata',y)

end

pause(d)

end

11利用影片动画法,据函数制作驻波动画。

在做题前,先运行prob511.p产生的演示动画。

图p5-11

f

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动态背景

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1