謝 妙 金盈楠 王 超 陳英才
(臺州學院物理系 浙江 臺州 318000)

基于VB仿真模擬二維彈簧雙振子的運動軌跡*
謝 妙 金盈楠 王 超 陳英才
(臺州學院物理系 浙江 臺州 318000)
基于VB語言開發出模擬二維平面內彈簧雙振子系統運動的仿真軟件.在任意給定系統參數條件下,利用該軟件可分別繪出振子在實驗室參考系和質心參考系中的動態軌跡,從而形象直觀地顯現彈簧雙振子系統在二維平面內的運動規律.
彈簧雙振子 VB 模擬 軌跡
彈簧雙振子系統,即由兩個振子和一個彈簧組成的力學系統,是中學以及大學物理中動量守恒和機械能守恒部分常見的力學模型.目前關于彈簧雙振子的題目或研究多局限于一維運動,這顯然不利于學生對該系統運動的全面認識[1~8].
本文基于Visual Basic開發設計出模擬二維彈簧雙振子運動的可執行程序,利用該軟件可直觀模擬演示任意參數條件下彈簧雙振子系統在二維平面內的運動.
2.1 理論模型
二維彈簧雙振子模型如圖1所示,即在光滑的水平面內,質量為m1的小球1和質量為m2的小球2通過勁度系數為κ,自然長度為l0的彈簧連在一起.在一定初始位置和速度條件下,系統可在水平面內運動.當彈簧出現拉伸或壓縮形變時,兩個小球均受到彈簧彈力作用.假定t時刻兩個小球間的距離為r,則彈簧彈力大小為
F=-κ(r-l0)
小球1受到的彈簧作用力為
F1=-Fr12
小球2受到的彈簧作用力為
F2=Fr12
其中為r12表示由小球1指向小球2的單位矢量.根據牛頓第二定律可得到兩個小球的加速度,即
(1)
(2)

圖1 二維彈簧雙振子模型圖
理論上,在任意給定初始位置和速度條件下通過對方程(1)和(2)進行積分求解可以得到兩個小球的速度隨時間的變化關系v1=v1(t)和v2=v2(t),通過再次積分則可以得到兩個小球空間位置隨時間的變化關系r1=r1(t)和r2=r2(t).但是由于兩個小球的運動相互影響,在大多數條件下我們很難求出兩個小球空間位置隨時間的變化的解析解.
2.2 小球位置和速度的數值求解
本文采用速度Verlet算法迭代求解并獲得兩個小球的位矢(r1和r2)和速度(v1和v2)隨時間的變化,具體如下:首先,根據t時刻兩個小球的位置、速度和加速度,求t+Δt(這里的Δt為迭代時間步長)時刻兩個小球的位置,即
(3)
(4)
然后,利用r1(t+Δt)和r2(t+Δt)求解兩個小球間的距離r(t+Δt)和彈簧彈力大小F(t+Δt),進而得到小球1受到的彈力F1(t+Δt)=-F(t+Δt)r12以及小球2受到的彈力F2(t+Δt)=F(t+Δt)r12,并由此求得t+Δt時刻兩個小球的加速度a1(t+Δt)和a2(t+Δt),即
(5)
(6)
最后,由t時刻和t+Δt時刻小球的加速度求解t+Δt時刻小球的速度,即
v1(t+Δt)=
(7)
v2(t+Δt)=
(8)
在該迭代算法中,迭代時間步長Δt的大小直接決定數值計算的精度.Δt越小,計算結果越準確,但模擬所耗費的時間也越長.本文選取Δt= 0.000 5 s.
2.3 基于VB語言的程序設計
軟件程序分窗體和模塊兩部分.軟件將各種操作均集中在一個窗體內,其中包含參數設置、命令按鈕和圖形輸出3個部分,如圖2所示.參數設置部分包含彈簧勁度系數、兩個振子(小球)的質量、初始位置、初始速度以及模擬運動時間等參數設置;命令按鈕部分包含系統生成、開始運動和結束程序3個按鈕;圖形輸出部分包含實物圖、實驗室參考系軌跡圖和質心系軌跡圖3個圖形區域.軟件程序的執行按照一定的流程進行設計,程序流程圖如圖3所示.需要說明的是,為了簡化程序編寫,本軟件輸出的實物圖中的彈簧用粗實線代替.

圖2 窗體界面

圖3 程序流程圖
作為例子,我們設定:彈簧勁度系數為5,小球1質量為1,初始坐標為(-10,1)、初始速度為(0,1),小球2質量為0.5,初始坐標為(-10,-1)、初始速度為(0.5,-2),并模擬演示系統在的運動軌跡(以上各參數單位均為國際單位).在上述參數條件下,振子系統整體(即質心)向x軸正向緩慢運動,同時每個小球相對質心又不停的運動.圖4和圖5分別給出了對應參數條件下兩個小球在實驗室參考系以及質心參考系中的軌跡圖形,其中淺色線對應小球1的軌跡,深色線對應小球2的軌跡.由圖4可以直觀看出,彈簧雙振子系統在給定參數條件下的運動是非常復雜的,但就整個運動軌跡而言,系統的運動又存在一定的規律性.這種規律性在質心參考系軌跡圖中有更明顯的體現,如圖5所示.在質心系中,兩個小球均繞質心做圓周振動,即繞質心轉動和相對質心振動同時進行.

圖4 實驗室系軌跡圖

圖5 質心系軌跡圖
彈簧雙振子系統是力學中的常見模型.本文基于VB語言開發出模擬二維平面內彈簧雙振子系統運動的仿真軟件.在任意給定系統參數條件下,利用
該軟件可分別繪出兩個振子在實驗室參考系和質心參考系中的動態軌跡,形象直觀地顯現雙振子系統的運動規律.將其用于物理課堂教學,可使學生加深對彈簧雙振子系統的認識,使物理知識化抽象為生動、形象進而達到良好的課堂教學效果.
1 張佩華.彈簧雙振子水平運動模型的建立及應用.貴州大學學報(自然科學版),2004(7):9~11
2 殷召連.彈簧雙振子怎樣運動.中學物理教學參考,2000(6):26~27
3 顧士明.恒力作用下的彈簧雙振子的運動.中學物理,2012(7):74~76
4 黃書鵬.物理模型在彈簧雙振子問題中的應用.物理教師,2009(1):7~9
5 王建鋒,魏俊梟,等.彈簧雙振子模型在物理競賽中的應用.物理教學探討,2006(9):45~51
6 王化銀,徐杰.例談彈簧雙振子問題的求解.中學物理教學參考,2003(7):35~36
7 陳衛國,余雷,等.坐標法解彈簧雙振子模型.上饒師范學院學報,2008(6):33~38
8 邱剛.基于質心參考系的“雙振子”運動問題的研究. 物理教師,2014(2):57~59
Simulation on the Movement Trajectory of Spring
Double Oscillators in 2D Space Based on VB
Xie Miao Jin Yingnan Wang Chao Chen Yingcai
(Physics Department ofTaizhou University,Taizhou,Zhejiang 318000)
One software for simulating the movement of spring double oscillators in 2D space is developed based on VB, which can display the movement trajectories of the oscillators in then laboratory reference frame and the center-of-mass reference frame at the same time under any given parameter condition, and can exhibit picturesquely and visually the dynamics of the spring double oscillators in 2D space.
spring double oscillators;VB;simulation;trajectory
*臺州市2016年大學生科技創新項目資助課題.
2017-01-14)