陳燕
(蘇州第十中學(xué) 江蘇 蘇州 215006)
物理教學(xué)中,波的疊加與波的干涉很難用實物清晰地演示這種不斷變化的動態(tài)過程,給學(xué)生學(xué)習(xí)帶來了一定的障礙.為了提高波動教學(xué)中的實驗效果,促進(jìn)學(xué)生對波動過程的認(rèn)識和理解,用計算機(jī)以Visual Basic 為編程工具,設(shè)計“波的疊加”教學(xué)輔助軟件,模擬演示波的產(chǎn)生和傳播,并突出顯示在波動中的質(zhì)點仍在原處做簡諧振動以及兩列波相遇后發(fā)生疊加情況與波的干涉實驗.
模塊程序是生成即時曲線的核心部分,其中主要有兩個程序片斷,其中“畫短線”片斷主要功能為:將傳入點的坐標(biāo)(X2,Y2)與前一個點的坐標(biāo)(X1,Y1)(在上一次傳入時保存在其中)用Line函數(shù)畫一短線,然后再保存該點坐標(biāo)作為下一次的(X1,Y1).在該代碼段中做了將絕對坐標(biāo)轉(zhuǎn)換成相對坐標(biāo)的動作,將圖線調(diào)整至適當(dāng)?shù)拇笮∫赃m應(yīng)圖片框,具體算法如下:
w =obj.ScaleWidth
h =obj.ScaleHeight
X = (xx -range.MinX) / (range.MaxX - range.MinX) * w
Y = h - (value -range.MinY) / (range.MaxY - range.MinY) * h
“生成三條曲線”片斷主要功能為由波的函數(shù)得到X,Y值(即點的坐標(biāo)),再由該值調(diào)用“畫短線”片斷生成即時曲線.在該代碼段中第一次畫函數(shù)圖線時,將1 000個點的函數(shù)值放到數(shù)組source(2,1 000)中,在以后畫函數(shù)圖線時只要用該數(shù)組中的值即可,無需再計算函數(shù),加快程序運行速度.具體算法如下:
For i = 0 To 999
s =i / 100
source(0,i) = tA1.Text * Sin(-2 * PI *
iW1 / 10 * s + tF1.Text * PI / 180)
source(1,i) = tA2.Text * Sin(-2 * PI *
iW2 / 10 * s + tF2.Text * PI / 180)
……
Next i
打開時間開關(guān)后當(dāng)波傳播時只要依次調(diào)用source數(shù)組中的函數(shù)值(通過求模運算實現(xiàn)數(shù)組的循環(huán))即可實現(xiàn)函數(shù)圖線的移動,這里通過對用戶輸入的頻率值加以限定(1~50間的整數(shù))以保證三個波的圖線在畫圖框內(nèi)都為波長的整數(shù)倍,具體算法如下:
For i = 0 To 1000
s =i / 100
ir = (i - k) Mod 1000
If ir < 0 Then
ir = ir + 1000
End If′求向右傳播的波的模
il = (i + k) Mod 1000′求向左傳播的波的模
If opt1R = True Then
t0 = source(0,ir)
Else
t0 = source(0,il)
End If
If aa = 1 Then
DrawLine object, 0, t0, s, myrange, color0 畫第一列波的圖線
End If
……(以下為畫第二列波和疊加波以及網(wǎng)絡(luò)線的圖線)
Next i
本系統(tǒng)的算法有普遍適用的三大特色.
(1)有個通用畫圖模塊,可以根據(jù)需要畫出任意函數(shù)圖線,且函數(shù)圖線是短線組成而不是點組成,避免圖形變化劇烈時圖線失真.
(2) 將1 000個點的函數(shù)值放到數(shù)組中,在以后畫函數(shù)圖線時只要用該數(shù)組中的值即可,無需再計算函數(shù),加快程序運行速度.
(3)把輸入的描述波動物理量的絕對值轉(zhuǎn)化為與窗體大小相適應(yīng)的相對值,以畫出適宜觀察的圖線.
如圖1所示,進(jìn)入主窗體后在輸入兩列波的初相位(φ)、頻率(f)、振幅(A),選擇傳播方向后按“確定”按鈕,這時出現(xiàn)三列波的圖線,若打開時間開關(guān),則演示波的傳播過程.按網(wǎng)格按鈕可選擇是否添加網(wǎng)格.在波的傳播過程中如果改變?nèi)我徊ǖ膫鞑シ较颍到y(tǒng)會即時反映出來.
圖1 主窗體
按復(fù)位按鈕恢復(fù)初始狀態(tài);按退出按鈕將退出程序.
按確定按鈕后,為更加清楚的看清波形,可使用工具欄上的“第一列波”、“第二列波”、“疊加波”按鈕來實現(xiàn)是否是三列波同時出現(xiàn),還是僅出現(xiàn)想要顯示的波.
為了更清楚地說明波在傳播過程中質(zhì)點只以其平衡位置為中心做簡諧振動,不跟隨波運動,可以用“顯示質(zhì)點”菜單突出顯示波動中的某一質(zhì)點,具體研究波動中質(zhì)點的運動情況.
本軟件在顯示波傳播過程時有兩種顯示方式,可用“顯示方式”菜單來調(diào)節(jié).兩種方式如圖2和圖3所示.
圖2 方式1 圖3 方式2
方式1為動態(tài)顯示模式,方式2為定格顯示某一時間段內(nèi)的波形變化情況.
利用本軟件可以顯示任意兩列波疊加所產(chǎn)生的圖線,如波包、波的干涉(駐波)等,如圖4和圖5所示.
圖4 波包 圖5 波的干涉
該教學(xué)輔助軟件的特點為以下幾點.
(1)該程序可演示一列波的產(chǎn)生和傳播過程,并能改變各種參數(shù).
(2)能演示同相或反相、同頻率或不同頻率的兩列波的疊加情況.還可選擇疊加波形與兩子波形同時呈現(xiàn)于熒屏,使波的疊加情況清晰可見.
(3)能演示波的干涉產(chǎn)生的全過程、波的干涉圖樣以及波的干涉條件.
(4)突出顯示波動中的某一質(zhì)點的振動情況.
(5)可隨時啟用慢鏡頭功能,可調(diào)節(jié)波的傳播速度,將實際的波動過程的時間延長,增強(qiáng)演示的效果.
(6)具有暫停功能,在演示過程中可在任何時刻將演示的現(xiàn)象定格,便于對演示過程的分析與講解.
開展以創(chuàng)新為主的素質(zhì)教育已成為教育改革的主旋律,以多媒體計算機(jī)輔助教學(xué)為核心的教育技術(shù)和教學(xué)手段的革新正將這段主旋律推向一個新的高潮.CAI以其直觀、形象、生動的教學(xué)效果將有助于加深學(xué)生對教學(xué)內(nèi)容的理解,有助于培養(yǎng)學(xué)生空間思維能力,有助于學(xué)生理解抽象理論.
參考文獻(xiàn)
1 漆安慎,杜嬋英.力學(xué).北京:高等教育出版社,1997
2 肖詡.Visual Basic 6.0及其應(yīng)用.上海:復(fù)旦大學(xué)出版社,2002