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