MATLAB在中学物理教学中的基本应用,本文主要内容关键词为:中学物理论文,教学中论文,MATLAB论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
MATLAB编程语言最早由MathWorks公司于1984年推出, 当时的版本已经用C语言作了完全的改写。
1999年初MathWorks公司推出了MATLAB5.3版。2000年10月底推出了其全新的MATLAB6.0正式版,在核心数值算法、界面设计、外部接口、应用桌面等诸多方面有了极大的改进。
目前MATLAB已经成为国际上最流行的科学与工程计算的软件工具,有人称它为“第四代”计算机语言,它在国内外高校和研究部门正扮演着重要的角色。
MATLAB语言有上千条指令,编程具有较强的技巧性,这会使许多初学者望而却步。但是作为在中学物理中的初步应用,经常使用的指令不过十几条,而且它的操作界面与Windows风格相似, 因此学起来困难并不大。
安装完MATLAB后,计算机显示屏上会出现MATLAB的快捷方式。
双击该图标就可打开MATLAB的命令窗口,如图1所示。
图1 MATLAB的命令窗口
在命令窗口,可以直接从键盘输入命令或公式,执行的结果也直接显示出来。例如要计算y=sin(60°)+cos[2](60°);在命令窗口中输入公式后,计算结果y=1.1160就直接显示出来。其中pi表示π, 因为该语言要求角度以弧度为单位,因此要先转换单位。MATLAB提供了几十种函数,利用这些函数我们可以构建出各种简单的或复杂的表达式,利用命令窗口,我们就可以方便地进行各种表达式的数值运算。从这种意义上说,命令窗口是一个性能极高的计算器。
在物理教学中经常遇到复杂的数值运算,比如“周期为5 小时的卫星距地面多高”我们可以很快地推导出周期与高度关系的表达式这样复杂的运算用纸笔推算几乎不可能,用计算器也很麻烦,但用MATLAB就简单了。如图2所示,先把周期变成秒,输入t=5*3600,再输入地球半径的值R=6400*1000,然后向窗口输入h=(9.8*R^2*t^2/(4*pi^2))^(1/3)-R的表达式。其中平方用^2表示,乘号月*表示,外三次方用^(1/3)表示,π用pi表示。计算结果为h=8.48×10[6]米,即约8480公里。
图2 计算卫星的高度
如果我们输入t=24*3600,则得到同步卫星距地心为h=3.6万公里。可见在命令窗口中进行数值计算不需要编程序。非常方便。我们还知道月球的周期大约是27天,同样可以计算月地距离。
在命令窗口中还可以画函数图象。在物理教学中经常要通过图象来分析物理量的变化规律,比如万有引力随高度变化的规律:F/F[,0]=(R/R+h)[2],其中R表示地球半径,h表示距离地面的高度,F 表示物体在h处受到的万有引力,F[,0]表示该物体在地面受到的万有引力。在图3所示的命令窗口中输入两条指令,得到的图象如图4所示。
图3 画图命令
图4 引力变化图象
图3窗口中的第二行表示高度从零变化到64000公里,变化的步长是100公里。第三行计算引力比值,在这里除号用“./”表示,平方用“.^”表示(要注意多了一个点)。plot(h,x)是画图命令,含义是以h为自变量,x为因变量画图。grid on是画网格线的命令。在命令窗口中输入最后一行后回车,便自动出现一个图4所示的图形。 由该图可见引力在一万公里的高度内急剧变化,减小到地面的15%,以后变化趋缓,超过三万公里引力减至地面的5%以下。 结合该图老师可以提出一个问题“宇航员在飞船中失重,是不是所受地球的引力变得很小所造成的”。多数学生都这样认为,其实飞船的高度一般都在一千公里以下。图4中高度取值范围太大,不易观察一千公里内的变化,我们可以把范围变成h=0∶20∶2000,所绘图象如图5所示。
图5 两千公里内引力变化
由图5可见,一千公里高度处引力为地面的75%, “和平号”太空站正常运转时距地面高度三百多公里,受到的引力是地面的90%,但里面的宇航员都处于漂浮状态。显然这种失重不是由于引力减弱而引起的。
图6 数据拟合
利用命令窗口还可以进行数据拟合。所谓数据拟合就是由已知的一系列离散数据出发,寻找一个函数,让这些离散数据点最靠近函数的图线。显然,拟合是寻找数量之间联系规律的一种方法,在物理中有广泛的应用。例如在欧姆定律的实验中得到一组电压和电流数据,现在要找出它们的关系式,其操作如图6所示。 前两行输入电压和电流的实验值,第三行描点如图7,可见两者是线性关系。P=polyfit(v,i,1)是拟合命令,其含义是找到一个i=f(v)的表达式, 这个表达式是i =av+h的形式,其中a、b两个系数保存在变量P中,执行后显示P=[0.2 0],表明i=0.2v
图7 欧姆定律描点
P=polyfit(v,i,1)括号中的“1”表示用一次函数拟合。究竟选几次函数拟合,要观察描点图象的特点,如果图象是弯曲的,就可以试探二次或多次函数拟合。当然,物理实验中的数据一般不会象本示例一样规整,要经过反复试探才能发现理想的拟合方程。
利用命令窗口还可以解方程。例如要解方程2x[3]-4x[2]+8x-20=0,只要在图8所示命令窗口中输入即可。其中roots 是求根的命令,结果有一个实根和两个虚根。
图8 解三次方程
MATLAB还可以解微分方程,例如解单摆运动的微分方程d[ 2]θ/dt[2]+g/Lsinθ=0,可获得不同时刻的角度值,并画出θ-t图象。
解微分方程的语句比较复杂,具体每条语句的作用将在后文详述。在开始学习阶段,要重点掌握一些基本命令,学用结合,以用促学,逐渐积累。
标签:matlab论文;