曹 盼
(1. 延安大學物理與電子信息學院,陜西 延安 716000; 2. 延安市安塞區高級中學,陜西 延安 717400)
隨著個人計算機性能不斷提高和各種實用應用軟件的開發,在高中階段就可以利用計算機對復雜的物理競賽和高考題做一些有趣的探究.20世紀60年代,科學家在研究“費米-巴斯塔-烏勒姆實驗”時發展了一套數值和解析相結合的研究方法,從數值結果和圖形顯示中獲得定性啟示,再試圖用解析方法給予證明,然后又回來用數值分析檢驗解析的推論,如此循環往復,步步深入.烏勒姆稱之為“計算協同學”[1].
易化物理(ePhysics)是筆者自主開發的一款輕型實用的中學數學物理問題解決工具,具有計算、繪制幾何元素和參數曲線、坐標拾取和簡單測量標記等功能,支持的4個可變參數可實現動態分析.該軟件支持界面交互、命令行交互和腳本批處理3種操作方式,由于腳本是純文本文件,結合Windows默認的腳本語言VBScript可以作為一個計算物理算法實現工具.
雙振子彈簧系統是高中物理競賽和中學物理雜志常討論的一個模型.文獻[2](簡稱郭文)利用Matlab直接給出兩振子位移和速度的解析表達式,然后繪制曲線進行分析討論,這實際上屬于計算機“代數”[1];文獻[3](簡稱于文)采用數值分析的方法,利用運動仿真模擬(可參見文獻[4])得到振子的速度圖像,并做簡要分析.筆者讀后深受啟發,一是感到郭文在高中有些突然,二是感到于文意猶未盡,恰逢讀到“計算協同學”的思想,于是從計算物理實驗的角度做了如下研究.
在圖1中,物塊A、B的質量相等,在物塊A上施加一水平恒力F作用,物塊B足夠長,放置在水平地面上,所有接觸面都是光滑的.輕彈簧開始處于原長,運動過程中始終處于彈性限度內,開始時物塊A、B是靜止的.求物塊A、B運動的速度隨時間的變化規律.

圖1 一個雙振子彈簧系統示意圖
設A和B的質量分別為m1和m2,本題中m1=m2=m.分別對物塊A和B應用牛頓第二定律得
F-k(x1-x2-l0)=m1a1.
(1)
k(x1-x2-l0)=m2a2.
(2)
以上方程組中有交叉項且很復雜,下面用數值仿真的方法計算.算法設計如下:先給定相關參數(質量、彈簧原長、外力和勁度系數等),根據(1)、(2)兩式計算兩物塊的加速度,在“足夠短”時間dt內分別計算末速度,用對應的新速度按勻速直線運動計算位移,并計算兩物塊的位置坐標,畫線連接每一小段的速度,最后更新速度進入循環直到條件滿足時退出,VBScript操作易化物理的實現程序見表1.

表1 VBScirpt操作易化物理的實現程序
程序采用VBScript有兩個優勢,一是VB語法(高中數學必修課作為算法實現語言)有廣泛的學生基礎,二是無需用戶安裝解釋器,文本文件另存為*.vbs雙擊打開就可運行.經過筆者封裝優化后,調用易化物理的只有設置線段wlSetL和畫線wlLine兩個語句,從以上程序可以看出VBScript和易化物理的結合是很緊湊的.注意VBScript程序不要求先定義,但作為嚴謹的程序筆者還是傾向于先定義.
上述程序運行結果如圖2,速度圖像與文獻[3]給出的結果相同.由圖2可以看出兩條速度曲線周期性相交,交點表明彈簧伸長或壓縮到最大,此時兩者速度相等可看成整體.觀察這些交點落在一條直線上,表明整體總的來講有一個勻變速直線運動的大趨勢,這與質心運動定理的結果是一致的.

圖2 兩物塊的速度圖像

圖3
周期性容易使人聯想到一個彈簧振子,按正弦或余弦規律變化,因此雙振子的運動可以看成質心的勻加速直線運動和彈簧引起的正余弦運動的疊加,即v=act+vmsin(ωt+φ0).下面根據易化物理提供的動態參數曲線功能對圖像(數值計算結果)進行擬合,得到相關的“實驗參數”,這里的實驗是計算物理實驗,其研究對象是數學模型而不是客觀實體,但兩者的基本思想是一致的.擬合通常采用的最小二乘法,對很難求解的復雜問題,人們可以根據圖像快速判斷兩條曲線是否重合,這利用了人類知覺具有的結構優勢效應,研究表明人在識別外界事物時,物體的整體結構對識別物體本身起到有利的作用[5].
在表1VBScript程序中添加繪制動態曲線的代碼見表2.

表2
F/(m1+m2) 表示質心加速度(直接利用2.1的結論),k和m是由工具欄兩個滑竿直接控制的可變參數(進一步可由方向鍵微調),b由鍵盤W/S控制,為了獲得參數只需輸入顯示代碼見表3,其中yB控制文本位置,參數k和m分別對應最大速度vm和角速度ω.

表3
先取b=0,保持k(vm)不變,調整好m(ω)使周期一致,然后再調整k(vm)使大小與v1重合,運行結果分別見圖4和圖5,得符合條件的參數為vm=0.5 m/s,ω=10 rad/s.調整b可知,v2和v1相差相位π.

圖4 保持k(vm)不變調整m(ω)

圖5 進一步調整k(vm)使重合
為了探究vm和ω的物理意義,利用控制變量的方法分別實驗,實驗結果見表4、表5和表6.

表4 F=10 N,k=50 N/m,改變m(kg)

表5 F=10 N,m=1 kg,改變k(N/m)

表6 k=50 N/m,m=1 kg,改變F(N)


圖6

圖7


圖8

圖9

圖10
將比例系數和組合物理量代入擬合曲線得
(3)
(4)
兩式積分并將初始條件代入得
(5)
(6)
將(3)、(4)式微分得
(7)
(8)
不難證明(5)~(8)式和(1)、(2)兩式是等價的.
結論:本文在“計算協同學”的基本思想下利用新型計算軟件,以一個雙振子彈簧系統為例,從計算物理實驗出發,通過數據分析、猜想和證明給出了一種在高中階段應用計算機探究復雜物理問題的方法.
參考文獻:
1 郝柏林,張淑譽. 數字文明:物理學和計算機(第2版)[M]. 北京:科學出版社,2017:142-147,137-138.
2 郭學鵬,姜愛偉. 剪斷細線后如何運動——MATLAB數值求解[J]. 物理教學,2017(5):54-56.
3 于志明. 用數值方法分析兩例力學問題[J]. 物理教師,2017(5):60-62.
4 曹盼. C/C++在分析小氣球運動中的應用[J]. 物理教師,2013(12):68-69.
5 全國十二所重點師范大學編寫. 心理學基礎(第2版)[M]. 北京:教育科學出版社,2008:119-120.