利用MATLAB表现空间曲面的交线_精品文档.pdf

上传人:b****2 文档编号:3179103 上传时间:2022-11-19 格式:PDF 页数:3 大小:263.84KB
下载 相关 举报
利用MATLAB表现空间曲面的交线_精品文档.pdf_第1页
第1页 / 共3页
利用MATLAB表现空间曲面的交线_精品文档.pdf_第2页
第2页 / 共3页
利用MATLAB表现空间曲面的交线_精品文档.pdf_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

利用MATLAB表现空间曲面的交线_精品文档.pdf

《利用MATLAB表现空间曲面的交线_精品文档.pdf》由会员分享,可在线阅读,更多相关《利用MATLAB表现空间曲面的交线_精品文档.pdf(3页珍藏版)》请在冰豆网上搜索。

利用MATLAB表现空间曲面的交线_精品文档.pdf

第22卷第9期?

荆门职业技术学院学报?

2007年9月Vo.l22No.9?

JournalofJingmenTechnicalCollege?

Sep.2007收稿日期2006-09-15作者简介习长新(1979-),男,湖北宜昌人,荆楚理工学院助教。

研究方向:

计算数学、数学建模技术。

E-mai:

lchangxinx。

利用MATLAB表现空间曲面的交线习长新(荆楚理工学院计算机学院,湖北荆门?

448000)摘?

要?

研究MATLAB软件表现空间曲面交线的原理和方法,给出绘制空间曲面交线及其投影的一般步骤和实例。

关键词?

MATLAB;曲面的交线;投影中图分类号?

O182.2?

文献标识码?

A?

文章编号?

1008-4657(2007)09-0046-030?

引言如何直观地表现空间两个曲面交线的形状以及位置,在几何中是一个有价值的问题。

手工绘图难以准确描绘大量的数据点构成的曲面及交线。

MATLAB作为世界通行的数学软件,具有强大的数值计算和数据可视化功能。

本文讨论如何利用数学软件MATLAB表现空间曲面的交线及其投影.1?

算法与实例利用MATLAB可视化数据的功能指令(如plot、surf、mesh等),可以容易地表现出二元函数的三维图像。

要描绘两个曲面的交线,实质是寻找两个曲面上坐标相同的数据点的集合,然后将坐标相同的数据点可视化。

基于这一思想,设计算法和步骤如下:

1)对于两个解析式已知的曲面z1=f1(x,y)z2=f2(x,y),估计交线上的点的坐标大致变化范围;2)设定横纵坐标的变化范围,以适当的步长产生坐标面XOY上的格点(x,y);3)计算两个曲面在格点处的竖坐标(z的值),使用绘图指令描绘两个曲面图像;4)比较同一格点(x,y)处两个曲面的竖坐标,记录两个数据点的状态,相同则标记为逻辑值1,不同则标记为逻辑值0,保存为一个状态矩阵;5)获取两个曲面上坐标相同的点的坐标集;6)使用绘图指令描绘交线,并对图像进行修饰。

实例?

绘制椭圆抛物面z=x2+y24-2和双曲抛物面z=x2-y2+1的图像及其交线。

预处理:

通过对方程组z=x2+y24-2z=x2-y2+1消元,知交线上的纵坐标满足y2=2.4,则可取y的变化范围为-2,2,横坐标x任取,不妨设为-2,2,程序段如下:

clfx,y=meshgrid(-2:

0.2:

2);?

%定义曲面边界,产生平面上格点的横纵坐标矩阵46z1=x.2+0.25*y.2-2;%定义曲面一,计算曲面一上的坐标z2=x.2-y.2+1;%定义曲面二,计算曲面二上的坐标samedot=(abs(z1-z2)=0.5);%对两曲面上点的坐标进行比较,记录对应坐标点的状态,相等则记为1,此处相等的定义为:

