MATLAB作图数学建模

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

xxxxxxxx 学院 实验报告

学期:14至15第2学期 时间: 2007年 5月4 日 课程名称: 数学建模 专业:数学

实验编号: xxxxx 指导教师: xxxxx 实验项目: Matlab 作图 姓名:xxxxxx 学号:xxxxxxx

班级: xxxx 级xxx 班 实验成绩:___________

一、实验目的及要求

1.掌握二维图形的绘制。

2.掌握图形的标注

3.了解三维曲线和曲面图形的绘制。

二、实验内容

1、在同一平面中的两个窗口分别画出心形线和马鞍面。

要求:1、在图形上加格栅、图例和标注

2、定制坐标

3、以不同角度观察马鞍面

2、以不同的视角观察球面 2

222r z y x =++ 和圆柱面rx y x =+22 所围区域。

三、实验步骤(该部分不够填写.请填写附页)

(1) 安装matlab ,如果已安装好,可以跳过此步;

(2) 进入matlab 的编辑窗口,进行基本的环境设置;

(3)编写程序,运行并调试。

(4)得出实验结果。

(5) 编写实验报告。

四、程序设计

1、在同一平面中的两个窗口分别画出心形线和马鞍面。

要求:1、在图形上加格栅、图例和标注

2、定制坐标

3、以不同角度观察马鞍面

解答:

编写程序:

clear

ax1=subplot(1,2,1);

t=0:.01*pi:2*pi;

f1=polar(t,1+cos(t));

title('心形线');

legend(f1,'r=1+cost')

ax2=subplot(1,2,2);

x1=linspace(-40,20,40);

y1=linspace(-40,20,40);

[xx1,yy1]=meshgrid(x1,y1);

zz1=xx1.*yy1;

f2=surf(xx1,yy1,zz1);

title('马鞍面');

legend(f2,'z=x^2-y^2','Location','NorthWest') xlabel('x轴')

ylabel('y轴')

zlabel('z轴')

axis([-40 20 -40 20 -1000 1500]) setAllowAxesRotate(rotate3d,ax1,false); grid on

运行结果:

1、以不同角度观察马鞍面

编写程序:

clc;clear;

a=10;

b=10;

x=-1.5:0.1:1.5;

y=-1.5:0.1:1.5;

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

Z=X.^2/a-Y.^2/b;

figure(2);

subplot(221);

surf (X,Y,Z);title('马鞍面'); xlabel('x');ylabel('y');

subplot(222);

surf (X,Y,Z);title('马鞍面'); xlabel('x');ylabel('y');

view(20,30);

subplot(223);

surf (X,Y,Z);title('马鞍面'); xlabel('x');ylabel('y');

view(50,20);

subplot(224);

surf (X,Y,Z);title('马鞍面'); xlabel('x');ylabel('y');

view(60,10);

grid on

运行结果:

2、 以不同的视角观察球面2222r z y x =++ 和圆柱面rx y x =+22所围区域。

方法一:

编写程序:

clear

[x,y,z]=sphere(200);

i=find(x.^2+y.^2-x>=0&x.^2+y.^2+z.^2<1);

z(i)=NaN;

mesh(x,y,z)

hold on

t=0:pi/20:2*pi;

x=(cos(t)+1)/2;

y=sin(t)/2;

z=linspace(-1.2,1.2,length(t));

X=meshgrid(x);

Y=meshgrid(y);

Z=[meshgrid(z)]';

surf(X,Y,Z)

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

title('球面 X^2+Y^2+Z^2=1和圆柱面X^2+Y^2=X 所围成的区域') rotate3d on

运行结果:

方法二:

编写程序:

clear [X,Y,Z]=sphere(20);

mesh(X,Y,Z)

hidden on

hold on

axis equal

t=0:pi/20:2*pi;

x=(cos(t)+1)/2;

y=sin(t)/2;

z=linspace(-1.2,1.2,length(t));

X=meshgrid(x);

Y=meshgrid(y);

Z=[meshgrid(z)]';

surf(X,Y,Z)

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

rotate3d on

方法三:

编写程序:

[x,y,z]=sphere(200);

i=find(x.^2+y.^2-x<=0&x.^2+y.^2+z.^2>=1);

z(i)=NaN;

mesh(x,y,z)

hidden on

hold on

ezplot('x^2+y^2=x')

title('球面X^2+Y^2+Z^2=1和圆柱面X^2+Y^2=X所围成的区域') rotate3d on

相关文档
最新文档