资源描述:
《matlab在函数画图的运用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《MATLAB语言》课程论文MATLAB在多元函数绘图中的应用姓名:李云学号:12009243755专业:电子信息工程班级:(1)班指导老师:汤全武学院:物理电气信息学院完成日期:2010、12、257MATLAB在多元函数绘图中的应用(李云120092437552009级1班)[摘要]数学是一门工具化的科学语言,我们用数学解决很多问题。然而在学习数学的同时,有很多复杂的数值计算和一些难以用手工画出它们的图形。例如:有一些多元函数,对于其的解值和图形却难以用人工画出。而MATLAB语言正是解决这种难题的最好工具,仅能进
2、行相关计算,又能绘制相关曲线,方便并且实用。利用其我们可以节省大量的时间,并且还让我们更深入的研究其中我们不知道的知识。应用MATLAB可以使多元函数绘图的问题变得简单可以将我们从繁琐的计算绘图中解放出来。还能大量节约时间。[关键词]数学多元函数MATLAB语言绘图一、问题的提出MATLAB语言是自20世纪80年代以来功能强、效率高、简单易学的一种科学计算语言。它的影响大,流行广。自1984年以来得到了广泛的发展与应用。近年来,MATLAB在我国科学研究和工程应用中发挥越来越大的作用。各高校积极推动计算机基础教育改革,
3、计算机技术的飞速发展和全社会对计算就应用需求的不断增加,给计算机基础教育的发展提供了新的机遇。MATLAB具有友好的工作平台和编程环境、简单易用的程序语言、强大的科学计算机数据处理能力、出色的图形处理功能、应用广泛的模块集合工具箱、实用的程序接口和发布平台。在我们学习数学的同时,我们发现有很多东西只限于手工是很难完成的。举个多元函数的例子,比如当有一个很难的函数,我们必须解出它的值,并且还要在纸上画出它的图形来。对于我们来说这是一个比较难的问题。更难一点,老师让我们给它积分或者微分,这就更是难上加难了。这是我们不要忘了
4、我们这门强大的科学语言MATLAB,它的功能我们已经了解。由此,我们用MATLAB解决这些问题。二、MATLAB绘制多元函数的图形问题(1)例:画出函数(1)的图形,其中。用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);%生成三维图形运行结果如图1所示。7图1函数的三维图
5、形如果画图1等高线程序如下: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);%产生函数值Zcontour3(X,Y,Z,10);%画10条等高线xlabel('X-axis'),ylabel('Y-axis'),zlabel('Z-axis');%三个坐标轴的标记title('Contour3ofSurface')%标题gridon%
6、画网格线运行结果如图2所示。7图2图1的三维等高线三、MATLAB绘制多元函数的图形问题(2)例:二次曲面的函数如下(2)讨论参数a,b,c对其形状的影响。MATLAB程序如下:a=input('a=');b=input('b=');c=input('c=');d=input('d=');N=input('N=');%输入参数,N为网格线数目xgrid=linspace(-abs(a),abs(a),N);%建立x网格坐标ygrid=linspace(-abs(b),abs(b),N);%建立y网格坐标[x,y]=me
7、shgrid(xgrid,ygrid);%确定N×N个点的x,y网格坐标z=c*sqrt(d-y.*y/b^2-x.*x/a^2);u=1;%u=1,表示z要取正值z1=real(z);%取z的实部z1fork=2:N-1;%以下7行程序的作用是取消z中含虚数的点forj=2:N-1;%定义变量ifimag(z(k,j))~=0z1(k,j)=0;endifall(imag(z([k-1:k+1],[j-1:j+1])))~=0z1(k,j)=NaN;7endendendsurf(x,y,z1),holdon%画空间曲
8、面ifu==1z2=-z1;surf(x,y,z2);%u=1时加画负半面axis([-abs(a),abs(a),-abs(b),abs(b),-abs(c),abs(c)]);%选择坐标轴的范围endxlabel('x'),ylabel('y'),zlabel('z');%X,Y,Z轴的说明holdoff%停止运行程序,当a=