欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python光學(xué)仿真之對光的干涉理解學(xué)習(xí)

 更新時間:2021年10月20日 10:53:51   作者:微小冷  
這篇文章主要為大家介紹了Python光學(xué)仿真之對光的干涉理解學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪

光的干涉

干涉即兩束光在疊加過程中出現(xiàn)的強度周期性變化情況,其最簡單的案例即為楊氏雙縫干涉。

在這里插入圖片描述

如圖所示,光從 S S S點發(fā)出,通過兩個狹縫 S 1 , S 2 S_1,S_2 S1​,S2​,最終匯聚在右側(cè)的干涉屏上,在不同位置處將會產(chǎn)生不同的相位差。

在這里插入圖片描述

import numpy as np
import matplotlib.pyplot as plt
#兩束光疊加
waveAdd = lambda I1,I2,theta : I1+I2+2*np.sqrt(I1*I2)*np.cos(theta)
#同一束光經(jīng)過小孔之后的光程差,dSlit為小孔間距,dWave為波長
#point為衍射屏上某點,theta為衍射屏相對小孔所在直線傾角
def interSlit(dSlit,point=(1,1,1),n=1,dWave=1.06e-6):
    pVar = sum(np.array(point)**2) + 0.25*dSlit**2
    delt = 2*np.pi*n/dWave*(
        np.sqrt(pVar+point[0]*dSlit)-
        np.sqrt(pVar-point[0]*dSlit))
    return delt
#楊氏干涉,只考慮x方向
#dSlit:小孔間距;dScreen:衍射屏距離
#nGrid:網(wǎng)格個數(shù);dGrid:網(wǎng)格間距
def interYang(dSlit=1e-3,dScreen=1,n=1,I1=1,I2=1,
              dWave=1.06e-6,nGrid=500,dGrid=1e-5):
    xAxis = np.arange(-nGrid,nGrid+1)*dGrid
    I = [waveAdd(I1,I2,interSlit(
            dSlit,(x,0,dScreen),n,dWave)) 
            for x in xAxis]
    plt.plot(xAxis,I)
    plt.show()

得到的衍射強度圖為

在這里插入圖片描述

雙縫干涉是一個非常實用的模型,可以應(yīng)用到許多光學(xué)裝置中,例如Fresnel雙面鏡,F(xiàn)resnel雙棱鏡,Lloyds鏡,Billet剖開透鏡等等。其中Frenel雙面鏡如圖所示

在這里插入圖片描述

光源入射到雙面鏡之后在鏡后產(chǎn)生了兩個像點 P , Q 二者相當于一對小孔,于是可以在右側(cè)的干涉屏上產(chǎn)生干涉。

其仿真過程與楊氏干涉只差一個小孔的轉(zhuǎn)換,圖像亦如出一轍。

#alpha為雙鏡銳角,dSA為光源到劈點距離,dScreen為S像點連線到干涉屏距離
def lensFresnel(alpha=0.1,dSA=1e-3,dScreen=1,
                n=1,I1=1,I2=1,dWave=1.06e-6,
                nGrid=500,dGrid=1e-4):
    dSlit = 2*dSA*np.sin(alpha)
    interYang(dSlit,dScreen,n,I1,I2,dWave,nGrid,dGrid)

以上就是Python光學(xué)仿真之對光的干涉理解學(xué)習(xí)的詳細內(nèi)容,更多關(guān)于Python理解光的干涉的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何讓python程序正確高效地并發(fā)

    如何讓python程序正確高效地并發(fā)

    這篇文章主要介紹了如何讓python程序正確高效地并發(fā),文章圍繞主題的相關(guān)資料展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-06-06
  • Python讀取xlsx文件的實現(xiàn)方法

    Python讀取xlsx文件的實現(xiàn)方法

    這篇文章主要介紹了Python讀取xlsx文件的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • pycharm安裝中文插件的2種方法圖文詳解

    pycharm安裝中文插件的2種方法圖文詳解

    PyCharm可以說是當今最流行的一款Python?IDE了,下面這篇文章主要給大家介紹了關(guān)于pycharm安裝中文插件的2種方法,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • python繪制立方體的方法

    python繪制立方體的方法

    這篇文章主要為大家詳細介紹了python繪制立方體的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • Python Series從0開始索引的方法

    Python Series從0開始索引的方法

    今天小編就為大家分享一篇Python Series從0開始索引的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • pycharm配置python 設(shè)置pip安裝源為豆瓣源

    pycharm配置python 設(shè)置pip安裝源為豆瓣源

    這篇文章主要介紹了pycharm配置python 設(shè)置pip安裝源為豆瓣源,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • Python中變量的輸入輸出實例代碼詳解

    Python中變量的輸入輸出實例代碼詳解

    這篇文章主要介紹了Python中變量的輸入輸出問題,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-07-07
  • Python實現(xiàn)遍歷子文件夾并將文件復(fù)制到不同的目標文件夾

    Python實現(xiàn)遍歷子文件夾并將文件復(fù)制到不同的目標文件夾

    這篇文章主要介紹了如何基于Python語言實現(xiàn)遍歷多個子文件夾,將每一個子文件夾中大量的文件,按照每一個文件的文件名稱的特點復(fù)制到不同的目標文件夾中,感興趣的可以了解下
    2023-08-08
  • colab中修改python版本的全過程

    colab中修改python版本的全過程

    日 對于沒有服務(wù)器的研究生來說,Colab無疑是性價比最高的GPU選擇,下面這篇文章主要給大家介紹了關(guān)于如何利用colab修改python版本的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • python去掉空格的一些常用方式

    python去掉空格的一些常用方式

    處理字符串時經(jīng)常要定制化去掉無用的空格,python 中要么用存在的常規(guī)方法,或者用正則處理,下面這篇文章主要給大家介紹了python去掉空格的一些常用方式,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-01-01

最新評論