MATLAB曲面作图.docx
《MATLAB曲面作图.docx》由会员分享,可在线阅读,更多相关《MATLAB曲面作图.docx(15页珍藏版)》请在冰点文库上搜索。
![MATLAB曲面作图.docx](https://file1.bingdoc.com/fileroot1/2023-6/16/c888debe-25b8-4715-afcd-3db847643128/c888debe-25b8-4715-afcd-3db8476431281.gif)
MATLAB曲面作图
曲面作图
一、常见的曲面作图(Matlab7.0)
1、椭圆锥面
曲面方程:
取θ1=30o,θ2=30o用MATLAB作图:
M文件代码:
u=[0:
pi/600:
2*pi];v=[0:
pi/600:
2*pi];
[U,V]=meshgrid(u,v);
E1=pi/6;E2=pi/6;
X=U*tan(E1).*cos(V);
Y=U*tan(E2).*sin(V);
Z=U;
mesh(X,Y,Z);
axisauto;
绘制出来的图形:
2、椭圆抛物面
曲面方程:
取a=4,b=3在MATLAB中作图:
M文件代码:
ezsurf('4*u*cos(v)',...
'3*u*sin(v)','u^2',...
[-pi/2,3*pi/2,0,2*pi]);
axisauto;
绘制出来的图形:
3、椭球面
曲面方程:
取a=8,b=6,c=4在MATLAB中作图:
M文件代码:
u=[0:
pi/60:
2*pi];v=[0:
pi/60:
2*pi];
[U,V]=meshgrid(u,v);
A=8;B=6;C=4;
X=A*cos(V).*cos(U);
Y=B*cos(V).*sin(U);
Z=C*sin(V);
surf(X,Y,Z);
axisequal;
绘制出来的图形:
4、双曲抛物面
曲面方程:
取a=6,b=5在MATLAB中作图:
M文件代码:
x=[-5:
0.01:
5];y=[-5:
0.01:
5];
[X,Y]=meshgrid(x,y);
a=6;b=5;
Z=(X/a).^2-(Y/b).^2;
mesh(X,Y,Z);
axisauto;
绘制出来的图形:
5、单叶双曲面
曲面方程:
取a=3,b=3,c=5在MATLAB中作图:
M文件代码:
ezsurf('3*cosh(u).*cos(v)',...
'3*cosh(u).*sin(v)','5*sinh(u)',...
[-pi/2,pi/2,0,2*pi]);
axisauto
绘制出来的图形:
6、双叶双曲面
曲面方程:
取a=3,b=4,c=7在MATLAB中作图:
M文件代码:
ezsurf('3*tan(u)*cos(v)',...
'4*tan(u)*sin(v)','7*sec(u)',...
[-pi/2,3*pi/2,0,2*pi]);
axisauto;
绘制出来的图形:
二、旋转曲面
曲面方程:
(0≤u≤2π,a≤v≤b)
1、取f(v)=tanv,g(v)=5v,在MATLAB中作图:
A、取a=2.5,b=3时,
M文件代码:
ezsurf('tan(v)*cos(u)',...
'tan(v)*sin(u)','5*v',...
[0,2*pi,2.5,3]);
axisauto;
绘制出来的图形:
B、取a=-4,b=4时
M文件代码:
ezsurf('tan(v)*cos(u)',...
'tan(v)*sin(u)','5*v',...
[0,2*pi,-4,4]);
axisauto;
绘制出来的图形:
2、取f(v)=sinv,g(v)=2v,在MATLAB中作图:
A、取a=0,b=2时,
M文件代码:
ezsurf('sin(v)*cos(u)',...
'sin(v)*sin(u)','2*v',...
[0,2*pi,0,2]);
axisauto;
绘制出来的图形:
B、取a=-4,b=4时,
M文件代码:
ezsurf('sin(v)*cos(u)',...
'sin(v)*sin(u)','2*v',...
[0,2*pi,-3,3]);
axisauto;
绘制出来的图形:
三、螺旋面
曲面方程:
(0≤u≤2π,a≤v≤b)
1、取f(v)=v,g(v)=v,a=-5,b=5在MATLAB中作图:
M文件代码:
ezsurf('v*cos(u)',...
'v*sin(u)','v+8*u',...
[0,2*pi,-5,5]);
axisauto;
绘制出来的图形:
2、取f(v)=v2,g(v)=2v,a=-10,b=10在MATLAB中作图:
M文件代码c:
\iknow\docshare\data\cur_work\Third02.m:
ezsurf('v.^2*cos(u)',...
'v.^2*sin(u)','2*v+8*u',...
[0,2*pi,-10,10]);
axisauto;
绘制出来的图形:
四、曲面交线——空间曲线
1、参数方程曲线
方程为:
M文件为:
t=0:
pi/30:
6*pi;
x=cos(t);
y=sin(t).*cos(t);
z=t;
plot3(x,y,z)
图形为:
2、两个曲面交线:
两个曲面分别为:
d=0.05;
[x,y,z]=meshgrid(0:
d:
4,-2:
d:
2,-2:
d:
3);
v=x.^2/4+y.^2/4+z.^2/4-x;
p=isosurface(x,y,z,v,0);
fz=@(x,y) (307620*x)/2908093 + (10070*y)/28793 + 671042474/363511625;
[xx yy]=meshgrid(0:
d:
4,-2:
d:
2);
zz=fz(xx,yy);
f=@(x,y) x.^2/4+y.^2/4+(fz(x,y)).^2/4-x;
c=contours(xx,yy,f(xx,yy),[0 0]);
xxx=c(1,2:
end);yyy=c(2,2:
end);
zzz=fz(xxx,yyy);
mesh(xx,yy,zz,'edgecolor','none','facecolor','r','facealpha',0.3);hold on
patch(p,'edgecolor','none','facecolor','b','facealpha',0.3);
plot3(xxx,yyy,zzz,'k','linewidth',1);hold off
axis equal;