Mathematics绘画等势面
- 格式:pdf
- 大小:83.32 KB
- 文档页数:2
总结和分类Mathematica的画图功能大全第一篇:总结和分类Mathematica的画图功能大全总结和分类Mathematica的画图功能——数学应用软件设计实验报告实验目的:近一步了解和掌握Mathematica的画图功能。
实验内容:对Mathematica的所有画图函数或命令进行总结和分类(对它的一些重要可选项进行说明),并画出一些有趣的图形。
实验环境:Mathematica4.0实验结果:基本作图函数1.画点函数Point[x,y] 2.画线函数Line[x1,y1,x2,y2] 3.画圆函数Circle[x,y,r] 4.画矩形函数Rectangle 5.画多边形函数Ploygon 6.字符输出函数Text[字符串,输出坐标] 7.1 画离散点图1.绘出由离散点对(n,yn)组成的图ListPlot[{y1,y2,..}] 2.绘出由离散点对(xn,yn)组成的图ListPlot[{{x1,y1},{x2,y2},..}] 3.二维数据阵array的立体高度图ListPlot3D[array] 4.根据可选项,把数据点dd在平面上画出来ListPlot[dd,选项]画二维函数图像 1.标准二维函数作图Plot[函数f,{x,xmin,xmax},选项]:在区间{x,xmin,xmax}上,按选项的要求画出函数f的图形Plot[{函数1,函数2,…},{x,xmin,xmax},选项]:在区间{x,xmin,xmax}上,按选项的要求画出几个函数的图形2.二维参数方程作图 ParametricPlot[{x[t],y[t]},{t,t0,t1},选项]:画一个X轴、Y轴坐标为{x[t],y[t]},参变量t在[t0,t1]中的参数曲线3.二维等高线图ContourPlot[f[x,y],{x,x0,x1},{y,y0,y1},选项]:画出空间曲面f[x,y]在区域x∈[x0,x1]和y∈[y0,y1]上的等高线图 4.二维密度图DensityPlot[f[x,y],{x,x0,x1},{y,y0,y1},选项]:画出空间曲面f[x,y]在区域x∈[x0,x1]和y∈[y0,y1]上的密度图5.二维极坐标方程作图PolarPlot[r[t],{t,min,max},选项]:按选项的要求画出极坐标方程为r=r(t)的图形(需要先打开作图软件包,输入“<画三维函数图像1.标准三维函数作图Plot3D[f[x,y],{x,x0,x1},{y,y0,y1},选项]:在区域x∈[x0,x1]和y∈[y0,y1]上,画出空间曲面f[x,y] 2.三维参数方程作图ParametricPlot3D[{x[u,v],y[u,v],z[u,v]},{u,u0,u1},{v,v0,v1},可选项]:画一个X轴坐标为x[u,v]、Y轴坐标为y[u,v]、Z轴坐标为z[u,v],参变量u在[u0,u1]、v在[v0,v1]中的参数曲面重要可选项1.AspectRatio:设定图形的宽高比2.PlotStyle:确定所画图形的线宽、线形、颜色等特性,如(1)RGBColor[r,g,b]使曲线采用某种颜色(2)GrayLevel[gray]描述颜色的灰度(3)PointSize[相对尺度]表示点的大小(4)Thickness[相对尺度]表示线的宽度3.PlotPoint:设定计算机描点作图时在每个单位长度内取的点数4.PlotRange:表示作图的值域5.PlotLabel:在图形上方居中加注释6.Axes:指定是否显示坐标轴7.AxesLabel:在坐标轴上做标记8.AxesOrigin:指定两个坐标轴的交点位置 9.AxesStyle:设定坐标轴的颜色、线宽等选项10.Ticks:给坐标轴加上刻度或给坐标轴上的点加上标记11.GridLinese:用于加网格线12.Background:用于指定背景颜色 13.DisplayFunction:指定如何显示图形趣味图形举例二维:Plot[{Sin[x]+Sin[1.6 x],-Sin[x]-Sin[1.6 x]},{x,0,40}] 21102030-1-2 ParametricPlot[{Cos[5 t],Sin[3 t]},{t,0,2 Pi},AspectRatio->Automatic}]10.5-1-0.50.5-0.5-1<0.750.50.25-0.75-0.5-0.25-0.250.250.50.-0.5-0.75 5ParametricPlot[{t Cos[t],t Sin[t]},{t,0,4 Pi},PlotPoints->250,AspectRatio-> Automatic]7.552.5-10-5-2.5-5-7.5-10510<10.5-1-0.50.5-0.5-1 6ContourPlot[x^2-y^2,{x,-1,1},{y,-1,1}] 10.50-0.5-1-1-0.500.5 ContourPlot[Cos[x y],{x,-5,5},{y,-5,5}] 420-2-4-4-202 7ContourPlot[Sin[x y],{x,-5,5},{y,-5,5},ContourLines->False] 420-2-4-4-202Plot[Evaluate[Table [BesselJ[n,x],{n,4}]],{x,0,100}] 0.60.40.220-0.2406080 三维:Plot3D[Sin[xy],{x,0,4},{y,0,4},PlotPoints->40,Mesh->False,FaceGrids->All, AxesIabel->{“Length”, “Width”, “Height”}] 10.5Height0-0.5-1012Length3401432WidthPlot3D[Sin[x y] Cos[x y],{x,0,4},{y,0,4},PlotPoints->30] 0.50.250-0.25-0.50123401234Plot3D[Tan[x y],{x,0,4},{y,0,4},PlotPoints->30]} 52.50-2.5-50123401243ParametricPlot3D[{Sin[t],Sin[2 t] Sin[u],Sin[2 t] Cos[u]},{t,-Pi/2, Pi/2},{u,0,2 Pi},Ticks->None]ParametricPlot3D[{Cos[5 t],Sin[3 t],Sin[t]},{t,0,2 Pi}]10.50-0.5-110.50-0.5-1-1-0.500.51ParametricPlot3D[{Cos[u] Sin[v],Sin[u] Sin[v],Cos[v]+Log[Tan[v/2]]+0.1*u},{u,0,4Pi},{v,0.001,1},PlotPoints->{64,32}]-0.50.50-0.5100.50-1-2-3 ParametricPlot3D[{Cos[t](3+Cos[u]),Sin[t](3+Cos[u]),Sin[u]},{t,0,2 Pi},{u,0,2Pi}] 10.50-0.5-1-4-2024-4-2420实验中出现的问题及解决方法:早期图形举例前面的命令都是由Mathematica 4里面的命令直接粘贴到文档中,但是在打印的过程中,这些命令无法正常显示,猜想出现这种情况可能与打印分辨率或者连接打印机的电脑未安装Mathematica软件有关。
Mathematica函数作图Mathematica具有强大的作图功能,它可以进行数据作图、函数作图、参数作图以及隐函数作图等等,程序与格式如以下各例所示。
平面函数图形例1平面函数图形。
例如,在区间[ 0,2Pi ]中画Sin[x]的图像。
命令及格式如下:Plot[ Sin[ x ], { x, 0, 2Pi } ]得到结果:图1为平面图形加刻度框。
程序如下:Plot[ Sin[ x ], { x, 0, 2Pi }, Frame ->True ]得到结果:图2为图形加背景颜色。
例如绿色,程序如下:Plot[ Sin[ x ],{ x, 0, 2Pi }, Background ->RGBColor[0, 1, 1] ]得到结果:图3例2平面函数图形。
例如,在区间[-10,10 ]中画3x的图像。
命令及格式如下:Plot[3x, { x, -10, 10 } ]得到结果:图4例3平面函数图形。
例如,在区间[-10,10 ]中画Sin[x]/x的图像。
命令及格式如下:Plot[Sin[x]/x,{x,-10,10}]得到结果:图5例4平面函数图形。
例如,在区间[ 0,10 ]中画函数xlg-的图像。
x sin命令及格式如下:Plot[Log[10,x]-Sin[x],{x,0,10}]得到结果:图6空间函数图形例5空间函数图形。
例如,在区间}≤⨯x≤≤画函数)sin(xy的≤y0{2Pi}20{Pi图像。
命令及格式如下:Plot3D[ Sin[ x*y ], { x, 0, 2Pi }, { y, 0, 2Pi } ]得到结果:图7参数函数图形例6 平面参数函数图形。
画圆:ParametricPlot[{Cos[x],Sin[x]},{x,0,2Pi}]得到结果(图形按1:0.618的比例显示):图8若要屏幕显示实际比例的图形,输入以下程序:ParametricPlot[{Cos[x],Sin[x]},{x,0,2Pi}, AspectRatio->Automatic] 程序运行后,得到结果:图9例7 平面参数函数图形。
关于mathematics的画图平面的绘一元函数y = f (x) 的图形命令:Plot[ f[x] , 要绘图形的自变量x的范围, 选择项参数]•例1:Plot[{Sin[x],Cos[x+Pi/6]},{x,-4,6}];ParametricPlot[{x[t], y[t]} , 要绘图形的参数t的范围,选择项参数]一些常用的绘图选项列举如下(1)选项参数名称: AspectRatio: AspectRatio->Automaic: 图形的高度与宽度比0.618(2)选项参数名称: Axes含义: 图形是否有坐标轴例:Axes-> True, 表示显示的图形有坐标轴;Axes-> None, 表示显示的图形没有坐标轴。
(3)选项参数名称: Frame含义:平面图形是否加框例: Frame-> True, 表示显示的图形有框;Frame-> False, 表示显示的图形没有框。
(4)选项参数名称: FrameLabel含义:平面图形框的周围是否加标记参数取值: 该参数的取值为None和{xb, yl, xt, yr}。
该选项参数只用于平面图形且在Frame->True时才有效,其默认值为None。
例: FrameLabel->{a,b,c,d},表示显示的图形框的四个边的标记由底边起按顺时针方向依次为a, b, c, d; (5)选项参数名称: PlotLabel含义: 是否设置图形名称标记参数取值: 该参数取值为"字符串"和None, 默认值为None例: PlotLabel-> None, 表示没有图形名称标记,PlotLabel->"Bessel",使显示的图形上标出符号Bessel作为该函数图形名称(6)选项参数名称: AxesLabel含义: 是否设置图形坐标轴标记参数取值: 该参数的默认值为None;作为平面图形输出参数时, 该选项参数取值为{“字符串1” , “字符串2”}, 表示将“字符串1”设置为横坐标轴标记,“字符串2”设置为纵坐标轴标记; 作为空间图形输出参数时, 该选项参数取值为{“字符串1” , “字符串2” , “字符串3”}, 表示将“字符串1”设置为横坐标标记,“字符串2”设置为纵坐标标记,“字符串3”设置为竖坐标标记。
个人整理Mathematica 画图命令集二维作图命令:Plot[f,{x,xmin,xmax}] 一维函数f[x]在区间[xmin,xmax]上的函数曲?Plot[,f2.{f1.},{x,xmin,xmax}] 在一张图上画几条曲线ListPlot[{y1,y2,..}] 绘出由离散点对(n,yn)组成的图ListPlot[{{x1,y1},{x2,y2},..}] 绘出由离散点对(xn,yn)组成的图PlarametricPot[{fx,fy},{t,tmin,tmax}] 由参数方程在参数变化范围内的曲线ParametricPlot[{{fx,fy},{gx,gy},...},{t,tmin,tmax}]在一张图上画多条参数曲线选项:PlotRange->{0,1} 作图显示的值域范围AspectRatio->1/GoldenRatio 生成图形的纵横比PlotLabel ->label 标题文字Axes ->{False,True} 分别制定是否画x,y 轴AxesLabel->{xlabel,ylabel}x,y 轴上的说明文字Ticks->None,Automatic,fun 用什么方式画轴的刻度AxesOrigin ->{x,y} 坐标轴原点位置AxesStyle->{{xstyle}, {ystyle}}设置轴线的线性颜色等属性Frame ->True,False 是否画边框FrameLabel ->{xmlabel,ymlabel,xplabel,yplabel} 边框四边上的文字FrameTicks 同Ticks 边框上是否画刻度GridLines 同Ticks 图上是否画栅格线FrameStyle ->{{xmstyle},{ymstyle}设置边框线的线性颜色等属性ListPlot[data,PlotJoined->True] 把离散点按顺序连线PlotSytle->{{style1},{style2},..}曲线的线性颜色等属性PlotPoints->15 曲线取样点,越大越细致三维作图命令:Plot3D[f,{x,xmin,xmax}, {y,ymin,ymax}] 二维函数f[x,y]的空间曲面Plot3D[{f,s}, {x,xmin,xmax}, {y,ymin,ymax}]同上,曲面的染色由s[x,y]值决定ListPlot3D[array] 二维数据阵array 的立体高度图ListPlot3D[array,shades]同上,曲面的染色由shades[数据]值决定ParametricPlot3D[{fx,fy,fz},{t,tmin,tmax}] 二元数方程在参数变化范围内的曲线ParametricPlot3D[{{fx,fy,fz},{gx,gy,gz},...},{t,tmin,tmax}]多条空间参数曲线选项:ViewPoint ->{x,y,z} 三维视点,默认为{1.3,-2.4,2}Boxed -> True,False 是否画三维长方体边框BoxRatios->{sx,sy,sz} 三轴比例BoxStyle 三维长方体边框线性颜色等属性Lighting ->True 是否染色LightSources->{s1,s2..} si 为某一个光源si={{dx,dy,dz},color} color 为灯色,向dx,dy,dz 方向照射AmbientLight->颜色函数慢散射光的光源Mesh->True,False 是否画曲面上与x,y 轴平行的截面的截线MeshStyle 截线线性颜色等属性MeshRange->{{xmin,xmax}, {ymin,ymax}}网格范围ClipFill->Automatic,None,color,{bottom,top}指定图形顶部、底部超界后所画的颜色Shading ->False,True 是否染色HiddenSurface->True,False 略去被遮住不显示部分的信息等高线命令:ContourPlot[f,{x,xmin,xmax},{y,ymin,ymax}] 二维函数f[x,y]在指定区间上的等高线图ListContourPlot[array] 根据二维数组array 数值画等高线选项:Contours->n 画n 条等高线Contours->{z1,z2,..} 在zi 处画等高线ContourShading -> False 是否用深浅染色ContourLines -> True 是否画等高线ContourStyle -> {{style1},{style2},..}等高线线性颜色等属性FrameTicks 同上密度图命令:DensityPlot[f,{x,xmin,xmax},{y,ymin,ymax}]二维函数f[x,y]在指定区间上的密度图ListDensityPlot[array] 同上图形显示命令:Show[graphics,options] 显示一组图形对象,options 为选项设置Show[g1,g2...] 在一个图上叠加显示一组图形对象GraphicsArray[{g1,g2,...}]在一个图上分块显示一组图形对象SelectionAnimate[notebook,t]把选中的notebook 中的图画循环放映选项:(此处选项适用于全部图形函数)Background->颜色函数指定绘图的背景颜色RotateLabel -> True 竖着写文字TextStyle 此后输出文字的字体,颜色大小等ColorFunction->Hue 等把其作用于某点的函数值上决定某点的颜色RenderAll->False 是否对遮挡部分也染色MaxBend 曲线、曲面最大弯曲度图元函数Graphics[prim, options] prim 为下面各种函数组成的表,表示一个二维图形对象Graphics3D[prim, options] prim 为下面各种函数组成的表,表示一个三维图形对象SurfaceGraphics[array, shades]表示一个由array 和shade 决定的曲面对象ContourGraphics[array]表示一个由array 决定的等高线图对象DensityGraphics[array]表示一个由array 决定的密度图对象以上定义图形对象,可以进行对变量赋值,合并显示等操作,也可以存盘Point[p] p={x,y}或{x,y,z},在指定位置画点Line[{p1,p2,..}]经由pi 点连线Rectangle[{xmin, ymin}, {xmax, ymax}] 画矩形Cuboid[{xmin,ymin,zmin},{xmax,ymax,zmax}]由对角线指定的长方体Polygon[{p1,p2,..}] 封闭多边形Circle[{x,y},r] 画圆Circle[{x,y},{rx,ry}] 画椭圆,rx,ry 为半长短轴Circle[{x,y},r,{a1,a2}] 从角度a1~a2 的圆弧Disk[{x, y}, r] 填充的园、弧等参数同上Raster[array,ColorFunction->f] 颜色栅格Text[expr,coords] 在坐标coords 上输出表达式PostScript["string"] 直接用PostScript 图元语言写Scaled[{x,y,..}] 返回点的坐标,且均大于0 小于1 颜色函数(指定其后绘图的颜色)GrayLevel[level] 灰度level 为0~1 间的实数RGBColor[red, green, blue] RGB 颜色,均为0~1 间的实数Hue[h, s, b] 亮度,饱和度等,均为0~1 间的实数CMYKColor[cyan, magenta, yellow, black] CMYK 颜色其他函数(指定其后绘图的方式)Thickness[r] 设置线宽为rPointSize[d] 设置绘点的大小Dashing[{r1,r2,..}] 虚线一个单元的间隔长度ImageSize->{x, y} 显示图形大小(像素为单位)ImageResolution->r 图形解析度r个dpi 小(像素为单位)ImageResolution->r 图形解析度r个dpiImageMargins->{{left,right},{bottom,top}}四边的空白ImageRotated->False 是否旋转90 度显示。
Mathematica图形绘制第2章图形绘制平面图形空间图形:曲线与曲面2.1 曲线与曲面表示法2.1.1 平面曲线表示法(1)直角坐标显式(简称显式):y=f(x)(2)直角坐标隐式(简称隐式):F(x,y)=0(3)参数式:x=x(t),y=y(t)(4)极坐标式:ρ=ρ(θ)(5)列表式(又称数据形式,或称离散点形式)(6)图形式(画出曲线的图形)2.1.2 空间曲线表示法(1)参数形式x=x(t),y=y(t),z=z(t)(2)交截形式f(x,y,z)=0∩φ(x,y,z)=0这是用两张曲面的交线来表示空间曲线。
在理论研究与实际应用中,常常是通过引入参数t将交截式转化为参数式来讨论问题的。
2.1.3 曲面表示法(1)直角坐标显式(简称显式):z=f(x,y)(2)直角坐标隐式(简称隐式):F(x,y,z)=0(3)参数形式:x=x(u,v),y=y(u,v),z=z(u,v)(4)数据形式:即是将曲面上的点表示为x={xi},y={yj},z={zij} (i=1,2,…,m;j=1,2,…,n)的形式,其中xi与yj为向量x与y中的元素,zij为矩阵z中的元素?(5)图形形式(画出曲面的图形)曲面表示的上述5种形式在一定条件下也是可以互相转化的,在实际问题中用得最多的是(1),(3),(5)三种形式?2.2 平面曲线的绘制法2.2.1 显式Plot[f(x),{x,x1,x2},可选项]Plot[{f1(x),f2(x),…},{x,x1,x2},可选项]Note:原式用InputForm查看;不连续图形可能有失真。
2.2.2 参数式ParametricPlot[{x(t),y(t)},{t,t1,t2},可选项]ParametricPlot[{{x1(t),y1(t)},{x2(t),y2(t)},…},{t,t1,t2},可选项]2.2.3隐式ImplicitPlot[F[x,y]==0,{x,x1,x2},可选项]Note:先调入程序包<<graphics`implicitplot`< p=""><<graphics`< p="">2.2.4极坐标式P olarPlot[ρ(θ),{ θ, θ1, θ2}]Note:先调入程序包<<graphics`graphics`< p=""><<graphics`< p="">2.2.5数据形式ListPlot[{{x1,y1},{ x2,y2},。
用 Mathematica 李 (怀化学院 数学系 , 绘制几何图形敏湖南 怀化 418008)摘 要 : 介绍了 Mathematica 在几种几何图形绘制中的应用 , 提出了获得空间旋转曲面的参数方程的一般方法 , 并给出了用 Mathematica 绘制空间旋转曲面的实例的源代码.关键词 : 图形 ;绘制 ;螺旋曲面 ;莫比乌斯带 ;旋转曲面 ;Mathematica中图分类号 : TP391172文章编号 : 1671 - 9743 (2007) 05 - 0043 - 04文献标识码 : A1 引 言Mathematica 软件具有强大的图形处理功能 ,并具有很强的符号运算和数值计算功能 ,而操作却非常简单 , 只需使用它的一些内部命令 (Mathematica 系统称之为函数) ,就可以画出复杂的函数图像 (几何图形) ,而运用它的图形程序设计功能 ,则可解决许多复杂的绘图问题 ,用它辅助教学或科研都十分有意义 12 Ma t hema t ica 的基本绘图命令及其功能用 Mathematica 基本作图的命令可以作出一元 、二元函数的图像 ,也可以作出平面和空间的一些基本的曲 线和曲面 (如 :圆 、椭圆 、螺旋线 、渐开线 、摆线 、球面 、椭球面 、抛物面等) ,这些图形和绘制它们的基本命令 ( 如 、Plot3D 、ParametricPlot 、ParametricPlot3D ) 人们都比较了解 ,这里不作过多的阐述 ,只通过几个示例介Plot 绍其用法与功能1( P281 - 366) 1 211 绘制平面曲线简单的函数 (或方程) 的图像 (如 :圆的摆线 、渐开线 、初等函数的图像等) 人们比较熟悉 ,但是对于一些复杂 的函数 (或方 程) , 要 精 确 地 作 出 它 们 图 像 , 用 手 工 的 方 法 可 能 无 法 实 现 , 那 就 得 运 用 相 关 的 计 算 机 软 件 , Mathematica 软件在这方面的功能非常强大 1∞( s - 2) kk 2 ( P 246 - 247)示例 1 取不同的参数观察 Weierwtracs 函数 : f ( x )分析与求解 : Weierwtracs 函数处处 连 续 但处处不可导 ,曾被称为“数学怪物”, Weierwtracs 函数有两个参数 r 和 s ,取函数项级数的部分 80∑rsin ( r x ) ,1 < 1 =s < 2 , r > 1 的图像k = 1( s - 2) kk和函数 : ∑rsin ( r x ) 作为 f ( x ) 的近似k = 1 函数 , 以观察其图像的大致形状 , 为了观 察 不 同的参数对函数图像的影响 ,将几个图像进行 对比以体现效果 ,Mathematica 源代码为 :gr ,s: = Sumr^ ( ( s - 2) k ) Sin r ^k x ,{ k ,1 ,80} ; 图 1weitu r ,s : = Plot gr ,s ,{x , - 2 ,2} ; Showweitu 1 12 ,115 ; Showweitu 2 12 ,112运行后可得图 11示例 2 绘制曲线 ρ: = sin2 t + 2cos6 t , t ≤0 < 2π 及曲线族 :ρ= 6 内的整数 1 5sin5 t + n cos t ,其中 : t ≤0 ≤2π, n 为 - 6 , 3收稿日期 : 2007 - 03 - 05作者简介 : 李 敏 (1980 - ) , 男 , 湖南湘潭人 , 怀化学院助教 , 主要研究数学建模教学和数学软件应用 .分析与求解 ρ: = sin2 t + 2cos6 t , t ≤0 < 2π 为极坐标方程 ,需调用 G raphics 文件 包 ,与表函数 Table 结合使用 ,即可绘制曲线族 ,其 Mathematica 源代码为 :〈〈G raphic ‘s G raphic ‘s ;P olarPlot Sin 2t + 2C os6t ,{t ,0 ,2Pi} ;Table P olarPlot 3 Π2 Sin 5t + n C ost ,{t ,0 ,Pi} ,{ n , - 6 ,6 ,2} ;运行分别得一像花和蝴蝶的图形图 21 212 绘制空间曲面示例 3 螺旋曲面和莫比乌斯带分析与求解 :螺旋曲面的形成过程比较简单 ,假设一直线段始终垂直于 z 轴 ,它 的中点置于直角坐标系的 z 轴上 ,直线段中点绕 z 轴匀速上升 ,同时线段绕 z 轴匀速 旋转 ,则直线段在移动过程中扫过的空间部分即为螺旋曲面 ,用 Mathematica 绘制它 的源代码为 :Π3} ,{t , - Pi Π2 ,Pi} ,{r , - 1 ,1} ParametricPlot3D{rC ost ,rSin t ,t 运行可得如图 3 左边所示图形 1图 2试想 ,如果直线段中点是位于单位圆周上 ,中点沿圆周运动一周时线段恰好绕圆周转过角度 π ,则直线段 扫过的空间的部分即为我们熟悉的莫比乌斯带 . 用 Mathematica 绘制它的命令为 :ParametricPlot3D{ - Sin t Π2 Sin t Π2 ,Sin t Π2 C ost Π2 ,C ost Π2 } + {4C ost ,4Sin t ,0} ,{t ,0 ,2Pi} ,{ s , - 1 . 5 ,1 . 5}运行命令可得其图形 ,如图 3 右所示 1 从这里我们 也可知莫比乌斯带的一个参数方程为 :x = - s sin 2( t Π2) + 4cos t , y = s sin ( t Π2) cos ( t Π2) + 4sin t , z = s cos ( t Π2)其中 : - 115 < s < 115 ,0 ≤ t < 2π13 用 Mathematica 做图形程序设计图 3对于一些复杂的图形 ( 或者一些实际问题的图形模拟) ,我们可能无法用 Mathetica 的基本命令来实现 ,这就必须编写 Mathematica 程序来解决这些问题 1 311 空间中的旋转面旋转曲面是我们所熟悉的 ,对于 xoz 平面中的曲线绕 x 轴和 z 轴旋转所得的旋转面我们可以很快得出它的 方程 ,进而画出它们的图形 ,如果一条空间曲线绕一条空间直线旋转一周 ,所得的旋转面的参数方程如何求呢 ? 如何用 Mathematica 作出它们的图形呢 ?定理 1 : xoz 平面上的曲线 C : z = f ( x ) , a < x < b 分别绕 x 轴 、z 轴旋转一周所得的旋转曲面的参数方程x = r 分别为 : y = f ( r ) cos t 和 z = f ( r ) sin tx = r cos t y = r sin t ,其中 :0 ≤t < 2π, a < r < b 1z = f ( r )证明 :依《解析几何》相关知识即知它显然成立3( P149 - 150)1x - x 0 y - y 0 z -z 0定理 2 : xoz 平面曲线 C : z = f ( x ) , a < x < b 绕空间直线 L :x 0= = 旋转一周所得的 m n sr ·co s θx旋转曲面的参数方程为 : y = A T· r ·sin θ ,其中 r 和 z ′均可以由参数θ和 t 表示 1 + y 0z ′ z z 0证明 :假设原右手直角坐标系由标架 { O ; i , j , k } 决定 ,同时建立由标架{ O ′; i ′, j ′, k ′} 决定的新的右手直 (m , n , s ) 角坐标系 ,为简单起见取点 ( x 0 , y 0 , z 0 ) 作为新坐标的原点 O ′,取单位向量 k ′=作为对应于竖轴| ( m , n , s ) |mx + ny + sz = 0z = 0的方向向量 i ′= (co s θ,sin θ,0) 作为对应于坐标轴 x ′的单位向z ′上的单位向量 ,取直线 :量 ,其中 θ = arc cot ( - m ) ,于是取 j ′= k ′×i ′作为对应于坐标轴 y ′的单位向量 ,矩阵 A = ( i ′, j ′, k ′) T即为n( P267 - 275) 旋转变换的转轴矩阵3x = t的参数方程为 y = 0,显然 , A 为正交矩阵 ,有 : A T = A - 1,在原坐标系中曲线 C : z = f ( ) , a < x < bxy z t= 0, a < t < b ,由坐标变换公式 ,在新坐标系中的参数 f ( t ), a < < b ,记为 : t z = f ( t ) t - x 0y 0 - x ′方程记为 : y ′ = A · 0 - , a < t < b ,曲线 C : z = f ( x ) , a < x < b 在新坐标系中绕 z ′轴旋转而成的 f ( t ) X ′ 曲面的参数方程为 : Y ′ = Z ′ z ′ z 0r ·co sθ r ·sin θ ,其中 r =z ′x( x ′) 2 + ( y ′) 2 ,0 ≤θ < 2π, a < t < b ,于是曲线C 绕直线 x 0r ·co s θ L 旋转一周所得的曲面的参数方程为 : y = A T· r ·sin θ ,其中 r 和 z ′均可以由参数θ和 t 表示 . 得 + y 0zz ′z 0证 1示例 4 分别作出 x o z 平面上的曲线 C : z = sin x + 2 分别绕 z 轴 、x 轴和 直线 L :x -1 y -2 = z + 1 旋转一周所得的旋转面 1= 112分析与求解 :曲线 C : z = sin x + 2 绕 z 轴和 x 轴旋转而成的曲面可以直接用 Mathematica 基本命令绘制 ,为便于观察 ,取 a = 0 , b = 4π,旋转的角度 取值为从 0 到 5πΠ3 , Mathematica 源代码如下 :a = ParametricPlot3D{t C oss ,t Sin s ,Sin t + 2} ,{t ,0 ,4Pi} ,{ s ,0 ,5Pi Π3} ;{t ,0 ,4Pi} ,{ s ,Pi ,Pi + 5Pi Π3} ; S howa ; S howb 运行可得图形如图 41曲线 C : z = sin x + 2 绕直线 L : x- 1 = y - 2 = z + 1 旋转时 ,以 O ′(1 , 1 1 2 2 , - 1) 为新直角坐标系的原点 ,取 i ′=2 , - 2,0) , j ′= 3 , 3, - 3 , (( 2 23 3 3图 4i ′ j ′ =k ′6 , 6 , 6) , 故 构 成 新 坐 标 系 的 标 架 , 转 轴 矩 阵 为 : d k ′=( = 6 6 3 2 2 - 02 3 x ′y ′ = z ′3 3 , 在 新 坐 标 系 中 , 曲 线 C 有 参 数 方 程 为 - 3 6 6 36 612 3t - d 0 - ,将它绕新坐标系的 z ′轴旋转一周得一曲面 ,再将坐标还原到旧坐标系即得所需图形 ,为了便于观sin t + 3, t 的范围为 : - 2π < t < 2π, Mathematica 源代码如下 :d = {{ 2 , - 2 ,0} ,{ 3 , 3 , 3 } ,{ 6 , 6 , 6}} ;2 23 3 3 6 6 3 zt : = M odule {a ,b1 ,b2 ,b3 ,b} ,a = d. {t - 1 ,0 - 2 ,Sin t + 3} ;b1 = C osu ( (a 1b2 = Sin u ( (a 1) ^2 + (a 2 ) ^2 + (a 2 ) ^2) ^ (1Π2) ;) ^2) ^ (1Π2) ;b3 = a 3 ; b = { b 1 ,b2 ,b3} ; b ;ParametricPlot3DTranspose d 1z t + {1 ,1 , - 1} , { u ,0 ,2Pi } , {t , - 3Pi ,5Pi}上面的程序运行结果如图 5 所示 1事实上 ,对于空间中的参数方程已知的曲线绕一定直线旋转所得的旋x = co s t s in t转面也可以用以上的方法得出 ,例如 : 绘制空间的曲线 y = co s tz = sin t0 ≤ t图 5x - 2 y - 3 z - 1< 2π(如图 6 左所示) 及该曲线绕直线面和图形源代码如下 := = 旋转所得的曲 1 1 2d = {{ 2 , - 2 ,0} ,{ 3 , 3 , 3 } ,{ 6 , 6 , 6}} ;2 23 3 3 6 6 3 zt : = M odule {a ,b1 ,b2 ,b3 ,b} ,a = d. {C ost Sin t - 2 ,C ost - 3 ,Sin t - 1} ;b1 = C osu ( (a 1 ) ^2 + (a 2 b2 = Sin u ( (a 1 ) ^2 + (a 2 b3 = a 3 ;b = { b 1 ,b2 ,b3} ; b ;) ^2) ^ (1Π2) ; ) ^2) ^ (1Π2) ;ParametricPlot3DTranspose d . z t + {2 ,3 ,1} ,{ u ,0 , 5Π3 Pi} ,{t , - Pi ,Pi} ;ParametricPlot3D{C ost Sin t ,C ost ,Sin t } ,{t ,0 , 2Pi}运行结果为如图 6 右边所示图形 .图 6Mathematica 的图形处理功能非常强大 ,这里介绍了它的基本命令的功能和编写程序的一些技巧 ,并介绍了 空间曲线生成的旋转面的一般绘制方法 ,这些对一些学生学习几何知识和对一些实践问题的解决都十分有帮 助 1 做图形程序设计时 , 可能会遇到一些有关矩阵的运算 , 如果用 C 语言来实现 , 可能会有一定的难度 , 而 Mathematica 有非常 强 的 矩 阵 运 算 功 能 , 能 给 我 们 带 来 很 多 的 计 算 上 的 方 便 , 提 高 了 程 序 的 效 率 , 当 然 Mathematica 的画图功能还远不只这些 ,它给我们带来的便捷在以后的学习和科研中将进一步得到体现. 参考文献 :1 W olfram ,S 著 . Mathematica 全书 M . 赫孝良 ,周仓义译 . 西安 :西安交通大学出版社 ,2002.2 李尚志 ,陈发来 ,张韵华 ,吴耀华 . 数学实验 (第二版) M . 北京 :高等教育出版社 ,2004.3 吕林根 ,许子道 ,等 . 解析几何 M . 北京 :高等教育出版社 ,1987.Dra wing G eometrical G ra p hics with Mathem aticaL I Min( Dept . o f Math . , Huaihua Univer sity , Huaihua , Hunan 418008)Abstract : T his paper introduced some application of M athematica in drawing geometrical graphics ,gave a comm on meth od to get the parametric function of surface of rev olution in three - dimensional space ,and the M athematica programs of several exam ples about the surfaces were given.K ey w ords :graphics ; plot ; the screw surface ; M obius trap ; surface of rev olution ; M athematica。