鄭 穎 李月梅 徐曉梅
( 云南師范大學(xué)物理與電子信息學(xué)院 云南 昆明 650500)
?
基于MATLAB的凸透鏡成像規(guī)律的仿真*
鄭 穎李月梅徐曉梅
( 云南師范大學(xué)物理與電子信息學(xué)院云南 昆明650500)
摘 要:基于MATLAB GUI平臺對凸透鏡成像的規(guī)律及動態(tài)變化進(jìn)行計算機仿真,得到不同物距下凸透鏡的成像圖像,動態(tài)地呈現(xiàn)出像距與物距和焦距之間的變化關(guān)系.仿真為中學(xué)凸透鏡成像規(guī)律教學(xué)提供了直觀的教學(xué)輔助手段.
關(guān)鍵詞:凸透鏡成像MATLAB計算機仿真
凸透鏡成像規(guī)律是中學(xué)生需要掌握的重點內(nèi)容之一.在初高中物理教學(xué)中探究凸透鏡的成像規(guī)律,主要是在測得凸透鏡焦距的條件下,運用蠟燭作為光源,通過實驗測定與焦距相關(guān)的物像位置關(guān)系,實驗現(xiàn)象客觀、真實.但是在教學(xué)實施時,某些學(xué)校由于實驗設(shè)備、儀器、場地等不足,加之課時的限制及實驗所需的嚴(yán)格要求,凸透鏡成像規(guī)律實驗教學(xué)的有效和高效實施或受到影響.故此,許多教師就會偏向于選擇直接講授的形式來使學(xué)生理解這個內(nèi)容.物理學(xué)是一門以實驗為基礎(chǔ)的學(xué)科,如果僅用講授的方式教學(xué),并不能很好地讓學(xué)生理解物理現(xiàn)象及規(guī)律.課堂教學(xué)中,在實驗演示基礎(chǔ)上,如果能利用MATLAB進(jìn)行定量分析,實現(xiàn)計算機對凸透鏡成像規(guī)律的仿真,輔助課堂實驗教學(xué)的有效開展。這樣不僅可以最大限度地緩解儀器、場地、時間不足的困擾,還可以巧妙地把現(xiàn)代教育技術(shù)理念和課堂教學(xué)結(jié)合起來,有效、高效地幫助學(xué)生加深對這一物理現(xiàn)象及規(guī)律的理解.
文獻(xiàn)調(diào)研反映出,在探究“凸透鏡成像的規(guī)律”時,為了保證在實驗現(xiàn)象明顯、可觀的條件下,許多人嘗試了改善教材中的實驗裝置來達(dá)到效果,或采用多媒體動畫來呈現(xiàn)實驗結(jié)果,但利用MATLAB來仿真凸透鏡成像規(guī)律的不多,有的也是側(cè)重于利用MATLAB來呈現(xiàn)凸透鏡成像的實驗結(jié)果[1].本文主要是從理論上根據(jù)凸透鏡的焦距公式,利用MATLAB GUI平臺仿真出凸透鏡成像的規(guī)律;仿真過程中只需改變相應(yīng)的參數(shù)即可動態(tài)地呈現(xiàn)出像距與物距和焦距之間的變化關(guān)系.
1凸透鏡成像規(guī)律
高中物理教材中在測得凸透鏡焦距大小的條件下,可以用實驗確定在光屏上像的位置;在凸透鏡的焦距已知時,也可以確定入射光線束的成像位置,利用透鏡成像作圖法[2],如圖1所示.根據(jù)某一點B所發(fā)出的3條特殊光線中的任意兩條在透鏡后面的相交點就是入射光線束的像點.
還可以利用透鏡成像公式
(1)
如果已知透鏡的焦距f和物距u,便能確定像的位置,得到像距v[2].
圖1 作圖法探究凸透鏡的成像規(guī)律
這里以折射率為n的雙凸透鏡(可看作是兩個平凸透鏡的組合)為例,在滿足近軸光線條件下,凸透鏡的厚度是可以忽略不計的,按符號規(guī)定雙凸透鏡的兩個曲率半徑分別為r1>0,r2<0,因此,該透鏡焦距的公式為[3]
(2)
另外,在“探究凸透鏡成像的規(guī)律”的實驗結(jié)果中證明,凸透鏡的成像規(guī)律與物距和像距之間的關(guān)系有關(guān),不同物像關(guān)系下的成像規(guī)律有所不同,具體成像規(guī)律如表1所示.
表1 不同物距下的凸透鏡成像規(guī)律
根據(jù)公式(1)和(2),本文利用MATLAB強大的數(shù)據(jù)處理和圖像處理GUI平臺,通過運行程序改變物距u的參數(shù)值來實現(xiàn)對表1所示的凸透鏡成像規(guī)律的計算機仿真實驗.
2凸透鏡成像規(guī)律的仿真
2.1MATLAB GUI平臺的建立
MATLAB作為新興的編程語言和可視化工具,除了能進(jìn)行科學(xué)計算,還具有強大的圖形圖像處理功能.其中GUI(Graphical User Interfaces)是由窗口、光標(biāo)、按鍵、菜單、文字說明等對象構(gòu)成的一個用戶界面.它可以很好地提供應(yīng)用程序或某種技術(shù)、方法的演示[4].
在MATLAB主窗口中,選擇File菜單下的New菜單項,再選擇其中的GUI命令,在出現(xiàn)的圖形用戶界面的設(shè)計模板中選中BlankGUI(空白模板),然后用鼠標(biāo)選擇左側(cè)欄面板中相應(yīng)的交互控件(坐標(biāo)抽、按鈕、文本框等),添加到設(shè)計區(qū)域,通過調(diào)整工具調(diào)整控件的大小和位置,如圖2所示.
圖2 控件調(diào)整最終界面
雙擊控件設(shè)置各個控件屬性,在函數(shù)加載完成以后,運行程序得到如圖3所示的初始化界面.
圖3 初始運行界面
在滿足近軸光線的條件下,利用折射率為n的薄凸透鏡的焦距公式,即公式(2),結(jié)合物理知識,構(gòu)造實際數(shù)學(xué)模型,編寫程序進(jìn)行具體的數(shù)值計算.以下給出模擬凸透鏡成像規(guī)律所用到的主要程序:
set(handles.title_text,′string′,[strcat(′凸透鏡成像matlab仿真′)]);%初始交互界面
yb=sqrt(a*(2*r-a));
%根據(jù)球面方程繪制雙凸透鏡
程序中r已設(shè)定成具體數(shù)值,其絕對值大小與透鏡的曲率半徑相同.確定好光心O后,計算機根據(jù)透鏡的焦距公式(2)進(jìn)行數(shù)值計算,得到焦距的大小,再由光心到焦點的距離為焦距確定焦點F和F′的位置.接下來輸入物距u,程序代碼如下:
u=str2num(get(handles.u_edit,′string′));
%輸入物距u
在物距對應(yīng)坐標(biāo)位置繪制物體AB.之后,由計算機判斷物距與一倍焦距和二倍焦距之間的關(guān)系,運用透鏡成像公式(1)算出像距v的大小,確定像的大小、正倒和虛實.但由于MATLAB接近書寫計算公式的思維方式,允許以數(shù)字形式的語言來編寫程序,為簡單直接地比較凸透鏡在不同物距下的成像規(guī)律,本文在程序中設(shè)定了凸透鏡的兩個曲率半徑的絕對值均為1,折射率為1.5,運行程序時讀者可在物距控件框中輸入任何符合條件的物距u的參數(shù)值來得到凸透鏡成像的規(guī)律圖.用MATLAB GUI仿真出來的凸透鏡成像規(guī)律如下:
(1)當(dāng)u>2f時,為使規(guī)律圖完整清晰地呈現(xiàn)在圖形界面中,在物距控件框中分別輸入u=2.2和u=3.5,運行程序
set(handles.result_text,′string′,[′物距大于2倍焦距,成倒立縮小的實像′]);
在圖形界面框中顯示如圖4所示的運行結(jié)果,圖中AB表示實物,A′B′表示凸透鏡成的像.此時成倒立縮小的實像;對比圖4(a)中u=2.2和圖4(b)中u=3.5兩種情況下的規(guī)律圖可見,物體離透鏡越遠(yuǎn),所成的像越??;
(a)u=2.2時凸透鏡成像規(guī)律
(b)u=3.5時凸透鏡成像規(guī)律
(2)當(dāng)u=2f時,在物距控件框中輸入u=2,運行程序
set(handles.result_text,′string′,[′物距等于2倍焦距,成倒立等大的實像′]);
在圖形界面框中顯示如圖5所示的運行結(jié)果,此時成倒立等大的實像,像距v=2f;
圖5 u=2時凸透鏡成像規(guī)律
(3)當(dāng)f
set(handles.result_text,′string′,[′物距大于1倍焦距小于2倍焦距,成倒立放大的實像′]);
在圖形界框中顯示如圖6所示的運行結(jié)果,此時成倒立放大的實像;對比圖6(a)中u=1.5和圖6(b)中u=1.8兩種情況下的規(guī)律圖可見物體離焦點F′越近,所成的像越大;
(a)u=1.5時凸透鏡成像規(guī)律
(b)u=1.8時凸透鏡成像規(guī)律
(4)當(dāng)u=f時,在物距控件框中輸入u=1,運行程序
set(handles.result_text,′string′,[′物距等于1倍焦距,不能成像′]);
在圖形界面框中如圖7所示的運行結(jié)果,此時凸透鏡不能成像,光線經(jīng)透鏡折射后成為平行光;
圖7 u=1時凸透鏡成像規(guī)律
(5)當(dāng)u set(handles.result_text,′string′,[′物距小于1倍焦距,成正立放大的虛像′]); (a)u=0.4時凸透鏡成像規(guī)律 (b)u=0.6時凸透鏡成像規(guī)律 在圖形界面框中顯示如圖8所示的運行結(jié)果,此時成正立放大的虛像,在物距小于一倍焦距的情況下,經(jīng)透鏡折射的光線不能相交成實像,但折射光線的反向延長線能相交,在物體的同側(cè)可以看到正立、放大的虛像;對比圖8(a)u=0.4和圖8(b)中u=0.6兩種情況下的規(guī)律圖可見物體越接近焦點F′,所見的虛像越大. 仿真結(jié)果表明在不需要任何光學(xué)儀器的情況下,通過MATLAB改變參數(shù)來得到凸透鏡在不同物距下的成像規(guī)律的仿真,仿真結(jié)果與理論推導(dǎo)及物理實驗所得結(jié)論是吻合的;而且仿真成像迅速、準(zhǔn)確,可以直觀、精確地顯示物理量間的變化規(guī)律. MATLAB輔助教學(xué)可以將一些抽象、難做的實驗規(guī)律通過仿真實驗生動地描繪出來,把復(fù)雜的物理過程可視化,通過學(xué)生視覺體驗的結(jié)合,降低了實驗教學(xué)難度,提高教學(xué)、學(xué)習(xí)效率.需要注意的是,MATLAB作為一種教學(xué)輔助工具,一是需要教師熟練掌握功能和實用技巧;二是教學(xué)設(shè)計和教學(xué)實施中,要處理好與演示實驗、學(xué)生動手實驗、教師講解等有機融合及整合,切記不能為仿真而仿真,將教師自己的教學(xué)“偏離”位置. 參 考 文 獻(xiàn) 1張建強,張亞萍.凸透鏡成像的計算機模擬.曲阜師范大學(xué)學(xué)報,2012,38(1):71~72 2張大昌.普通高中課程標(biāo)準(zhǔn)實驗教科書物理(選修2-3).北京:人民教育出版社,2011.10~18 3章志鳴,沈元華,陳慧芬.光學(xué)(第三版).北京:高等教育出版社,2009.55~57 4陳垚光等.精通MATLAB GUI設(shè)計(第3版).北京:電子工業(yè)出版社,2013.228~241 通訊作者:徐曉梅(1963-),女,副教授,研究生導(dǎo)師,主要從事大學(xué)物理教學(xué)及物理課程與教學(xué)論研究. 作者簡介:鄭穎(1995-),女,在讀碩士研究生,從事物理學(xué)科教學(xué)研究. 收稿日期:*國家級專業(yè)(物理專業(yè))綜合改革試點項目.