一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python光學仿真理解Jones矩陣學習

Python光學仿真理解Jones矩陣學習

2022-02-13 11:48微小冷 Python

這篇文章主要為大家介紹了Python光學仿真理解Jones矩陣的學習,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪

 

Jones向量

假設光波沿z軸傳播,那么其三個方向的電場分量可以表示為

Python光學仿真理解Jones矩陣學習

Python光學仿真理解Jones矩陣學習

 

Jones矩陣

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

Python光學仿真理解Jones矩陣學習

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

Python光學仿真理解Jones矩陣學習

 

Jones矩陣的表示

為了對Jones矩陣所對應的偏振狀態進行繪制,我們需要進一步理解Jones矩陣中每個值所對應的物理概念。如果將Jones矩陣寫成虛數形式,可以表示為

Python光學仿真理解Jones矩陣學習

那么,對于任意Jones矩陣,我們可以很方便地繪制其對應的偏振圖像。方便起見,我們只對1.064um光波在z軸方向傳播5um這段距離進行采樣,然后畫出

def drawJones(J=[1,-2j]):
    J = np.array(J).reshape(2,1)
    # 設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()

其圖像為

Python光學仿真理解Jones矩陣學習

現在光路中引入 λ / 4波片,令其旋轉一周,觀察一下線偏振光會有怎樣的變化,設波片與x軸所成夾角為 Ψ,則其對應的Jones矩陣為

Python光學仿真理解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    #經過波片后的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()

最終得到偏振情況與波片角度的關系

Python光學仿真理解Jones矩陣學習

可見,當角度合適的時候, λ / 4波片會將線偏振光變為圓偏振光。

以上就是Python光學仿真理解Jones矩陣學習的詳細內容,更多關于Python光學仿真Jones矩陣的資料請關注服務器之家其它相關文章!

原文鏈接:https://blog.csdn.net/m0_37816922/article/details/109607941

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 小寡妇水真多好紧 | 日本大学生xxxxx69泡妞 | 91精品大神国产在线播放 | 日韩成人精品在线 | 久久九九久精品国产尤物 | 免费观看国产视频 | 秋霞色 | 91精品啪在线观看国产线免费 | 国产精品视频在这里有精品 | 欧美国产精品久久 | 久久国产乱子伦免费精品 | 久久毛片免费看一区二区三区 | 色婷婷综合久久久 | 国产第一页无线好源 | 欧美日韩一区二区综合在线视频 | 青青草影院在线观看 | 亚洲国产精品第一页 | www.俺去啦 | 成人au免费视频影院 | 五月最新商场女厕所高跟嘘嘘 | 催眠 迷j系列小说 | 热门小说同人h改编h | 婷婷色伊人 | 精品久久久久久久久久久 | 日本一道本视频 | 亚洲日日操 | 国产一区国产二区国产三区 | 日本在线播放 | 成人精品mv视频在线观看 | 午夜福利体验免费体验区 | 女人麻豆国产香蕉久久精品 | 精品卡1卡2卡三卡免费视频 | 2021麻豆剧果冻传媒入口永久 | 美女无遮挡 | 欧美精品三区 | 色综合亚洲精品激情狠狠 | 久久re热在线视频精6 | 国产二区视频在线观看 | 欧美男男gaygayxxx | 色婷婷婷婷 | 日本韩国一区二区三区 |