1数学实验报告日期:20年月日班级09级A班姓名冶东晟学号200916111实验名称用matlab绘制一元函数与二元函数的图象问题背景描述:函数图象是解决函数问题的最直观最清晰的表示,但是在一些一元及二元函数中,某些函数的图像在相应的区间范围内却没办法很准确的描绘出来,像正弦函数、预先函数的图像问题,在某一段区间范围内对两者性质进行区分与比较,一边直观的给出它们各自的性质,还有极坐标方程的图像,像]2,0[,1),cos1(aar的极坐标方程的图像绘制它的心脏线,手绘发会很繁琐,并且不一定会得到准确的图像,还有像是二元函数的图像问题中,有些函数的图像手工绘制不一定会得到很好的图像,还要求绘制这些图像的等高线等问题,都是在高等数学和高等几何中的一些比较突出的问题,也是比较难的问题,但是在matlab应用程序中,这些问题却可以利用相关的绘图命令的到很好的解决,并且得到很好的,很美观的函数图像。实验目的:1.熟练掌握matlab绘图命令;2.解决一些比较难得在高等几何中的一元或二元函数的图像问题;实验原理与数学模型:1.平面曲线的表示形式对于平面曲线,常见的有三种表示形式,即以直角坐标方程],[),(baxxfy,以参数方程],[),(),(battyytxx,和以极坐标],[),(barr表示等三种形式。2.MATLAB中主要用plot,fplot二种命令绘制不同的曲线。plot(x,y)作出以数据(x(i),y(i))为节点的折线图,其中x,y为同维数的向量。plot(x1,y1,x2,y2,…)作出多组数据折线图fplot(‘fun’,[a,b])作出函数fun在区间[a,b]上的函数图。3.MATLAB中主要用mesh,surf命令绘制二元函数图形。mesh(x,y,z)画网格曲面,这里x,y,z是三个数据矩阵,分别表示数据点的横坐标,纵坐标和函数值,该命令将数据点在空间中描出,并连成网格。surf(x,y,z)画完整曲面,这里x,y,z是三个数据矩阵,分别表示数据点的横坐标,纵坐标和函数值,该命令将数据点所表示曲面画出。4.线型、标记和颜色的控制符号颜色符号标记符号线型b蓝色.点-实线g绿色。圆圈:点线r红色×叉号-.点划线c青色*星号――虚线m紫红色s正方形y黄色d菱形k黑色v三角形(下)w白色^三角形(上)p五角星h六边形实验所用软件及版本:Matlab7.0主要内容(要点):1.学习matlab命令;2.用matlab命令在指定区间内绘制一元函数和二元函数的函数图象;3.绘制二元函数的图像及图像的等高线;4.绘制极坐标函数的心脏线。实验过程记录(含基本步骤、主要程序清单及异常情况记录等):例1作出函数xyxycos,sin的图形,并观测它们的周期性。先作函数xysin在]4,4[上的图形,用MATLAB作图的程序代码为:x=linspace(-4*pi,4*pi,300);%产生300维向量xy=sin(x);plot(x,y)%二维图形绘图命令结果如图1,上述语句中%后面如“%产生300维向量x”是说明性语句,无需键入。-20-1001020-1-0.500.51图1xysin的图形此图也可用fplot命令,相应的MATLAB程序代码为:clear;close;%clear清理内存;close关闭已有窗口。fplot('sin(x)',[-4*pi,4*pi])结果如图2.-10-50510-1-0.500.51图2xysin的图形如果在同一坐标系下作出两条曲线xysin和xycos在]2,2[上的图形,相应的MATLAB程序代码为:clearx=-2*pi:2*pi/30:2*pi;%产生向量xy1=sin(x);y2=cos(x);plot(x,y1,x,y2,’:’)%,’:’表示绘出的图形是点线结果如图3其中实线是xysin的图形,点线是xycos的图形。-10-50510-1-0.500.51图3xyxycos,sin的图形例2将例1得到的图形用不同的线型及颜色加以绘制。clearx=-2*pi:2*pi/30:2*pi;%产生向量xy1=sin(x);y2=cos(x);plot(x,y1,x,y2,’gp’)%’gp’表示绘出的图形是绿色五角星线结果如图4图4例3作出以极坐标方程]2,0[,1),cos1(aar表示的心脏线相应的MATLAB程序代码为:clear;close;t=0:2*pi/30:2*pi;r=1+cos(t);x=r.*cos(t);y=r.*sin(t);%极坐标转化为直角坐标plot(x,y)结果如图5-1012-2-1012图5心脏线例4画出函数22yxz的图形,不妨将区域限制在]3,3[]3,3[),(yx。用MATLAB作图的程序代码为:clear;x=-3:0.1:3;%x的范围为[-3,3]y=-3:0.1:3;%y的范围为[-3,3][X,Y]=meshgrid(x,y);%将向量x,y指定的区域转化为矩阵X,YZ=sqrt(X.^2+Y.^2);%产生函数值Zmesh(X,Y,Z)结果如图6。图6是网格线图,如果要画完整的曲面图,只需将上述的MATLAB代码mesh(X,Y,Z)改为surf(X,Y,Z),结果如图7图6锥面图7锥面要画等高线,需用contour,contour3命令.其中contour为二维等高线,contour3为三维等高线,如画图6的三维等高线,MATLAB代码为:clear;x=-3:0.1:3;y=-3:0.1:3;[X,Y]=meshgrid(x,y);Z=sqrt(X.^2+Y.^2);contour3(X,Y,Z,10)%画10条等高线xlabel('X-axis'),ylabel('Y-axis'),zlabel('Z-axis')%三个坐标轴的标记title('Contour3ofSurface')%标题gridon%画网格线结果如图8.-202-20201234X-axisY-axisZ-axisContour3ofSurface图8等高线如画图6的二维等高线,MATLAB代码为:clear;x=-3:0.1:3;y=-3:0.1:3;[X,Y]=meshgrid(x,y);Z=sqrt(X.^2+Y.^2);contour(X,Y,Z,10)xlabel('X-axis'),ylabel('Y-axis')title('ContourofSurface')gridon结果如图9-3-2-10123-3-2-10123X-axisY-axisContourofSurface图9等高线如果要画1z的等高线,则用命令clear;x=-3:0.1:3;y=-3:0.1:3;[X,Y]=meshgrid(x,y);Z=sqrt(X.^2+Y.^2);contour(X,Y,Z,[11])结果如图10。-202-202图10等高线实验结果报告与实验总结:A.实验结果:1.利用求导命令和相关的问题的相关命令和容易就可以求出问题的结果;2.实验结果成功完成B.通过利用matlab软件对一元函数及二元函数绘制图像进行上机实验操作,使得实验结果很成功,并且图像很直观,很美观,也很方便,对于画图过程完全避免了人工操作的繁琐与困难,画图方便,并且直观易懂。思考与深入:对一元函数及二元函数的图像可以利用相关的绘图命令进行很直观的绘制,而且图像清晰美观,完全避免了手工绘制的困难,那么是否继续可以利用matlab中有关的绘图命令对多元函数的一些比较特殊的函数图像进行实验上级绘制,比如说马鞍面,比如说螺旋线,还有一些较为复杂的函数图形的绘制。教师评语:Maylab实验报告学院:数学系班级:09级A班姓名:学号:名称:二0一二年五月八日