Python光學(xué)仿真理解Jones矩陣學(xué)習(xí)
Jones向量
假設(shè)光波沿z軸傳播,那么其三個(gè)方向的電場(chǎng)分量可以表示為


Jones矩陣
能夠保證二維列向量形狀不變的運(yùn)算有無窮多種,但最符合我們直覺的一定是 2 × 2矩陣。好在這種矩陣已經(jīng)可以提供足夠多的運(yùn)算,從而滿足我們描述偏振變化的需求。

光在通過波片之后,會(huì)在不同方向產(chǎn)生差異性的相位延遲,對(duì)于與x軸角度為 Ψ,相位差為 Φ 的波片,其Jones矩陣為

Jones矩陣的表示
為了對(duì)Jones矩陣所對(duì)應(yīng)的偏振狀態(tài)進(jìn)行繪制,我們需要進(jìn)一步理解Jones矩陣中每個(gè)值所對(duì)應(yīng)的物理概念。如果將Jones矩陣寫成虛數(shù)形式,可以表示為

那么,對(duì)于任意Jones矩陣,我們可以很方便地繪制其對(duì)應(yīng)的偏振圖像。方便起見,我們只對(duì)1.064um光波在z軸方向傳播5um這段距離進(jìn)行采樣,然后畫出
def drawJones(J=[1,-2j]):
J = np.array(J).reshape(2,1)
# 設(shè)1.064um的光在z方向傳播5um后,沿傳播方向看去的振幅分布
z = np.arange(0,5,0.01)
k = 2*np.pi/1.064
# 將J改寫成x和y方向的振幅序列
J = np.abs(J)*np.cos(k*z+np.angle(J))
fig = plt.figure()
ax1 = fig.add_subplot(121)
ax1.plot(J[0],J[1])
ax2 = fig.add_subplot(122,projection='3d')
ax2.plot3D(z,J[0],J[1])
plt.show()
if __name__ == "__main__":
drawJones()
其圖像為

現(xiàn)在光路中引入 λ / 4波片,令其旋轉(zhuǎn)一周,觀察一下線偏振光會(huì)有怎樣的變化,設(shè)波片與x軸所成夾角為 Ψ,則其對(duì)應(yīng)的Jones矩陣為

代碼為
def drawQuaterPlate():
quater = lambda psi : np.array(
[[1-np.cos(2*psi),-1j*np.sin(2*psi)],
[-1j*np.sin(2*psi),1+np.cos(2*psi)]])
z = np.arange(0,5,0.01)
k = 2*np.pi/1.064
# 初始光波為x方向線偏振光
J0 = np.array([1,0]).reshape(2,1)
fig = plt.figure()
ax = fig.add_subplot(111,xlim=(-2,2),ylim=(-2,2))
ax.grid()
line, = ax.plot([],[],lw=0.2)
time_text = ax.text(0.1,0.9,'',transform=ax.transAxes)
thetas = np.linspace(0,np.pi*2,80)
def init():
line.set_data([],[])
time_text.set_text("")
return line, time_text
def animate(theta):
J = quater(theta)@J0 #經(jīng)過波片后的Jones矩陣
arrJ = np.abs(J)*np.cos(k*z+np.angle(J)) #采樣后的振幅
line.set_data(arrJ[0],arrJ[1])
time_text.set_text("angle:"+str(theta))
return line, time_text
ani = animation.FuncAnimation(fig, animate, thetas,
interval=100, init_func=init)
ani.save('polor.gif',writer='imagemagick')
plt.show()
最終得到偏振情況與波片角度的關(guān)系

可見,當(dāng)角度合適的時(shí)候, λ / 4波片會(huì)將線偏振光變?yōu)閳A偏振光。
以上就是Python光學(xué)仿真理解Jones矩陣學(xué)習(xí)的詳細(xì)內(nèi)容,更多關(guān)于Python光學(xué)仿真Jones矩陣的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python中的相關(guān)分析correlation analysis的實(shí)現(xiàn)
這篇文章主要介紹了Python中的相關(guān)分析correlation analysis的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
Django+Vue實(shí)現(xiàn)文件上傳下載的項(xiàng)目實(shí)踐
本文主要介紹了Django+Vue實(shí)現(xiàn)文件上傳下載的項(xiàng)目實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
python中sort sorted reverse reversed函數(shù)的區(qū)別說明
這篇文章主要介紹了python中sort sorted reverse reversed函數(shù)的區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-05-05
python3定位并識(shí)別圖片驗(yàn)證碼實(shí)現(xiàn)自動(dòng)登錄功能
這篇文章主要介紹了python3定位并識(shí)別圖片驗(yàn)證碼實(shí)現(xiàn)自動(dòng)登錄功能,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01
使用Python進(jìn)行二進(jìn)制文件讀寫的簡(jiǎn)單方法(推薦)
下面小編就為大家?guī)硪黄褂肞ython進(jìn)行二進(jìn)制文件讀寫的簡(jiǎn)單方法(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-09-09
Python實(shí)現(xiàn)string字符串連接的方法總結(jié)【8種方式】
這篇文章主要介紹了Python實(shí)現(xiàn)string字符串連接的方法,結(jié)合實(shí)例形式總結(jié)分析了Python實(shí)現(xiàn)字符串連接的8種常見操作技巧,需要的朋友可以參考下2018-07-07
python 獲取url中的參數(shù)列表實(shí)例
今天小編就為大家分享一篇python 獲取url中的參數(shù)列表實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12

