蔣國保,陳 英,林文烽,劉安玲,周 遠,汪之又,劉 莉,鄒瑩暢
(長沙學院電子信息與電氣工程學院,湖南 長沙 410022)
激光器基本結構都是由工作物質、泵浦源、和激光諧振腔三大部分組成的.其中,激光諧振腔由兩個面向工作物質的反射鏡組成,其中一個是全反射鏡,另一個是部分透射鏡(輸出鏡).在激光諧振腔內,沿諧振腔軸線的那一部分光波在諧振腔內來回震蕩,多次通過處于激活狀態的工作物質,“誘發”激活工作物質發光,光被放大,最后輸出激光束[1].在學習激光諧振腔的過程中往往發現激光光學內容比較抽象,如不借助實驗,學生很難理解.激光光學實驗一般需要穩定的環境,高精密的儀器,因此在教室里能做的激光光學實驗極為有限,而且也受到授課時間的限制.為了克服激光學實驗對實驗條件要求比較苛刻的缺點,可采用計算機仿真激光光學實驗,特別是激光光學演示實驗,配合理論課的進行,把光學課程涉及的大多數現象展示在學生面前,以加深對激光光學內容的理解[2].
目前激光原理實驗教學主要都是實物教學,其存在的問題有:激光原理與技術實驗需要的各種激光器和光學配件都是精密儀器,價格昂貴,導致教學成本高昂[3];實驗儀器偏少,只能滿足2~3人操作一臺實驗儀器的需求,實驗器件太少,實驗教學形式單一,這在很大程度上影響了對學生的動手能力、實驗創新能力和綜合設計能力的培養[4].激光原理理論性很強,實驗和理論還存在一定距離,通過實驗結果,學生不一定能夠將理論和實驗現象很好的結合[5].
對激光諧振腔實驗進行計算機仿真教學,具有兩個方面的意義:一方面,利用仿真結果指導實際實驗,前期投資少,且可以減少貴重儀器的損傷風險等;另一方面,在教學上,將抽象難懂的概念、規律通過實驗仿真生動、形象地表現出來,使學生更易于接受,教學效果更好.目前,MATLAB軟件在工程光學、激光原理的實驗教學中應用廣泛[6],本文主要是對幾種常見的激光諧振腔進行仿真,使學生更好地理解激光橫模以及諧振腔參數對橫模的影響.
激光諧振腔的MATLAB仿真實現的流程如下:
1)設置好諧振腔的類型、參數;
2)由設置好的參數得到腔的尺寸;
3)劃分合理的單元格數;
4)分配每個單元格的行列以及長度;
5)通過光學復振幅相關公式得到每個單元的強度值;
6)得到x,y,z的值后進行圖像三維構建;
7)圖像的顯示及其優化.
文章采用有限元矩陣特殊值算法來模擬激光諧振腔的光場分布[6],以平面平行平面腔為例,其關鍵代碼如下:
fortl=1:M*N% 傳輸矩陣 A 的行m=ceil(tl/M);% 場點各個單元的行
ifmod(tl,M)==0n=M; % 場點有限單元的列
elsen=mod(tl,M);
end
forgf=1:M*N% 傳輸矩陣 A 的列c=ceil(gf/M); % 源點有限單元的行
ifmod(gf,M)==0d=M; % 源點有限單元的列
elsed=mod(gf,M);
end
ifc==N% 消除重合邊界的多余計算
continue;
else
R=sqrt(L^2+(X(c,d)-X(m,n)).^2+(Y(c,d)-Y(m,n)).^2);
A(tl,gf)=-j/lambda.*exp(j*k*R)./R.*(1+L./R)/2.*rho(c,d).*drho.*deta;% 將z軸設置為場點各個單元格的強度,并通過光強公式計算得到強度值賦值給A.
end
[Vct1,Da1]=eigs(A*A,6)% 運用eigs()函數計算矩陣的特征值并賦值給V和D
forhk=1:6% 顯示6張圖分別為本征TEM00TEM01TEM02TEM03TEM04TEM05模
Vt=(reshape(Vct1(:,hk),M,N)).';%
E2=conj(Vt).*Vt;% 運用conj().函數求Vt的共軛數

