謝 妙 金盈楠 王 超 陳英才
(臺州學(xué)院物理系 浙江 臺州 318000)
基于VB仿真模擬二維彈簧雙振子的運(yùn)動軌跡*
謝 妙 金盈楠 王 超 陳英才
(臺州學(xué)院物理系 浙江 臺州 318000)
基于VB語言開發(fā)出模擬二維平面內(nèi)彈簧雙振子系統(tǒng)運(yùn)動的仿真軟件.在任意給定系統(tǒng)參數(shù)條件下,利用該軟件可分別繪出振子在實驗室參考系和質(zhì)心參考系中的動態(tài)軌跡,從而形象直觀地顯現(xiàn)彈簧雙振子系統(tǒng)在二維平面內(nèi)的運(yùn)動規(guī)律.
彈簧雙振子 VB 模擬 軌跡
彈簧雙振子系統(tǒng),即由兩個振子和一個彈簧組成的力學(xué)系統(tǒng),是中學(xué)以及大學(xué)物理中動量守恒和機(jī)械能守恒部分常見的力學(xué)模型.目前關(guān)于彈簧雙振子的題目或研究多局限于一維運(yùn)動,這顯然不利于學(xué)生對該系統(tǒng)運(yùn)動的全面認(rèn)識[1~8].
本文基于Visual Basic開發(fā)設(shè)計出模擬二維彈簧雙振子運(yùn)動的可執(zhí)行程序,利用該軟件可直觀模擬演示任意參數(shù)條件下彈簧雙振子系統(tǒng)在二維平面內(nèi)的運(yùn)動.
2.1 理論模型
二維彈簧雙振子模型如圖1所示,即在光滑的水平面內(nèi),質(zhì)量為m1的小球1和質(zhì)量為m2的小球2通過勁度系數(shù)為κ,自然長度為l0的彈簧連在一起.在一定初始位置和速度條件下,系統(tǒng)可在水平面內(nèi)運(yùn)動.當(dāng)彈簧出現(xiàn)拉伸或壓縮形變時,兩個小球均受到彈簧彈力作用.假定t時刻兩個小球間的距離為r,則彈簧彈力大小為
F=-κ(r-l0)
小球1受到的彈簧作用力為
F1=-Fr12
小球2受到的彈簧作用力為
F2=Fr12
其中為r12表示由小球1指向小球2的單位矢量.根據(jù)牛頓第二定律可得到兩個小球的加速度,即
(1)
(2)
圖1 二維彈簧雙振子模型圖
理論上,在任意給定初始位置和速度條件下通過對方程(1)和(2)進(jìn)行積分求解可以得到兩個小球的速度隨時間的變化關(guān)系v1=v1(t)和v2=v2(t),通過再次積分則可以得到兩個小球空間位置隨時間的變化關(guān)系r1=r1(t)和r2=r2(t).但是由于兩個小球的運(yùn)動相互影響,在大多數(shù)條件下我們很難求出兩個小球空間位置隨時間的變化的解析解.
2.2 小球位置和速度的數(shù)值求解
本文采用速度Verlet算法迭代求解并獲得兩個小球的位矢(r1和r2)和速度(v1和v2)隨時間的變化,具體如下:首先,根據(jù)t時刻兩個小球的位置、速度和加速度,求t+Δt(這里的Δt為迭代時間步長)時刻兩個小球的位置,即
(3)
(4)
然后,利用r1(t+Δt)和r2(t+Δt)求解兩個小球間的距離r(t+Δt)和彈簧彈力大小F(t+Δt),進(jìn)而得到小球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的大小直接決定數(shù)值計算的精度.Δt越小,計算結(jié)果越準(zhǔn)確,但模擬所耗費(fèi)的時間也越長.本文選取Δt= 0.000 5 s.
2.3 基于VB語言的程序設(shè)計
軟件程序分窗體和模塊兩部分.軟件將各種操作均集中在一個窗體內(nèi),其中包含參數(shù)設(shè)置、命令按鈕和圖形輸出3個部分,如圖2所示.參數(shù)設(shè)置部分包含彈簧勁度系數(shù)、兩個振子(小球)的質(zhì)量、初始位置、初始速度以及模擬運(yùn)動時間等參數(shù)設(shè)置;命令按鈕部分包含系統(tǒng)生成、開始運(yùn)動和結(jié)束程序3個按鈕;圖形輸出部分包含實物圖、實驗室參考系軌跡圖和質(zhì)心系軌跡圖3個圖形區(qū)域.軟件程序的執(zhí)行按照一定的流程進(jìn)行設(shè)計,程序流程圖如圖3所示.需要說明的是,為了簡化程序編寫,本軟件輸出的實物圖中的彈簧用粗實線代替.
圖2 窗體界面
圖3 程序流程圖
作為例子,我們設(shè)定:彈簧勁度系數(shù)為5,小球1質(zhì)量為1,初始坐標(biāo)為(-10,1)、初始速度為(0,1),小球2質(zhì)量為0.5,初始坐標(biāo)為(-10,-1)、初始速度為(0.5,-2),并模擬演示系統(tǒng)在的運(yùn)動軌跡(以上各參數(shù)單位均為國際單位).在上述參數(shù)條件下,振子系統(tǒng)整體(即質(zhì)心)向x軸正向緩慢運(yùn)動,同時每個小球相對質(zhì)心又不停的運(yùn)動.圖4和圖5分別給出了對應(yīng)參數(shù)條件下兩個小球在實驗室參考系以及質(zhì)心參考系中的軌跡圖形,其中淺色線對應(yīng)小球1的軌跡,深色線對應(yīng)小球2的軌跡.由圖4可以直觀看出,彈簧雙振子系統(tǒng)在給定參數(shù)條件下的運(yùn)動是非常復(fù)雜的,但就整個運(yùn)動軌跡而言,系統(tǒng)的運(yùn)動又存在一定的規(guī)律性.這種規(guī)律性在質(zhì)心參考系軌跡圖中有更明顯的體現(xiàn),如圖5所示.在質(zhì)心系中,兩個小球均繞質(zhì)心做圓周振動,即繞質(zhì)心轉(zhuǎn)動和相對質(zhì)心振動同時進(jìn)行.
圖4 實驗室系軌跡圖
圖5 質(zhì)心系軌跡圖
彈簧雙振子系統(tǒng)是力學(xué)中的常見模型.本文基于VB語言開發(fā)出模擬二維平面內(nèi)彈簧雙振子系統(tǒng)運(yùn)動的仿真軟件.在任意給定系統(tǒng)參數(shù)條件下,利用
該軟件可分別繪出兩個振子在實驗室參考系和質(zhì)心參考系中的動態(tài)軌跡,形象直觀地顯現(xiàn)雙振子系統(tǒng)的運(yùn)動規(guī)律.將其用于物理課堂教學(xué),可使學(xué)生加深對彈簧雙振子系統(tǒng)的認(rèn)識,使物理知識化抽象為生動、形象進(jìn)而達(dá)到良好的課堂教學(xué)效果.
1 張佩華.彈簧雙振子水平運(yùn)動模型的建立及應(yīng)用.貴州大學(xué)學(xué)報(自然科學(xué)版),2004(7):9~11
2 殷召連.彈簧雙振子怎樣運(yùn)動.中學(xué)物理教學(xué)參考,2000(6):26~27
3 顧士明.恒力作用下的彈簧雙振子的運(yùn)動.中學(xué)物理,2012(7):74~76
4 黃書鵬.物理模型在彈簧雙振子問題中的應(yīng)用.物理教師,2009(1):7~9
5 王建鋒,魏俊梟,等.彈簧雙振子模型在物理競賽中的應(yīng)用.物理教學(xué)探討,2006(9):45~51
6 王化銀,徐杰.例談彈簧雙振子問題的求解.中學(xué)物理教學(xué)參考,2003(7):35~36
7 陳衛(wèi)國,余雷,等.坐標(biāo)法解彈簧雙振子模型.上饒師范學(xué)院學(xué)報,2008(6):33~38
8 邱剛.基于質(zhì)心參考系的“雙振子”運(yùn)動問題的研究. 物理教師,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年大學(xué)生科技創(chuàng)新項目資助課題.
2017-01-14)