熊青玲,潘林峰,程衍富
(中南民族大學(xué) 電子信息工程學(xué)院,武漢 430074)
Mathematica 軟件是美國Wolfram Research 公司開發(fā)的數(shù)學(xué)軟件,主要可以做數(shù)值運(yùn)算、符號(hào)運(yùn)算和圖像處理。Mathematica 以其簡單的語法和強(qiáng)大的功能,成為理工科學(xué)生學(xué)習(xí)數(shù)學(xué)和物理的重要工具[1]。在Mathematica 新版本中出現(xiàn)的Manipulate命令只用少數(shù)的幾行輸入就能創(chuàng)造出范圍極其廣泛的人機(jī)互動(dòng)的應(yīng)用。運(yùn)用Manipulate 命令不需要學(xué)習(xí)任何復(fù)雜的新概念,也不需要了解任何用戶界面的編程思想,只要會(huì)使用Mathematica 的基本命令。計(jì)算Manipulate 之后得到的輸出是一個(gè)人機(jī)互動(dòng)的對象,它包含一個(gè)或多個(gè)控件,使用這些控件能改變一個(gè)或多個(gè)參數(shù)的數(shù)值。這個(gè)輸出很像一個(gè)小型應(yīng)用程序,它不是一個(gè)靜止的結(jié)果,它是一個(gè)能和用戶互相作用的運(yùn)行程序。用戶可以通過點(diǎn)擊和拖拉滑塊來觀看參數(shù)數(shù)值和圖形的實(shí)時(shí)變化,也即拖拉滑塊的同時(shí)數(shù)值在變化。本文將Mathematica 的Manipulate 命令用于示波器實(shí)驗(yàn)的仿真和研究,具體分析了拍現(xiàn)象和李薩如圖[2]。
得到如圖1 所示的交互界面,滑動(dòng)條可以在給定的范圍內(nèi)改變兩個(gè)信號(hào)的頻率、振幅和初相。點(diǎn)擊滑動(dòng)條右邊的“+”號(hào)可以看到滑動(dòng)條實(shí)時(shí)的數(shù)據(jù)。在改變各個(gè)參量的過程中,可以看到當(dāng)兩個(gè)信號(hào)的頻率差值遠(yuǎn)小于頻率之和時(shí)典型的拍現(xiàn)象。
如果是聲振動(dòng),當(dāng)兩個(gè)頻率相近的音叉同時(shí)振動(dòng)時(shí),就可聽到時(shí)強(qiáng)時(shí)弱的“嗡、嗡……”的拍音[3]。在Mathematica 中可以用Play 函數(shù)播放聲音,輸入如下程序:
圖1 拍現(xiàn)象
圖2 拍音
得到如圖2 所示的交互界面,已經(jīng)根據(jù)需要將兩個(gè)頻率給定幾組值,任取一組頻率可以播放拍音。圖2 所示當(dāng)兩個(gè)頻率分別取為1 000π 和1 006π時(shí),得到拍頻為3,在給定的3 s 時(shí)間里能聽到9 次強(qiáng)音。
在示波器的X 軸和Y 軸輸入頻率成簡單整數(shù)比的兩個(gè)正弦電壓,則將看到特殊形狀的軌跡,這就是李薩如圖。在Mathematica 中,兩個(gè)垂直方向的諧振動(dòng)的合成軌跡就是一個(gè)簡單的參數(shù)函數(shù)作圖,同樣利用Manipulate 命令可以極其方便地作出交互界面。為了進(jìn)一步研究李薩如圖,我們另外采用了一個(gè)Point 函數(shù),動(dòng)態(tài)地給出了李薩如圖的形成過程。在Mathematica 中輸入:
只要我們將兩個(gè)頻率調(diào)成不同的整數(shù)比,就可以看到穩(wěn)定的典型的李薩如圖,改變兩個(gè)相位可以看到相位差取不同值時(shí)動(dòng)態(tài)的李薩如圖。
在實(shí)際的示波器實(shí)驗(yàn)中,當(dāng)我們把兩個(gè)信號(hào)發(fā)生器的頻率調(diào)到整數(shù)比時(shí),看到的李薩如圖往往也是連續(xù)變化的。例如:采用數(shù)字信號(hào)發(fā)生器,當(dāng)X、Y 分別輸入ν1=1.000 00 kHz、ν2=3.000 00 kHz的信號(hào)時(shí),看到的李薩如圖是不穩(wěn)定的。在變化的過程中,以變化到如圖3 所示的形狀時(shí)為起點(diǎn),看到中間上面的峰是右移的。
為了找到這種圖形移動(dòng)的原因,在Mathematica 中將ω2的值從3 增大一個(gè)小量,ω2的值取為3.04,動(dòng)畫顯示出來的軌跡圖不再重合。當(dāng)完成一次完整的圖形后,接下來第二次動(dòng)畫完成的圖形其中間的峰明顯地往右偏移,如圖3 所示。當(dāng)ω2增加的值越大時(shí),這種偏移越明顯。反之將ω2從3減小,則情況正好相反,如圖4 所示。
這就提示我們,當(dāng)信號(hào)發(fā)生器顯示的頻率為1.000 00 kHz 和3.000 00 kHz 時(shí),實(shí)際的頻率比不是1 比3,而是與圖3 的情況一致。要想讓實(shí)際信號(hào)真正的是1 比3,要么減小頻率ν2,要么增加頻率ν1。
圖3 頻率比為1∶3.04 時(shí)的圖形
圖4 頻率比為1∶2.96 時(shí)的圖形
在示波器上實(shí)際操作,首先固定X 輸入信號(hào)不變,微調(diào)Y 輸入信號(hào),當(dāng)ν2=2.99 997 kHz 時(shí)圖像達(dá)到最穩(wěn)定的狀態(tài),幾乎是不動(dòng)的。在此基礎(chǔ)上把頻率朝著減小的方向微調(diào)時(shí),發(fā)現(xiàn)圖像又動(dòng)起來了,看到中間上面的峰朝左邊移動(dòng),調(diào)得越多,移動(dòng)速度越快;而把此頻率朝著增加的方向微調(diào)時(shí),看到的移動(dòng)方向正好相反。接下來將Y 輸入信號(hào)固定在ν2=3.000 00 kHz,微調(diào)X 輸入到ν1=1.000 01 kHz 正好是最穩(wěn)定的狀態(tài);然后分別朝增加和減小的方向調(diào)節(jié)頻率,也同樣可以看到圖像分別朝不同的方向移動(dòng)以及移動(dòng)速度的變化。前后兩組數(shù)據(jù)之比可以寫成等式:
1.000 00/2.999 97 =1.000 01/3.000 00
這說明兩個(gè)信號(hào)發(fā)生器產(chǎn)生的頻率與實(shí)際顯示的數(shù)值存在微小差異。
文獻(xiàn)[4]利用MATLAB 軟件進(jìn)行作圖,解釋了圖形的移動(dòng)變化是由頻率與理想頻率存在差異引起的。現(xiàn)在利用Mathematica 的動(dòng)態(tài)作圖,更加形象直觀地顯示:當(dāng)兩個(gè)分振動(dòng)的頻率比接近簡單的整數(shù)比時(shí),合振動(dòng)的軌跡將按照相位差連續(xù)變化所得的圖形順序連續(xù)地過渡重復(fù)變化。在實(shí)際的實(shí)驗(yàn)操作中,無論是模擬信號(hào)發(fā)生器還是數(shù)字信號(hào)發(fā)生器,在調(diào)節(jié)李薩如圖的過程中,可以根據(jù)圖形的移動(dòng)情況對頻率進(jìn)行微調(diào)。在對應(yīng)圖像左移和右移的轉(zhuǎn)折點(diǎn)處所對應(yīng)的頻率,就是圖形最穩(wěn)定的頻率。只要仔細(xì)地調(diào)節(jié),可以將李薩如圖調(diào)到最穩(wěn)定的狀態(tài)。
利用Mathematica 的Manipulate 命令作圖,只要掌握Mathematica 的幾個(gè)簡單的函數(shù)就可以了,其語法格式與數(shù)學(xué)書寫習(xí)慣幾乎一樣,對于初學(xué)者也是淺顯易懂的。在Mathematica 的界面中,我們能同時(shí)看到源代碼和運(yùn)算輸出的交互界面,可以隨時(shí)修改源代碼,隨時(shí)輸出動(dòng)態(tài)交互結(jié)果,這給研究問題帶來極大的方便。
[1]董鍵.Mathematica 與大學(xué)物理計(jì)算[M]. 北京:清華大學(xué)出版社,2010.
[2]程衍富. 大學(xué)物理實(shí)驗(yàn)[M]. 北京:北京郵電大學(xué)出版社,2010.
[3]趙近芳. 大學(xué)物理學(xué)[M]. 北京:北京郵電大學(xué)出版社,2008.
[4]張世功,劉大衛(wèi),邰貴江. 振動(dòng)疊加的理論、實(shí)驗(yàn)及其數(shù)值計(jì)算[J]. 實(shí)驗(yàn)科學(xué)與技術(shù),2011,9(4):61-62.