MATLAB考试复习点及例题(4)

2019-08-31 17:33

用函数 pie 和 pie3 绘制饼图。

x=[200,360,120,400,320];

subplot(2,2,1), pie(x,[0 0 0 1 0])

subplot(2,2,2), pie3(x,[0 0 0 1 0])

subplot(2,2,3), pie(x(2:5))

subplot(2,2,4),

x=[0.1,0.12,0.21,0.34,0.11];

sph2cart 命令

将球坐标转化直角坐标,其调用格式为: [X,Y,Z] = sph2cart(TH,PHI,R)

参数 TH 为球坐标系下的方位角( Azimuth),PHI 是球坐标系下的俯视角( Elevation),R 是球半径。他们的大小必须相等或成比例。X、Y、Z 为直角坐标系下的坐标向量或矩阵。 函数pol2cart和sph2cart的用法。 theta=0:pi/20:6*pi; rho=sin(theta);

[t,r]=meshgrid(theta,rho); z=r.*t;

[X,Y,Z]=pol2cart(t,r,z); mesh(X,Y,Z)

phi=theta.^2-theta;

[t1,p1]=meshgrid(theta,phi); r1=p1.*t1;

figure(2) %绘制球坐标转化直角坐标时的图形 [X1,Y1,Z1]=sph2cart(t1,p1,r1); mesh(X1,Y1,Z1)

绘制图形,并用函数 xlabel、title 和 legend 命令进行标注。

legend命令实现不同图例的说明。

t=0:0.1:4*pi; y=sin(t); y1=cos(t); plot(t,y,':',t,y1,'r*')

xlabel('x 轴 (0--4\\pi)','fontsize',12,'fontweight','bold')

ylabel('y 轴','fontsize',12,'fontweight','bold')

title('绘制正弦波和余弦波 Pos=1','fontsize',10,'fontweight','bold','fontangle','italic')

text(pi,0,'\\leftarrowsin(\\pi)=0')

text(pi,-1,'\\leftarrowcos(\\pi)=-1')

text(pi/2,0.9,['\%uparrowsin(\\pi/2)=',num2str(sin(pi/2))])

text(0,-0.6,['绘图日期:',date])

text(0,-0.8,['MATLAB 版本:',version])

legend('正弦波','余弦波')

figure(2)

plot(t,y,':',t,y1,'r*')

title('绘制正弦波和余弦波 Pos=0','fontsize',10,'fontweight','bold','fontangle','italic')

legend('正弦波','余弦波',0)

grid on

figure(3)

text(7*pi/2,0,'\\rightarrowcos(\\pi*7/2)=0') legend('正弦波','余弦波',-1) grid off

创建一个图形对象,并寻求图形对象的句柄值。

mesh(peaks(30)); %创建山峰的网格图

text(30,20,2,'\\leftarrowpeak') %给图形对象加上文本,图形对象中包括坐标轴、线条和文本标注

h=findobj(gcf) %求当前图形窗口的句柄

h= %返回句柄值赋予变量

1.0000

99.0010

101.0006

100.0016

函数 copyobj 的用法。

mesh(peaks(30));

text(30,20,2,'\\leftarrowpeak');

hh=findobj(gcf)

在上述程序之后加入如下内容:

h=findobj('string','\\leftarrowpeak') %将文字对象的句柄值返回给变量 h

figure %重新建立一个图形对象

mesh(peaks(20)); %在 20*20 的区域创建图形内容

使用 copyobj 命令进行对象的复制,在上述程序后加上如下内容:

ha=copyobj(h,gca) %将文本对象( h 句柄所指的对象)复制到新区域图形中

hh = %程序输出结果

1.0000

99.0013

101.0011

100.0038

h =

101.0011

ha =

200.0004

创建一个图形对象,练习和体会 set 和 get 函数的用法。

x=0:0.1:2*pi;

y1=sin(x); %创建一个正弦函数

H1_sin=plot(x,y1,'*') %画图并返回图像的句柄值

set(H1_sin,'color',[1,0.5,0],'Linewidth',1) %调用函数 set 设置正弦曲线的颜色和线宽 y2=cos(x); hold on

H1_cos=plot(x,y2)

set(H1_cos,'color',[0.25 0 1])

title('正弦和余弦函数曲线','fontsize',16,'color','blue')

H_sin_color=get(H1_sin,'color') %调用 get 函数返回具有句柄 H1_sin 的对象的颜色 程序执行结果如下 H1_sin =

3.0010 H1_cos = 101.0009 H_sin_color =

1.0000 0.5000 0

单自由度系统有阻尼自由振动

参数 ωn =10, x0 =1, v0 =0,计算的终止时间 t=2。试求ξ 从 0.1 到 1运动方程的解,并画出波形。 % 首先清空 MATLAB 的工作空间 clear; % 给定初值 wn=10; tf=2; x0=1; v0=0; % 计算不同的ξ 值所对应的振型 for j=1:10;

eta(j)=0.1*j;

wd(j)=wn*sqrt(1-eta(j)^2); % 求振幅 A

a=sqrt((wn*x0*eta(j)+v0)^2+(x0*wd(j))^2)/wd(j);

%求相位角

phi=atan2(wd(j)*x0,v0+eta(j)*wn*x0);

%设定自变量数组 t

t=0:tf/1000:tf;

%求过渡过程

x(j,:)=a*exp(-eta(j)*wn*t).*sin(wd(j)*t+phi); end

%在同一个图形窗口中绘制不同的ξ 值所对应的振型

plot(t,x(1,:),t,x(2,:),t,x(3,:),t,x(4,:),...

t,x(5,:),t,x(6,:),t,x(7,:),t,x(8,:),...

t,x(9,:),t,x(10,:))

grid on

%新建一个图形窗口,绘制三维网格图

figure

mesh(x)

b.由 sym 命令创建

>> f=sym('a*x^2+b*x+c') f =

a*x^2+b*x+c

>> f1=sym('a*x^2+b*x+c=0') f1 =

a*x^2+b*x+c=0

>> A=sym('[4+x, x^2, x;x^3, 5*x-3, x*a]') A =

[ 4+x, x^2, x] [ x^3, 5*x-3, x*a]

c.由 syms 命令创建

>> syms x a b c >> f=a*x^2+b*x+c f =

a*x^2+b*x+c

>> syms x a

>> B=[4+x x^2 x;x^3 5*x-3 x*a] B =

[ 4+x, x^2, x] [ x^3, 5*x-3, x*a] 不能创建符号方程

6、符号微积分

Matlab自变量确定原则:除i、j外,字母位置最接近x的小写字母为自变量;如果表达式中没有变量,x会被视为默认的变量。由函数findsym可以找到默认变量 a. 符号极限 limit(F,x,a)

limit(F,a),变量为由findsym定义的默认变量 limit(F,x,a,’right’) /limit(F,x,a,’left’) Limit(F), a=0

>> a=sym('[1/x, 1/(x+1); 1/(x+2), 1/(x+3)]') >> syms x a t h

a = >> limit(sin(x)/x)

[ 1/x, 1/(x+1)] ans =

[ 1/(x+2), 1/(x+3)] 1

>> limit((1+2*t/x)^(3*x),x,inf)

>> b=sym('[x, 1; x+2, 0]') ans =

b = exp(6*t)

[ x, 1] [ x+2, 0]

>> b-a ans =

[ x-1/x, 1-1/(x+1)] [ x+2-1/(x+2), -1/(x+3)]


MATLAB考试复习点及例题(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:新闻学导论 习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: