实验一特殊函数与图形Word文档下载推荐.docx
《实验一特殊函数与图形Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《实验一特殊函数与图形Word文档下载推荐.docx(13页珍藏版)》请在冰点文库上搜索。
--rh'
'
linewidth'
2,'
markeredgecolor'
b'
markerfacecolor'
g'
)
图1
在使用函数plot时,应当注意到当两个输入量同为向量时,向量x与y必须维数相同,而且必须同是行向量或者同是列向量.
绘图时,可以制定标记的颜色和大小,也可以用图形属性制定其他线条特征,这些属性包括:
linewidth指定线条的粗细.
markeredgecolor指定标记的边缘色
markerfacecolor指定标记表面的颜色.
markersize指定标记的大小.
若在一个坐标系中画几个函数,则plot的调用格式如下:
plot(x1,y1,s1,x2,y2,s2,……)
2.空间曲线作图函数:
plot3,它与plot相比,只是多了一个维数而已.其调用格式如下:
plot3(x,y,z,s).例如:
x=0:
pi/30:
20*pi;
z=cos(x);
plot3(x,y,z)
得到三维螺旋线:
图2
3.空间曲面作图函数:
(1)mesh函数.绘制彩色网格面图形.调用格式:
mesh(z),mesh(x,y,z)和mesh(x,y,z,c).
其中,mesh(x,y,z,c)画出颜色由c指定的三维网格图.若x、y均为向量,则length(x)=n,length(y)=m,[m,n]=size(z).
(2)surf在矩形区域内显示三维带阴影曲面图.调用格式与mesh类似.
(3)ezmesh用符号函数作三维曲面网格图.
调用格式:
ezmesh(x,y,z)
其中x=x(s,t),y=y(s,t),z=z(s,t).画图区域默认为:
-2*pi<
s<
2*pi且-2*pi<
t<
2*pi.
或者用格式:
ezmesh(x,y,z,[smin,smax,tmin,tmax])
(4)ezsurf用符号函数作三维曲面图.调用格式与ezmesh类似.
(5)sphere画球体命令.
4.meshgrid,调用格式:
[x,y]=meshgrid(m,n),
这里的m,n为给定的向量,可以定义网格划分区域和划分方法.矩阵x和矩阵y是网格划分后的数据矩阵.
5.图像的修饰与其他函数:
(1)axisequal控制各个坐标轴的分度,使其相等;
(2)colormap设置绘图颜色.
colormap([rgb])
其中r,g,b都是0-1之间的数.
colormap(s)
s为颜色映像.下面举几个常用的例子:
颜色映像
相应的颜色系
autumn
红黄色系
hsv
色调饱和色系
gray
线性灰色系
hot
黑红黄白色系
cool
青和洋红色系
pink
柔和色系
(3)grid网格函数gridon添加网格.gridoff取消网格.
(4)find找出符合条件的元素在数组中的位置.调用格式:
y=find(条件)
例如:
输入:
a=[4578121466522541];
b=find(a>
7)
输出:
b=3467
三、实验内容
数学分析中,特别是积分部分,我们接触了不少有趣的函数,由于其中有的不是一一对应的,用上面的方法无法画出它们的图像,这时就只能用参数了.
此外还有些图形只能用参数来画,比如空间曲线,在计算机上不接受“两个曲面的交线”这种表示,所以也只能用参数来实现.
用参数方式作图的关键在于找出合适的参数表示,尤其是不能有奇点,最好也不要用到开方.所以要找的参数最好是有几何意义的.当然这也不可一概而论,需要多积累经验.
1.利用函数plot在一个坐标系中画以下几个函数图像,要求采用不同颜色、不同线形、不同的符号标记.函数为:
.
程序如下:
t=0:
pi/20:
2*pi;
x=sin(t);
y=cos(t);
z=sin(2*t);
plot(t,x,'
--k*'
t,y,'
-rs'
t,z,'
:
bo'
图像如下:
图3
2.绘制类似田螺线的一条三维螺线(方程自己设计).
.1:
30;
x=2*(cos(t)+t.*sin(t));
y=2*(sin(t)-t.*cos(t));
z=1.5*t;
plot3(x,y,-z)%取–z主要是为了画图看起来更清楚
axisequal
图4
3.利用函数
,绘制一个墨西哥帽子的图形.
[a,b]=meshgrid(-8:
.5:
8);
%先生成一个网格
c=sqrt(a.^2+b.^2)+eps;
z=sin(c)./c;
mesh(a,b,z)
axissquare
图5
思考:
这里的eps是什么?
其作用是什么?
4.利用surf绘制马鞍面图形(函数为:
).
[x,y]=meshgrid(-25:
1:
25,-25:
25);
z=x.^2/9-y.^2/4;
surf(x,y,z)
title('
马鞍面'
gridoff
图6
5.分别用ezmesh和ezsurf各绘制一个圆环面,尝试将两个圆环面放在一个图形界面内,观察它们有什么不同之处.
提示:
圆环面的方程为:
,而圆环面的参数方程为:
程序参见附录1.
图7
6.绘制黎曼函数图形,加深对黎曼函数的理解.
说明:
黎曼函数的定义为
程序参见附录2.
图8
四、自己动手
1.做出下图所示的三维图形:
图9
ezsurf('
3*sin(u)*cos(v)'
3*sin(u)*sin(v)'
3*cos(u)'
[0,pi,0,2*pi]);
holdon
(8+2*cos(u))*cos(v)'
(8+2*cos(u))*sin(v)'
2*sin(u)'
[0,2*pi,0,2*pi])
2.作出下图所示的墨西哥帽子及其剪裁图形:
图10
改变a、b的取值范围,可得到裁剪后的图。
3.画出球面、椭球面、双叶双曲面、单叶双曲面.
球面:
title(‘球面’)
椭球面:
1*sin(u)*sin(v)'
1*cos(u)'
title(‘椭球面’)
双叶双曲面:
3*tem(u)*cos(v)'
3*tem(u)*sin(v)'
5*sec(u)'
[-2*pi,3*pi/2,0,2*pi]);
axisauto
title(‘双叶双曲面’)
单叶双曲面:
3*sec(u)*cos(v)'
4*sec(u)*sin(v)'
5*tem(u)'
[-pi/2,pi/2,0,2*pi]);
htle(‘单叶双曲面’)
4.若要求田螺线的一条轴截面的曲边是一条抛物线:
时
.试重新设计田螺线的参数方程,并画出该田螺线.
Ezplot3(‘1*t*sin(t)’,’1*t*cos(t)’,’t*2/5’,[0,50])
5.作出下图所示的马鞍面(颜色为灰色,并有一个标题:
“马鞍面”):
图11
[x,y]=meshgrid(-25:
mesh(x,y,z)
colormap(‘gray’)
6.绘制图8所示的黎曼函数图形,要求分母的最大值的数值由键盘输入(提示:
使用input语句).
n=100;
x=[];
y=[];
k=1;
fori=2:
n
forj=1:
i-1
ifgcd(i,j)==1%用函数gcd(m,n)可求m和n的最大公约数
x(k)=j/i;
y(k)=1/i;
k=k+1;
end
end
.b'
);
axis([0,1,0,1])