周旭環(huán),龔云輝,吳紹華,2,王元康,黃婭芳,葉洪偉,王光偉,王一成
(1.云南北方光學科技有限公司,云南 昆明 650217;2.昆明物理研究所,云南 昆明 650223;3.陸裝重慶軍代局駐昆地區(qū)第二軍事代表室,云南 昆明 650032)
幾何光學以光的粒子性為基礎來研究光的傳播和成像問題,避免了因波面研究帶來的計算和處理上的困難,其在光學儀器理論研究中有很大的實際意義。幾何光學通過簡化,把光能的傳播和光學成像歸結為光線的傳播,并且遵循直線傳播定律、獨立傳播定律、反射定律、折射定律[1]。不論是平面鏡、透鏡還是棱鏡,在其設計、制造、檢驗過程中都需要考慮光的反射與折射。因此,光的反射和折射是光學應用中最基本的方法和出發(fā)點。
隨著數(shù)學工具的發(fā)展,光的反射和折射的表述方法除了傳統(tǒng)表述方法外,還發(fā)展出了矢量表述、矩陣表述、四元數(shù)表述方法。在4種表述方法中,傳統(tǒng)表述方法簡潔明了,但不易反映光線在三維空間的傳播規(guī)律;矢量表述方法物理意義清晰,但不便于計算,尤其不適合用計算機進行計算[2];矩陣表述方法解決幾何光學問題簡潔方便,也便于計算機進行運算[3];四元數(shù)表述方法與矩陣表述相比,其幾何意義明確,計算更簡單[4]。人們利用反射定律和折射定律的矢量表述、矩陣表述、四元數(shù)表述方法對棱鏡的誤差分析、可逆性研究、棱鏡裝調等進行了研討[5-8],說明幾種表述方法均是處理光學應用問題的有效工具。
本文首先對光的反射與折射的4種表述方法進行了介紹與推導;然后通過對施密特棱鏡檢驗光路的計算,驗證了反射定律的矩陣表述與四元數(shù)表述方法;最后給出了Matlab編制的計算程序,為棱鏡誤差分析、棱鏡膠合、棱鏡調整等應用提供了理論參考。
如圖1所示,入射光線、反射光線和法線在同一平面內,且入射光線和反射光線位于法線的兩側,與法線的夾角大小相等。
圖1 光的反射圖Fig.1 Reflection diagram of light
為使各參量具有確切的含義,本文采用如下符號規(guī)則。光線與法線的夾角:當法線沿逆時針方向旋轉一個銳角能與光線重合時,該角度取正值;反之為負值。圖1中,入射光線與法線的夾角為正值;反射光線與法線的夾角為負值。
如圖2所示,入射光線、折射光線和法線在同一平面內;折射光線和入射光線位于法線的兩側;入射角的正弦跟折射角的正弦的比值與入射角的大小無關,等于后一介質與前一介質的折射率之比,即:
圖2 光的折射圖Fig.2 Refraction diagram of light
光的反射定律和折射定律可以由費馬原理和惠更斯原理2種方法證明[9]。
圖3 反射定律的矢量表述圖Fig.3 Vector expression diagram of law of reflection
由(2)式和(3)式可得:
以上即為光反射定律的矢量表述。
如圖4所示,光線入射角為I,折射角為i,入射光所在空間的折射率為n,折射光所在空間的折射率為 n′,由(1)式可得:
圖4 折射定律的矢量表述圖Fig.4 Vector expression diagram of law of refraction
如果用矢量分別表示入射光線、法線、反射光線的單位矢量,則(5)式可以寫為
由(3)式可得:
將(10)式、(11)式代入(9)式得:
式中:
則:
以上即為光折射定律的矢量表述。
2.3.1 光的反射矩陣
建立空間坐標系,并令
將上式帶入(4)式可得:
寫成矩陣形式則有:
令
則(14)式可寫為
以上即為反射定律的矩陣表述。
2.3.2 光的折射矩陣
由于光的折射并不是線性變換,因而嚴格的折射定律并不能用(14)式的形式來描述。但是引入入射角I和折射角i后,在球面折射系統(tǒng)中可以用矩陣形式來描述折射。如圖5所示,光線AP透射到球面上的P點。光線AP的狀態(tài)參量為( y,nsinα),折射后的光線狀態(tài)參量為 (y′,n′sinβ)。光線與光軸夾角的符號規(guī)則為:當光軸沿逆時針方向旋轉一個銳角能與光線重合時,該角度取正值;反之為負值,則圖5中的α 、I、i 為 正值; β 、φ為負值。圖5中的y和R取正值。
圖5 球面的折射圖Fig.5 Refraction diagram of spherical surface
由圖有:
則:
又由折射定律有:
由(17)式~(20)式可得:
寫成矩陣形式則為
在近軸近似下,光線與光學系統(tǒng)中心軸的夾角α很小,可以有近似關系 sinα=tanα≈α ,cosα≈1。此種情況下,光學系統(tǒng)變換退化為線性變換。則(21)式可簡化為
近軸矩陣方法可以很好地描述高斯光學中的相關問題,也便于計算機計算,是處理幾何光學中光學系統(tǒng)成像的有效工具。
2.4.1 四元數(shù)
四元數(shù)于1843年由哈密頓(Hamilton)建立,但其直到剛體動力學理論發(fā)展后才得到人們重視,并成為一個廣泛的科學項目[10-13]。現(xiàn)在,其在計算機圖形學、剛體姿態(tài)控制、偏振光學、光電偵查等領域已得到廣泛應用[14-16]。
四元數(shù)由1個實數(shù)單位和3個虛數(shù)單位i、j、k 組成,可以寫成如下形式:
式中:λ0、λ1、λ2、λ3均 為實數(shù),i、j、k 服從以下運算規(guī)律:
四元數(shù) λ 的共軛 λ*為
四元數(shù)的模為
四元數(shù)的逆為
任取2個四元數(shù):
P=p0+p1i+p2j+p3k
Q=q0+q1i+q2j+q3k
四元數(shù)的加法為
令P=p0+p,Q =q0+q, 四元數(shù)的乘法(為區(qū)別于矢量的點乘和叉乘,這里我們稱四元數(shù)的乘法為直乘)可表示為
四元數(shù)乘法滿足結合律和分配律,但一般不滿足交換律。
當 p0=0,q0=0時 ,P=p,Q =q,稱此種四元數(shù)P與 Q為純四元數(shù)。因為純四元數(shù)僅由虛部的3D矢量決定,可以將任意的3D矢量表示為純四元數(shù)。當2個純四元數(shù)直乘時,(29)式變?yōu)?/p>
考慮三維矢量的旋轉,如圖6所示,矢量為
圖6 三維矢量旋轉圖Fig.6 Rotation diagram of 3D vector
p=p1i+p2j+p3k
q=q1i+q2j+q3k
且 |p|=pλ,|q|=qλ,pλ=qλ,p與 q之間的夾角為θ,單位矢量 ζ 垂直于 p與 q所在的平面。則由(30)式可得:
由(31)式兩邊直乘 p 得:
由此可以看出,形如 E=cosθ+ζsinθ的四元數(shù)表示將垂直于轉軸 ζ 的矢量 p按右手螺旋方向轉過θ角,從而得到矢量q。
對于更一般的情況,非實數(shù)四元數(shù) P=p0+p ,其繞轉軸ζ 旋轉θ角得到 Q[10],則:
2.4.2 光的反射四元數(shù)
2.4.3 光的折射四元數(shù)
圖7 折射光旋轉圖Fig.7 Rotation diagram of refracted light
單位矢量 E0為
或由(32)式可得:
對其中光反射的矩陣形式與四元數(shù)形式進行驗證。以施密特棱鏡為例,如圖8所示,入射光線由位置Ⅰ進入施密特棱鏡后依次經過的反射面為2面、3面、1面、2面、1面、3面、2面;入射光線由位置Ⅱ進入施密特棱鏡后依次經過的反射面為3面、2面、3面。設施密特棱鏡內部的入射光為出射光為,只要計算結果滿足則說明表達形式正確。
圖8 施密特棱鏡平行差檢測光路圖Fig.8 Optical path diagram of parallel error detection by Schmidt prism
由圖8所示,入射光線矢量為 A0=[0-10],1、2、3面法線矢量分別為 N1=[0-10],N2=為提高計算速度,使用Matlab代替手動計算。
使用矢量形式計算后,算法流程如圖9所示,由位置Ⅰ入射后得到反射光為 Ap7=[010],由位置Ⅱ入射后得到反射光為 Ap3=[010]。Ap3=Ap7=-A0,說明光反射的矢量形式正確。
圖9 矢量形式算法流程圖Fig.9 Flow chart of vector form algorithm
使用矩陣形式計算后,算法流程如圖10所示。由位置Ⅰ入射后得到反射光為 Ap7=[010],由位置Ⅱ入射后得到反射光為 Ap3=[010]。Ap3=Ap7=-A0,說明光反射的矩陣形式正確。
圖10 矩陣形式算法流程圖Fig.10 Flow chart of matrix form algorithm
使用四元數(shù)形式計算后,算法流程如圖11所示。由位置Ⅰ入射后得到反射光為 Ap7=[0010],由位置Ⅱ入射后得到反射光為 Ap3=[0010]。Ap3=Ap7=-A0,說明光反射的四元數(shù)形式正確。
圖11 四元數(shù)形式算法流程圖Fig.11 Flow chart of quaternion form algorithm
在施密特棱鏡的實際生產過程中,由于存在制造誤差,往往會觀察到3個反射像,如圖12所示。
1面反射的光線對應的十字線為 Ap,從位置Ⅰ入射得到的反射光對應的十字線為 A1,從位置Ⅱ入射得到的反射光對應的十字線為 A2。圖中十字線水平方向的距離與施密特棱鏡的第一平行差對應。由圖12可以看出,A1與 A2在水平方向上對稱分布于 Ap兩側。
圖12 施密特棱鏡平行差 實際檢測結果圖Fig.12 Diagram of actual detection results of parallel error of Schmidt prism
現(xiàn)用光反射的四元數(shù)形式對該現(xiàn)象做一個證明。
首先考慮單個平面的角量誤差。如圖13所示,平面a的法線為,轉動 θ 角度后法線為。
圖13 單個平面微量轉角圖Fig.13 Micro angle of single plane
設單位矢量 ζ 垂直于N和N′組成的平面(垂直于紙面向里),則由(30)式可得:
由于θ 角為小量,則上式變?yōu)?/p>
式中:γ 為位于N和N′組成的平面內且平行于平面a的單位矢量。
由于第一平行差只與光軸截面內角度誤差有關[17],假設2面在光軸截面內的角度誤差為 θ2,3面在光軸截面內的角度誤差為 θ3,取三角形內角角度增大的方向為正,則 γ2、 γ3為
2面、3面的法線矢量為
對棱鏡內部出射前的反射光線進行計算,算法流程如圖14所示。
圖14 棱鏡內部出射前的反射光線算法流程圖Fig.14 Flow chart of reflected light algorithm before prism exit
得到的結果為
略去二階小量得到 A1p3=[0,2θ2+4θ3,1,0],A1p7=[0,-2θ2-4θ3,1,0],即由位置Ⅰ入射后得到的反射光為
由位置Ⅱ入射后得到的反射光為
而1面的反射光為 Ap=[0010],由上可知A1p7、 A1p3在出射前在x軸方向(水平方向)上對稱分布于 Ap兩側。再由(1)式可知,A1p7、 A1p3在經過界面1折射后的出射光 A1與 A2在水平方向上對稱分布于 Ap兩側。計算結果與觀察結果一致。
另外由(40)式可知,施密特棱鏡的第一平行差為
該結果與文獻[17]的結論一致。
光的反射和折射定律的傳統(tǒng)表述方法是平面鏡、透鏡應用最常用的基本方法。而在光學棱鏡的設計、加工和檢驗過程中,使用傳統(tǒng)光的反射與光的折射及其相關表述方法對棱鏡誤差分析、棱鏡膠合、棱鏡調整等應用存在定量計算復雜、計算量大等缺點。通過對光的反射定律和折射定律不同表述方法的推導和擬合,提出了更簡潔的四元數(shù)表述方法,給出了3種表述方法的Matlab計算程序,以施密特棱鏡和四元數(shù)表述方法為例,使用Matlab軟件詳細地計算了施密特棱鏡平行差檢測光路。計算結果與施密特棱鏡的平行差檢測光路的檢測結果完全一致。求出了平行差與各角度誤差的關系,闡述了光學棱鏡在檢測圖像中3個像的相互關系,為解決平行差和角度誤差的關系提供了新的解決思路和方法,對光學棱鏡加工和檢測、誤差控制、平行差精度控制具有指導性的實際應用價值。例如矢量表述方法可應用于角錐棱鏡的誤差分析以及轉鏡的反射光矢量分析;矩陣表述方法可應用于光路的可逆性分析研究;四元數(shù)表述方法可應用于別漢棱鏡的消旋誤差模型建模等。結合生產過程中光學棱鏡加工和檢測的實際應用,驗證了四元數(shù)方法在棱鏡角度誤差分析中的準確性、有效性和實用性。