算法伽利略与自由落体运动

  • 格式:doc
  • 大小:71.00 KB
  • 文档页数:3

算法:伽利略与自由落体运动
伽利略奥.伽利略(Galileo Galilei,1564 - 1642)
是意大利文艺复兴后期伟大的天文学家、物理学家、
力学家和哲学家,也是近代实验物理学的开拓者。

1590年,伽俐略在意大利的比萨斜塔顶层做了
著名的自由落体运动实验,让两个重量相差10倍的
铁球,同时从塔顶落下,结果,两球同时着地,因
而,雄辩地一举推翻了束缚人们思想近二千年的希
腊著名学者亚里士多德关于重量不同的物体,其下
落的速度也不相同的“物体下落速度与重量成正比”
的理论。

伽利略开创了实验物理的新时代,被人们称为“近代科学之父”。

一、利用计算机处理物理实验数据
在我们高中学习生活中,已经越来越多地应用信息技术来开展学习,比如我们可以在数学、物理、化学的学习中使用电子计算器,可以使用TI数理计算器来进行数据处理,还可以利用DIS数字信息系统,来进行物理实验。

这些信息技术的使用,极大地提高了我们学习的效率。

这些工作都是在计算机的支持下才能正常开展,事实上,我们经过学习,自己也能够编制程序实现这些功能。

在现有的许多高中物理教材中,测定自由落体运动加速度的实验已经不作为必修的内容了,而在高中物理一年级教材中,还有一个实验是“用打点计时器测量匀加速直线运动加速度”,这个实验同学们都做过,实验过程非常简单,但在实验后处理数据时,却比较麻烦。

用计算机处理数据,首先也要处理纸带,然后记录数据,再选用合适的计算公式,最后编程处理。

1、纸带处理
从一个清晰的小点开始,标记一个起点“0”点,然后每隔五个点作一个标记,分别记作“1”、“2”……“n”。

2、数据测量
从“0”点开始,测量每一个标记点间的长度,分别记作S1、S2…..Sn。

3、计算方法
由于每一个标记间包括五个计时点,打点计时器使用是的220V/50HZ 的交流电,所以每个计时点的时间是1/50秒,即0.02秒,而五个计时点的时间就是0.1秒,因此,对应每一个标记点间长度的时间分别是t1、t2……tn,它们都是0.1秒。

计算公式:对于匀加速直线运动来说,ΔS=at2,则a=ΔS/t2=S/0.01=100ΔS(m/s2)。

这样,对于n个标记点,则有n-1个加速度a,分别是a1、a2……an-1。

a1=100(S2-S1),a2=100(S3-S2)……an-1=100(Sn-Sn-1)
最后求平均值:a=(a1+a2+……+an-1)/(n-1)。

二、程序实现
范例:我用VB来编写程序。

程序中用到了一个循环语句、一个输出语句。

其中输出语句与顺序结构例题中的语句一致。

假设,我们有六个测量点,分别有六个长度值。

为了简化问题,我们直接在程序中用赋值语句,将每一标记点间的长度赋值给数组中的每一个变量。

(1)建立窗体和输出、命令按钮组件对象。

(2)编写“Command1”触发的程序代码。

第一行,定义了一个有6个下标的单精度数值类型数组S,用于保存每一标记点间的长度值。

定义了单精度数值型变量a,用于保存每次计算得出的加速度值。

定义了一个用于累加加速度数的变量b。

还定义了整数类型变量I,用于控制循环次数。

第二行至第七行,分别将六个长度值分别赋值给数组s的六个下标变量,即S(1)里保存S1的值,S(2)里保存S2的值,其它依此类推。

第八行,对用于累加加速度值的变量b进行初值化,一般作为累加器的变量初始值应该赋值为“0”。

第九行,开始一个FOR循环,循环变量I从1变化到5,每次增加1,所以一共循环五次。

第十行,计算每一个标记点处的加速度值,并将计算值赋值给变量a。

第十一行,将每一个标记点处的加速度值累加到变量b中。

第十二行,在NEXT语句处,循环变量值增加1,并且判断循环变量值有没有超过终值5,如没有超过则从For的下一行开始重复执行;如超过终值,则结束循环,执行Next的下一行。

第十三行,结束循环后,将累加变量b的值除以5,得到加速度的平均值,并将这个平均值连接上单位(m/s2)后,赋值给文本标签Label1的caption属性,用于输出。

(3)运行程序。

单击“Command1”,就能在原来“Label1”的位置上加速度平均值“8.8(m/s2)”。