同一格点(x,y)处纵坐标之差的绝对值不超过0.5subplot(1,2,1)mesh(x,y,z1);%产生曲面一的图像holdon%保持当前图像mesh(x,y,z2);%产生曲面二的图像xx=samedo.t*x;yy=samedo.t*y;zz=samedo.t*z1;?

%获取坐标相同点的空间坐标plot3(xx(samedot=0),yy(samedot=0),zz(samedot=0),r*)?

%描绘两曲面的交线subplot(1,2,2)h1=plot3(xx(samedot=0),yy(samedot=0),zz(samedot=0),r*)%在独立的窗口中描绘两曲面的交线v=-22-22-55;set(h1,markersize,4),holdon,axis(v),gridon?

%对图形进行修饰holdoff效果如图1所示。

图1?

两曲面的交线如果要表现曲面交线在坐标面XOY上的投影,只需把坐标相同的格点处z轴坐标赋值为0。

在上述程序中加入语句plot3(xx(samedot=0),yy(samedot=0),zeros(size(yy(samedot=0),r*)%描绘两曲面的交线在xoy面的投影mesh(x,y,zeros(size(x)%描绘投影所在的的坐标面有如下的效果,如图2所示。

类似地,如果要表现两曲面交线在坐标面YOZ上(或XOZ上)的投影,则需要把坐标相同的格点处X轴坐标(或Y轴坐标)赋值为0,得到在相应坐标面上投影线的坐标,然后将之可视化。

2?

对本方法的评述利用MATLAB的数据可视化功能来表现两个曲面的交线,可以帮助研究者建立良好的几何直观,不论是用于空间几何中曲面研究,还是用于机械设计方面,都有重要的实用意义。

在文献5中作者提供47图2?

两曲面交线在xoy上的投影了另外一种软件AutoCad绘制曲面交线的方法,本方法与AutoCad相比,程序上较为简洁,在运行和图形显示、数据提取方面,MATLAB软件更为高效和精确。

MATLAB表现曲面交线的局限之处在于:

1)两个相交曲面的方程应当是形如z1=f1(x,y)z2=f2(x,y)的显式方程;对于不可显式化的两个曲面方程f1(x,y,z)=0f2(x,y,z)=0,采用MATLAB难以表现曲面及交线的图形;2)MATLAB表现曲面及交线需要预先对方程作处理,以确定交线的坐标变化的大致范围;3)由于坐标变化的连续性,MATLAB表现的曲面交线并非严格意义上相同坐标点的几何轨迹,只是一定精度下的近似轨迹,可以通过减小取点步长来提高近似程度。

在本文算法的第4步中,由于格点位置和数目有限,两个曲面上坐标严格相等的格点不能全部取到,在设计程序时把?

相同的坐标点定义为?

当横、纵坐标相同时,竖坐标之差的绝对值小于给定的精度。

参考文献1张志涌.精通Matlab6.5M.北京:

北京航空航天大学出版社,2003.2尚?

涛.工程计算可视化与MATLAB实现M.武汉:

武汉大学出版社,2002.3王?

玎.求两自由曲面交线的一种新方法J.安阳师范学院学报,2005

(2):

7-8.4段俊生.matlab曲面绘制中的挖补方法J.大学数学,2006,22(4):

36-39.5胡志华.在AutoCad中实现二次曲面交线的自动绘制及其长度的计算J.苏州大学学报,2002,18

(2):

40-44.RepresenttheIntersectionsCurvesofTwoSurfacesbyUsingMATLABXIChang-xin(JingchuUniversityofTechnology,Jingmen,Hube,i448000,China)Abstract:

ThegeneralmethodhowMatlabgeneratesthecurveswhichareintersectionsoftwosurfaceswasstudied.Moreover,anewuniversalmethodtodrawsuchcurvesandtheirprojectionswasgiven.Finally,someexamplesareintroducedtoillustratethemethod.Keywords:

MATLAB;intersectionsofsurfaces;projection48

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 笔试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1