212福建电脑2008年第6期
Matlab动画演示教学
张
萸1,张敬华2
(1.福建农林大学计算机与信息学院福建福州3500022.福建农林大学计算机与信息学院福建福州3500022)
【摘要】:介绍了Matlab的功能与特点,阐述了Matlab在高等数学教学中的作用,并以高等数学教学中遇到的问题为例,详细讨论了MATLAB应用于高等数学的教学模式。
【关键词】:Matlab;高等数学教学;可视化
0、Matlab的动画功能与特点
MATLAB是MathWorks公司开发的新一代的科学与工程计算软件,已经成为全球应用最广泛最流行的软件之一.matlab自
产生之日起就具有方便的数据可视化功能,以将向量和距阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图[1]。新版本的matlab对整个图形处理功能作了很大的改进和完善,使他不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),matlab同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,matlab也有相应的功能函数,保证了用户不同层次的要求。matlab还着重在图形用户界面(gui)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。随着该软件应用的不断普及,用户对其动画功能的需求也在不断增加,matlab动画功能也将得到逐渐的改善。1、Matlab产生动画的方式
MATLAB产生动画的方式有两种:1.电影方式
以图象的方式预存多个画面,再将这些画面快速地呈现在屏幕上,就可以得到动画的效果。这种方式类似于电影的原理,可以产生缤纷亮丽的动画,但是其缺点是每个画面都必须事先备妥,无法进行实时成象(real-timerendering),而且每个画面,以至于整套动画,都需要占用相当大的内存空间。
2.对象方式
在MATLAB的"句柄图形"(HandleGraphics)概念下,所有的曲线或曲面均可被视为一个对象,MATLAB可以很快地抹去旧曲线,并产生相似但不同的新曲线,此时就可以看到曲线随时间而变化的效果。使用对象方式(即句柄图形)所产生的动画,可以呈现实时的变化,也不需要太高的内存需求,但其缺点是无法产生太复杂的动画。
2、matlab在高等数学的作用
通常在类似我校这样的农林院校里,本科的高等数学课程只在新入学的一个学期内完成。由于课时有限,一个班有100人以上,若用传统的教学方式,将会使得教学效果极差,而且教学内容也将大打折扣。随着现代科学和计算机技术的迅速发展,多媒体技术等多种教学手段在数学教学中的应用,使得传统教学中的很多弊端得以改善:减少了板书,降低了重复教学的工作量,增加了单位时间的教学信息量,丰富了教学内容,有利于激发学生的学习兴趣。Matlab不仅能绘制静态图形,帮助教师解释函数和定理,还可以轻易地实现图形的动画效果,帮助学生理解函数或参数变化的效果。Matlab将过程和结果用可视、动态的形式表现出来,不但能有效地提高学生学习的兴趣,使得学生的理解更加深刻、透彻,同时也能大大提高教学效果。例如极限概念中的任意小、定积分应用中旋转体的体积、解析几何中曲线及曲面的形成过程及变换过程等等,通过传统的教师讲授、黑板静态图示很难形象、生动地表现出来。3、Matlab在高等数学中的具体应用
sinx
=1
例1:x®0x
在课本中,关于
sinx
lim
lim
x®
x
=1
的证明过程,学生仅仅从理性认识了该重要极限的证明过程,但
是我们可以通过matlab的动画演示,让学生更加深入了解该极限的趋近过程。
在动画演示中,函数值(红色小球)的变化很直观,并且它的位置可以用MATLAB很容易计算出来,下面是动画的两帧。MATLAB程序如下:
x=0:0.1:4*pi;y=sin(x)./x;xmax=max(x);ymin=min(y);
axis([0xmaxymin1]);holdonplot(x,y,'b');
h=line('color',[100],'marker','.','markersize',40,'erasemode','xor');n=length(x);i=n;
whilei>=1
set(h,'xdata',x(i),'ydata',y(i));drawnow;pause(0.05);i=i-1;end
图1极限动画演示(两帧)
类似地,对微分方程部分,我们虽不一定能求得出其解析解,但我们能利用Matlab求得其数值解,再经过数据的可视化命令,即可将其解的性态直观地展示给学生。
在讲解到多元函数微积分时,多元函数的图像作起来是非常困难的,而离开函数的图像去讲解函数的性质等是抽象并且不易理解的,这时引入Matlab编程,可快速方便地作出多元函
图2马鞍面形成动画演示(两帧)
程序代码如下:
(下转第193页)