圖1 腔鏡半徑a=1,菲涅爾數fnum=1平行平面腔光場分布

圖2 腔鏡半徑a=1,菲涅爾數fnum=1的雙凹腔光場分布
在圖1中,腔鏡半徑a=1菲涅耳數fnum=1的平行平面腔光場分布圖像顯示成功,分別顯示了本征從低階到高階順序排列的6張光場圖,每張圖上方附有各自的本征值,光場的分布與教材上的圖像一致.此外,對比相同參數、不同腔型圖1和圖2后,可以發現,當諧振腔參數完全一致時,平行平面腔和雙凹腔的本征TEM00模輸出光場相似本征值差距不大,但隨著階數的增加,本征值的差距越來越大,輸出光場分布的差異也越來越大.
在設計激光諧振腔和觀察激光輸出光場時,如果每次都去重新編寫代碼,重新編輯腳本文件再運行,效率不高而且很容易出錯.因此設計一個GUI界面,可自由改變諧振腔參數并觀察其輸出光場分布是非常有必要的事情.文章通過以MATLAB R2016a為實驗平臺,設計了一款激光諧振腔的GUI界面,包含了以下內容:
1)實現平平腔,雙凹腔兩種經典腔型的光場分布模擬[8];
2)可改變腔鏡半徑光波波長;
3)能模擬任意參數菲涅爾數的光場分布;
4)能顯示帶有菲涅爾數及其本征值的光場;
5)退出后清除所有參數并還原為默認值.

圖3 激光諧振腔光場分布的GUI界面
從圖3可以看出,設計的GUI界面實現了腔型可選,腔鏡半徑可變,菲尼爾數可變,光束波長可變等預設的功能,能幫助學生更好地理解激光橫模以及諧振腔參數對橫模的影響.
實際教學中,要觀察激光輸出光場分布需要先設計和調整激光器參數.首先,不同腔形使用腔鏡不同,所以一次實驗只能實現一種腔形的實驗結果.其次,同一激光器參數可調范圍有限,并不能通過一個激光器實現多種條件下的光場分布輸出.并且實驗結果也只能借助儀器設備觀察,實驗中每增加一臺儀器設備,學生的實驗時間成本就會增加,從而影響學習效率.
在往年激光原理實驗中,學生普遍反映“激光器實際操作過程中太難調”,“CCD光斑找不到”,“我做出來的實驗結果怎么跟老師的結果差別這么大”,“每次更換鏡子就得重新調整一次光路,浪費時間”.但是在采用MATLAB仿真實驗后,上述實際操作問題就得到了完美解決.
綜上,采用MATLAB仿真激光諧振腔仿真激光輸出光場有以下優勢:
1)操作簡單,GUI界面設計簡單,具體功能只需部分核心代碼即可實現,核心代碼部分需要學生理解原理,加強了學生的理論;
2)功能全面,同一界面即可模擬多種激光諧振腔的光場輸出,并且所有參數可調,學生實驗的自主性更強;
3)結果直觀,輸出光場分布均以圖片形式直觀的展現出來,可以直觀的比較不同參數下,光場分布的區別.
文章利用MATLAB仿真軟件對經典的平行平面腔,雙凹腔的光場分布圖進行數值仿真,并用于激光的實驗教學中,取得了較好的實驗教學效果,加深了對激光原理基礎課程的深入理解.數值計算中,基于惠更斯-菲涅爾衍射積分,采用矩陣特征值方法求解光場分布,提高了程序的運行速度和運行效率.主要數值研究了菲涅爾數、腔鏡半徑以及光束波長對諧振腔輸出模式的影響.此外,本文還設計了一款GUI界面,同學們可以很直觀地查看不同菲涅爾數、腔鏡半徑情況下的不同諧振腔的光場分布,從而幫助同學們更好地理解激光橫模.考慮激光器實驗設備昂貴,操作復雜,并且極易損壞,同時激光實驗具有一定危險性,采用MATLAB仿真代替激光器的實驗,能夠減少實驗經費,保障了學生安全性.綜合來看,采用MATLAB仿真具有天然優勢,可以更多的引入激光實驗.