@rwh405
2016-05-09T09:06:28.000000Z
字数 1192
阅读 817
通过Euler-Cromer方法编写程序,研究了非线性情况下的单摆运动规律,程序中忽略阻尼的影响,并且没有加入驱动力。
分析单摆的受力情况,运用牛顿第二定律可以得出它的运动方程
式中为单摆摆过的角度,为重力加速度,为摆线长度。
而对于角速度有方程
联立上两个方程组可以得到
通过Euler-Cromer方法将这个方程组使用在程序中,可化为递推式
通过设定一些初始值,利用上面的递推式可以得到在这种初值条件下一系列时刻的和值,通过这些散点可以画出图、图以及出图。
首先,我设定摆线长度为1.0m,总时间为10s,。因为单摆最大振幅取决于释放的初始角度,所以通过改变初始角度来改变最大振幅。先设定初始角度为0.2rad,得到如下的图:
这个曲线图实际上与做了线性近似后得到的图没有大的区别,这是因为设定的初始角度为0.2rad,单摆的振幅处于一个较小的范围内,所以近似关系可以较好的成立。然后我们可以加大初始角度,比如设定初始角度为0.5rad,可以得到下面的曲线:
对比上面两张图可以发现,在非线性情况下,改变初始角度后,单摆的周期会发生变化。这与简谐近似后的单摆是不同的,角度较小时通过近似关系得到的方程可以求出周期为,能够看出这种情况下周期是与初始角度无关的。为了更直观的看出差异,我们可以进一步加大初始角度,令初始角度为1.0rad,可以得到下面这张曲线图:
对比上面三张图,初始条件中只有初始角度不同,可以看出随着初始角度的增大,单摆的周期也会变大。也就是说随着单摆最大振幅的增大,它的周期也随之增大。实际上,这与我们的直观感觉相同。
通过这个程序研究非线性情况下单摆振幅和周期的关系,随着单摆最大振幅的增大,单摆的周期也随之变大。由于没有考虑阻尼和驱动力,所以单摆的运动仍然为一种周期性运动。