辛春元
(辽宁对外经贸学院,辽宁大连 116052)
随着数学软件的出现和不断发展完善,为高等数学教学改革带来契机.传统的教学方式已经不能适应现代数学发展的需要[1].以计算机为载体,将数学软件融入到高等数学课程中去,它为教师和学生提供了一个“活”的教与学的平台[2],这种现代化的教学手段,不但增强学生学习的兴趣,同时提高学生应用数学知识解决实际问题的能力,符合时代发展的要求.
重积分是微积分的一个重要内容.在传统的教学模式下,由于这部分内容综合性比较强,所以,学生学习起来感到很吃力.在Mathematica平台上进行实验教学,可以很好地解决这一问题.Mathematica是美国Wolfram Research公司开发的一个功能强大的计算机软件系统[3],它不但能进行数值计算,而且有很强的绘图功能,在“教”与“学”中发挥着重要的作用.本文通过实例来研究Mathematica平台上重积分的数学实验.
实例1 二重积分定义的实验演示.
解 在Mathematica平台上输入下面语句[4]:
ff[x,y_ ]:=1-1/4*(x^2+y^2);a=-1;b=1;c=-1;d=1;
step={0.5,1/3,0.2,0.1,0.05,0.025};
For[k=1,k<7,k++,step1=step[[k]];step2=step[[k]];m=(b-a)/step1;n=(d-c)/step2;gg={ };
txyz=Flatten[Table[{x,y,ff[x,y]}//N,{x,a,b,step1},{y,c,d,step2}],1];
For[j=1,j<=n,j++,ss=(j-1)*m;
For[i=1,i<=m,i++,ffz=(txyz[[i+j-1+ss,3]]+txyz[[i+j+ss,3]]+txyz[[i+j+m+ss,3]]+txyz[[i+j+m+1+ss,3]])/4;
pp1={txyz[[i+j-1+ss,1]],txyz[[i+j-1+ss,2]],0};
pp2={txyz[[i+m+j+1+ss,1]],txyz[[i+m+j+1+ss,2]],ffz};
gg=Append[gg,Graphics3D[Cuboid[pp1,pp2]]]]];a1=Graphics3D[{Text["x",{1.1,-1.2,0.15}],Text["y",{-1.2,1.1,0.15}],Text["z",{-1,-0.9,1}]}];
Show[{gg,a1},Boxed->True,BoxStyle->Thickness[0.0 01]},Axes->True,ViewCenter->{0.5,0.5,0.5},AxesEdg e->{{-1,-1},{-1,-1},{-1,-1}},AxesStyle->{Thickness[0.008],RGBColor[0,1,1]},Ticks->None,AspectRatio->1,PlotRange->{{-1.2,1.2},{-1.2,1.2},{0,1}},ImageSi ze->{640,480},
ViewPoint->{4,3,2},
TextStyle->{FontSlant->"Italic",FontFamily->"Tim es",FontSize->40},DisplayFunction->$DisplayFunctio n]];
执行命令后,则输出6帧图片(见图1).双击6帧图片中的任意一个,都可以动起来.通过该动画演示过程,可以生动形象地展示利用用平顶柱体分割曲顶柱体的动态过程,更直观地理解二重积分定义中分割、求和、取极限的思想,激发学生的学习兴趣.
图1
解 在Mathematica平台输入下面语句:
Clear[f,g];
f[x,y_]=1-x-y;
g[x,y_]=2-x^2-y^2;
Plot3D[f[x,y],{x,-1,2},{y,-1,2}]
Plot3D[g[x,y],{x,-1,2},{y,-1,2}]
Show[%,%%]
执行命令后,一共输出三个图形(见图2.1).
图2.1
观察图2.13Ω的图形,为了确定积分上下限,把两曲面的交线投影到Oxy平面上,Mathematica平台继续输入下面语句:
jx=Solve[f[x,y]==g[x,y],y]
执行命令后,则输出
为了取出这两条曲线方程,在Mathematica平台继续输入下面语句:
执行命令后,则输出
再输入下面语句:
tu1=Plot[y1,{x,-2,3},PlotStyle->{Dashing
[{0.02}]},DisplayFunction->Identity];
tu2=Plot[y2,{x,-2,3},DisplayFunction->Identity];
Show[tu1,tu2,AspectRatio->1,DisplayFunction->
$DisplayFunction]
执行命令后,输出为图2.2.观察图2.2,可以看出,y1是下半圆(虚线),y2是上半圆,所以投影区域是一个圆.
图2.2
xvals=Solve[y1==y2,x]
执行命令后,则输出
为了取出x1,x2,在Mathematica平台输入下面语句:
x1=xvals[[1,1,2]]
x2=xvals[[2,1,2]]
执行命令后,则输出
Volume=Integrate[g[x,y]-f[x,y],{x,x1,x2},
{y,y1,y2}]//Simplify
解 首先作出区域Ω的图形.在 Mathematica平台输入下面语句:
g1=ParametricPlot3D[{Sqrt[2]*Sin[fi]*Cos[th],Sqrt[2]*Sin[fi]*Sin[th],Sqrt[2]*Cos[fi]},{fi,0,Pi/4},{th,0 ,2Pi}]
g2=ParametricPlot3D[{z*Cos[t],z*Sin[t],z},{z,0,1},{t,0,2Pi}]
Show[g1,g2,ViewPoint->{1.3,-2.4,1.0}]
执行命令后,则分别输出三个图形(见图3).
图3
观察图形3.3,可以选择柱坐标系计算,也可以选择球面坐标系计算.如果用柱坐标计算,在Mathematica平台输入下面语句:
Integrate[(g[x,y,z]/.{x->r*Cos[s],y->r*Sin[s]})*r,
{r,0,1},{s,0,2Pi},{z,r,Sqrt[2-r^2]}]
执行命令后,则输出
如果用球面坐标计算,在Mathematica平台输入下面语句:
Integrate[(g[x,y,z]/.{x->r*Sin[fi]*Cos[t],y->r*Sin[fi]*Sin[t],z->r*Cos[fi]})*r^2*Sin[fi],{s,0,2Pi},{fi,0,P i/4},{r,0,Sqrt[2]}]
执行命令后,则输出
由此看出,两种坐标系下计算的结果相同.
解:先调用软件包,Mathematica平台输入下面语句:
< 再输入 CylindricalPlot3D[4-r^2,{r,0,2},{t,0,2 Pi}] 执行命令后,则输出图4. 图4 执行命令后,则输出 因此,利用极坐标计算.在Mathematica平台再输入下面语句: z1=Simplify[z/.{x->r*Cos[t],y->r*Sin[t]}]; Integrate[z1*r,{t,0,2Pi},{r,0,2}]//Simplify 利用Mathematica 软件平台上进行数学实验,这种教学方式改变了过去的“讲授—记忆—测验”的传统学习过程,变为“直觉—试探—出错—思考—猜想—证明”的学习过程[5],使学生变被动为主动,参与到高等数学教学过程中来.充分调动学生的数学理论知识,数学软件知识,计算机知识和动手操作能力,构建完整的知识结构,提高综合应用能力,为今后的学习奠定良好的数学基础. [1]黄青群,高家宝,苏夏. Mathematica软件在《数学分析》中的应用[J].软件导刊,2013(4):117-119. [2]郭志军.Mathematica平台上极限与连续的数学实验研究[J].邢台职业技术学院学报,2010(10):74-77. [3]张二艳.Mathematica软件在高等数学教学中的应用[J].北京印刷学院学报,2006(4):77-80. [4]李国,蒋彦,杨东升,等.Mathematica软件在函数图形绘制及特性分析中的应用[J].现代电子技术,2006(22):59-60,66. [5]章栋恩,许晓革.高等数学实验[M].北京:高等教育出版社,2004. [6]吴赣昌.微积分[M].北京:中国人民大学出版社,2012.3 结 语