• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Python 的光柵衍射仿真模擬

      2023-04-13 02:02:44黃信娥劉夢(mèng)禹狄佳雨錢磊
      電子制作 2023年4期
      關(guān)鍵詞:光柵波長(zhǎng)寬度

      黃信娥,劉夢(mèng)禹,狄佳雨,錢磊

      (天津科技大學(xué),天津,300452)

      0 引言

      光柵衍射不僅是波動(dòng)光學(xué)的重點(diǎn)內(nèi)容,而且是進(jìn)一步學(xué)習(xí)激光醫(yī)學(xué)、全息學(xué)、通信學(xué)等專業(yè)領(lǐng)域知識(shí)的基礎(chǔ)0,在天文學(xué)、激光器、光通訊、信息存儲(chǔ)、新能源等現(xiàn)代光學(xué)乃至現(xiàn)代物理學(xué)和科學(xué)技術(shù)等諸多領(lǐng)域中具有廣泛的應(yīng)用[2][3]。隨著國(guó)家政策對(duì)光學(xué)器件產(chǎn)業(yè)的支持,拓展光學(xué)儀器國(guó)際市場(chǎng)需求日益強(qiáng)烈。因此,掌握光柵衍射的基本原理對(duì)未來(lái)的生產(chǎn)實(shí)踐以及打破光領(lǐng)域科技壁壘意義非凡。

      但光柵衍射的實(shí)驗(yàn)操作不僅需要特定的儀器和場(chǎng)所,實(shí)驗(yàn)現(xiàn)象也會(huì)受到許多非相關(guān)因素的影響。隨著計(jì)算機(jī)的日益普及,計(jì)算機(jī)仿真技術(shù)作為虛擬實(shí)驗(yàn)已成為認(rèn)識(shí)客觀世界規(guī)律的新型手段[4]。

      目前大多數(shù)實(shí)驗(yàn)室選擇的光學(xué)專業(yè)軟件為seelight、zemax 等,其容易受到操作平臺(tái)與軟件版本的限制,安裝時(shí)不得不考慮兼容性問(wèn)題;而且大多數(shù)支持自主開(kāi)發(fā)功能的仿真平臺(tái)受語(yǔ)言限制,如MATLAB App Designer 依賴于MATLAB 語(yǔ)言;一些獨(dú)立開(kāi)發(fā)的光學(xué)仿真軟件存在未實(shí)現(xiàn)可見(jiàn)光漸變算法、未全面考慮衍射參數(shù)影響等缺陷。

      因此針對(duì)以上不足,本文提出利用PythonGUI 編程設(shè)計(jì)仿真模擬程序,該語(yǔ)言的跨平臺(tái)性較高。利用QTDesigner 構(gòu)件程序框架、設(shè)計(jì)圖像用戶界面,輕松實(shí)現(xiàn)了實(shí)驗(yàn)數(shù)據(jù)的交互式顯示。

      1 程序框架構(gòu)建

      1.1 編程基礎(chǔ)與導(dǎo)入庫(kù)

      在構(gòu)建物理實(shí)驗(yàn)程序時(shí),需要利用Python 的基本語(yǔ)法,調(diào)用PyQt5、Numpy、Matplotlib 等Python 提供的科學(xué)計(jì)算庫(kù),以及使用PyQt5 自帶的QtDesigner 編輯器來(lái)輔助開(kāi)發(fā)。

      本文利用QtDesigner 進(jìn)行排版,搭建程序UI 界面,并且自動(dòng)生成代碼,搭建的程序UI 界面如圖1 所示。

      圖1 程序UI 界面

      保存該文件將會(huì)生成后綴為.ui 的文件,但如需生成后綴為.py的代碼頁(yè),只需在上方工具欄的“窗體”中選擇“View Python Code”,保存即可。

      1.2 控件定義與方法

      程序界面如圖2 所示,需要?jiǎng)?chuàng)建以下控件并且綁定固定方法實(shí)現(xiàn)對(duì)應(yīng)交互功能。

      圖2 控件類型

      (1)按鈕QPushButton

      QPushButton 類是用來(lái)創(chuàng)建可按壓的按鈕,在程序中用來(lái)實(shí)現(xiàn)打開(kāi)新窗口、切換模式等功能。

      表1 QPushButton類按鈕及實(shí)現(xiàn)效果

      (2)標(biāo)簽QLabel

      QLabel 類可以顯示讀取文字。

      表2 QLabel類標(biāo)簽及實(shí)現(xiàn)效果

      (3)滾動(dòng)數(shù)值條QSpinBox

      QSpinBox 類用來(lái)顯示當(dāng)前參數(shù)數(shù)值,不僅可以輸入值,還可以連續(xù)變化數(shù)值。

      表3 QSpinBox類滾動(dòng)條及實(shí)現(xiàn)效果

      (4)表盤(pán)QDial

      QDial 類可以創(chuàng)建一個(gè)旋鈕。QDial 和QSpinBox 功能基本一致,語(yǔ)法大體相同,但需要注意,同一個(gè)參數(shù)變化時(shí),滾動(dòng)數(shù)值條和表盤(pán)變化需一致,即改變滾動(dòng)數(shù)值條數(shù)值時(shí),表盤(pán)需變化到相應(yīng)數(shù)值;改變表盤(pán)數(shù)值時(shí),滾動(dòng)數(shù)值條也需變化到相應(yīng)數(shù)值。

      在MainWindow 窗口類中書(shū)寫(xiě)方法以實(shí)現(xiàn)該功能,代碼示例如下:

      # 以spinbox 為例配置參數(shù)

      self.spinbox_x = QSpinBox(self.centralwidget)

      self.spinbox_x.setObjectName(u"spinbox_x")

      self.spinbox_x.setMinimum(1)

      self.spinbox_x.setMaximum(100)

      self.spinbox_x.setSingleStep(1)

      self.spinbox_x.setValue(10)

      self.spinbox_x.setStyleSheet("background-color:#313034; color:white;border:2px solid" "#423f48;")

      當(dāng)表盤(pán)數(shù)值改變時(shí),滾動(dòng)數(shù)值條相應(yīng)改變,并觸發(fā)相關(guān)函數(shù)。

      ①繪圖窗口MPLWIDGET。

      ②MPLWIDGET 窗口是自定義的類,利用該類實(shí)現(xiàn)用matplotlib 將光柵光譜圖和光強(qiáng)分布圖呈現(xiàn)出來(lái)。

      ③新建代碼頁(yè)mplwidget,在各個(gè)UI 代碼頁(yè)前加上from mplwidget import MPL_WIDGET,代碼如下:

      # MPL_WIDGET

      class MplCanvas(FigureCanvas):

      def __init__(self, dpi=100):

      self.fig = Figure(dpi=dpi)

      self.ax = self.fig.add_subplot(211) FigureCanvas.__init__(self, self.fig)

      FigureCanvas.setSizePolicy(

      self, QSizePolicy.Expanding, QSizePolicy.Expanding)

      FigureCanvas.updateGeometry(self)

      class MPL_WIDGET(QWidget):

      def __init__(self, parent=None):

      QWidget.__init__(self, parent)

      self.canvas = MplCanvas()

      self.navi_toolbar=NavigationToolbar(self.canvas, self)

      self.navi_toolbar.setStyleSheet("backgroundcolor:white;")

      self.vbl = QVBoxLayout()

      self.vbl.addWidget(self.canvas)

      self.vbl.addWidget(self.navi_toolbar)

      self.setLayout(self.vbl)

      2 功能實(shí)現(xiàn)

      該仿真模擬程序通過(guò)調(diào)用tkinter 庫(kù)實(shí)現(xiàn)界面交互,點(diǎn)擊主界面的切換按鈕,即可實(shí)現(xiàn)“主界面、Dsi&Ssd 界面和狹縫界面”這三種不同功能界面的切換。用戶在仿真不同的實(shí)驗(yàn)時(shí)會(huì)顯示相應(yīng)的參數(shù)設(shè)置控件,通過(guò)直接在交互界面的組合框內(nèi)輸入或通過(guò)定位旋鈕設(shè)置參數(shù)范圍內(nèi)的數(shù)值,便可實(shí)時(shí)動(dòng)態(tài)地觀測(cè)光譜圖或光強(qiáng)分布圖的變化,從而定性分析各個(gè)物理量對(duì)光柵衍射實(shí)驗(yàn)結(jié)果的影響。

      2.1 可見(jiàn)光顏色漸變仿真

      當(dāng)復(fù)色光照射時(shí),不同波長(zhǎng)所對(duì)應(yīng)顏色的光的同一級(jí)亮線,除零級(jí)為白光外,其它均不重合,即有色散,此即為光柵的分光原理[5]。

      多年來(lái),許多研究者致力于發(fā)展升級(jí)實(shí)現(xiàn)光柵衍射色散的儀器,陳振宇等人[6]基于RPi 設(shè)計(jì)的可見(jiàn)光光譜儀能基本準(zhǔn)確地表現(xiàn)光源的光譜特性,但由于該光譜儀分辨率有限,無(wú)法分辨出低壓鈉燈的雙波長(zhǎng)。隨著計(jì)算機(jī)的發(fā)展,許多研究者開(kāi)始利用仿真實(shí)驗(yàn)?zāi)M分光現(xiàn)象,但大部分作者[7][8]做出的光學(xué)圖像顏色單一,即入射特定波長(zhǎng)的光沒(méi)有顏色漸變過(guò)程,實(shí)驗(yàn)結(jié)果和視覺(jué)效果不佳。

      本文以汞燈的主要光譜線波長(zhǎng)為例,根據(jù)其波長(zhǎng)與顏色的映射關(guān)系計(jì)算光強(qiáng),得到衍射條紋[9]。在主界面開(kāi)發(fā)模擬不同波長(zhǎng)的單色光入射和可見(jiàn)光范圍內(nèi)的連續(xù)復(fù)色光入射的功能,輔助研究色散和判斷影響色分辨率的因素。

      利用 Python 語(yǔ)言可編寫(xiě)出如下的可見(jiàn)光顏色漸變仿真程序:

      # make_cmap

      def cmap(self):

      def getRGB(dWave, maxPix=1, gamma=1):

      waveArea = [380, 440, 490, 510, 580, 645, 780]

      minusWave = [0, 440, 440, 510, 510, 645, 780]

      deltWave = [1, 60, 50, 20, 70, 65, 35]

      for p in range(len(waveArea)):

      if dWave < waveArea[p]: break

      pVar = abs(minusWave[p] - dWave) / deltWave[p]

      rgbs = [[0, 0, 0], [pVar, 0, 1], [0, pVar, 1], [0, 1, pVar],[pVar, 1, 0], [1, pVar, 0], [1, 0, 0], [0, 0, 0]]

      if (dWave >= 380) & (dWave < 420):

      alpha = 0.3 + 0.7 * (dWave - 380) / (420 - 380)

      elif (dWave >= 420) & (dWave < 701):

      alpha = 1.0

      elif (dWave >= 701) & (dWave < 780):

      alpha = 0.3 + 0.7 * (780 - dWave) / (780 - 700)

      else:

      alpha = 0

      return [maxPix * (c * alpha) ** gamma for c in rgbs[p]]

      def drawSpec():

      pic = zeros([1, 361, 3])

      rgb = [getRGB(d) for d in range(400, 761)]

      pic = (pic + rgb)

      plt.imshow(pic, aspect='auto')

      plt.yticks([])

      # plt.tick_params(axis='x',colors='w')

      plt.xticks(range(0, 361, 50), ['400', '450', '500', '550', '600', '650', '700', '750'])

      return pic

      pic = drawSpec()

      cdict = pic[0]

      proj = dict()

      for i in range(400, 761):

      proj[i] = cdict[i - 400]

      return proj

      若把可調(diào)參數(shù)設(shè)置為狹縫總數(shù)N=10,遮光寬度b=15μm,透光寬度a=5μm,透鏡焦距f=40mm,分別仿真“入射波長(zhǎng)為579nm 的單色光、同時(shí)入射波長(zhǎng)為708nm 和579nm 的離散復(fù)色光、入射可見(jiàn)光范圍內(nèi)的連續(xù)復(fù)色光”實(shí)驗(yàn),運(yùn)行程序,即可得出如圖 3(a)~(b)所示的可見(jiàn)光顏色漸變仿真實(shí)驗(yàn)結(jié)果。

      圖 3 (a-b)見(jiàn)光顏色漸變仿真實(shí)驗(yàn)結(jié)果

      2.2 光柵衍射仿真

      光柵是由大量等寬等間距的平行狹縫構(gòu)成的具有納米

      光柵衍射強(qiáng)度分布公式為:

      其中,I0為單縫衍射零級(jí)處的衍射光強(qiáng),

      根據(jù)以上公式算法,利用 Python 語(yǔ)言可編寫(xiě)出如下的仿真程序:

      # 入射光數(shù)量

      self.lamda = self.spinbox_l.value() * 1.E-6

      # 透光寬度a um

      self.a = self.spinbox_a.value() * 1.E-3

      # 遮光寬度b um

      # 屏幕寬度

      self.s = self.spinbox_x.value()

      # 狹縫數(shù)N

      self.N = self.spinbox_n.value()

      # 焦距f

      self.f = 40

      # 遮光寬度b um

      self.b = self.spinbox_d.value() * 1.E-3

      # 光柵常數(shù) nm

      self.d = (self.a + self.b)

      "'邏輯計(jì)算"'

      self.x = np.round(linspace(-self.s, self.s, 1000 * self.s), 3)

      self.u = ((pi * self.a) / self.lamda) * (self.x / ((self.x ** 2 + self.f ** 2) ** 0.5))

      self.I = (((sin(self.u) / self.u) ** 2) * ((sin(self.d * self.u * self.N / self.a) /

      sin(self.d * self.u / self.a)) ** 2))

      下面利用該程序從波長(zhǎng),狹縫總數(shù),透光寬度,遮光寬度和缺級(jí)現(xiàn)象這5 個(gè)角度對(duì)光強(qiáng)分布和譜線特征進(jìn)行全面地模擬仿真。

      2.2.1 波長(zhǎng)λ 對(duì)光柵衍射實(shí)驗(yàn)結(jié)果的影響

      實(shí)驗(yàn)給定狹縫總數(shù)N=10,透光寬度a=5μm,遮光寬度b=15μm,圖樣寬度為10nm,透鏡焦距f=40mm,改變參數(shù)數(shù)值,使得依次入射波長(zhǎng)為434nm,577nm,708nm的單色光。實(shí)驗(yàn)結(jié)果如圖4 所示。

      圖4 不同波長(zhǎng)的光柵衍射圖樣

      實(shí)驗(yàn)結(jié)果為:光波長(zhǎng)越長(zhǎng),各級(jí)條紋間距越寬,主(次)極大的半角寬度也越大。

      2.2.2 狹縫總數(shù)對(duì)光柵衍射實(shí)驗(yàn)結(jié)果的影響

      實(shí)驗(yàn)給定波長(zhǎng)λ=546nm,透光寬度a=5μm,遮光寬度b=15μm,圖樣寬度為10nm,透鏡焦距f=40mm,改變狹縫總數(shù),使得狹縫數(shù)目N=1,N=2,N=6,N=20。實(shí)驗(yàn)結(jié)果如圖5 所示。

      圖5 不同狹縫總數(shù)的光柵衍射圖樣

      實(shí)驗(yàn)結(jié)果為:當(dāng)狹縫數(shù)目為1 時(shí),形成單縫衍射;當(dāng)狹縫數(shù)目為2 時(shí),形成雙縫干涉。狹縫數(shù)目越多,主極大亮線的半角寬度越小,且銳度越大。次極大線寬和亮度變小。

      2.2.3 透光寬度對(duì)光柵衍射實(shí)驗(yàn)結(jié)果的影響

      實(shí)驗(yàn)給定狹縫總數(shù)N=10,波長(zhǎng)λ=546nm,遮光寬度b=15μm,圖樣寬度為10nm,透鏡焦距f=40mm,改變透光寬度參數(shù)數(shù)值,使得透光寬度a=3μm,a=5μm,a=11μm。實(shí)驗(yàn)結(jié)果如圖6 所示。

      圖6 不同透光寬度的光柵衍射圖樣

      實(shí)驗(yàn)結(jié)果為:隨著各透光寬度a 的增加,中央明紋寬度減小,但并不改變明條紋所在位置,衍射效應(yīng)變?nèi)酢?/p>

      2.2.4 遮光寬度對(duì)光柵衍射實(shí)驗(yàn)結(jié)果的影響

      遮光寬度的大小與會(huì)直接影響到單縫衍射因子的變化,對(duì)多光束干涉條紋的強(qiáng)度起到了重要的調(diào)制作用。實(shí)驗(yàn)給定狹縫總數(shù)N=10,波長(zhǎng)λ=607nm,透光寬度a=5μm,圖樣寬度為10nm,透鏡焦距f=40mm,改變遮光寬度參數(shù)數(shù)值,使得遮光寬度b=5μm,b=15μm,b=18μm。實(shí)驗(yàn)結(jié)果如圖7 所示。

      圖7 不同遮光寬度的光柵衍射圖樣

      實(shí)驗(yàn)結(jié)果為:隨著各縫寬b 的增加,主極大的位置、半角寬度及主極大條紋的間距沒(méi)有發(fā)生變化,但是主極大的光強(qiáng)度逐漸降低。

      2.2.5 缺級(jí)現(xiàn)象

      當(dāng)在θ 角位置既滿足干涉明條紋條件,也滿足單縫衍射暗紋條件時(shí),出現(xiàn)光強(qiáng)度為零的“干涉加強(qiáng)”,此現(xiàn)象即為缺級(jí)現(xiàn)象[13]。實(shí)驗(yàn)給定狹縫總數(shù)N=10,波長(zhǎng)λ=607nm,圖樣寬度為15nm,透鏡焦距f=40mm。改變透光寬度和遮光寬度數(shù)值,使得光柵常數(shù)與透光寬度的比值為d/a=3,d/a=4,d/a=5。實(shí)驗(yàn)結(jié)果如圖8 所示。

      圖8 缺級(jí)現(xiàn)象

      實(shí)驗(yàn)結(jié)果為:圖8(a)的缺級(jí)現(xiàn)象出現(xiàn)在k 為3 的整數(shù)倍位置;圖8(b)的缺級(jí)現(xiàn)象出現(xiàn)在k 為4 的整數(shù)倍位置;圖8(c)的缺級(jí)現(xiàn)象出現(xiàn)在k 為5 的整數(shù)倍位置。

      2.3 單縫衍射和縫間干涉仿真

      光柵衍射是縫間干涉和單縫衍射的綜合效應(yīng)[14]。因此,程序設(shè)計(jì)了“Dsi&Ssd 界面”來(lái)展示基于在主界面操作下的光柵衍射實(shí)驗(yàn)條件的單縫衍射因子和縫間干涉因子的相對(duì)光強(qiáng)圖。

      利用 Python 語(yǔ)言可編寫(xiě)出如下的單縫衍射和縫間干涉仿真程序:

      lamda = self.lamda

      a = self.a

      s = self.s

      f = self.f

      b = self.b

      d = self.d

      N = self.N

      x = np.round(linspace(-s, s, 1000 * s), 3)

      # 繪圖

      mpl2d = self.View_2.canvas

      mpl2d.fig.clear()

      mpl2d.fig.patch.set_facecolor('k')

      """邏輯計(jì)算"""

      # 單縫衍射

      u = ((pi * a) / lamda) * (x / ((x ** 2 + f ** 2) ** 0.5))

      I_diff = (sin(u) / u)

      ** 2

      # 多光干涉

      A_x = 0

      A_y = 0

      for i in range(1, N):

      A_x += cos((i - 1) * 2 * pi * d * (x / (f ** 2 + x ** 2) ** 0.5) / lamda)

      A_y += sin((i - 1) * 2 * pi * d * (x / (f ** 2 + x ** 2) ** 0.5) / lamda)

      I_int = A_x ** 2 + A_y ** 2

      # 總光強(qiáng)

      I = I_int * I_diff

      # 單縫衍射

      self.fig_1 = mpl2d.fig.add_subplot(2, 1, 1)

      # self.fig_1.set_alpha(0.5)

      self.fig_1.spines['right'].set_color('white')

      self.fig_1.spines['top'].set_color('white')

      self.fig_1.spines['bottom'].set_color('white')

      self.fig_1.spines['left'].set_color('white')

      self.fig_1.set_facecolor((37/255, 36/255, 36/255))

      self.fig_1.plot(x, I_diff,color='w')

      self.fig_1.set_xticks([])

      self.fig_1.tick_params(axis='x', colors='w')

      self.fig_1.tick_params(axis='y', colors='w')

      # 縫間干涉

      self.fig_2 = mpl2d.fig.add_subplot(2, 1, 2)

      self.fig_2.set_facecolor((37/255, 36/255, 36/255))

      self.fig_2.plot(x, I_int, color='w')

      self.fig_2.spines['right'].set_color('white')

      self.fig_2.spines['top'].set_color('white')

      self.fig_2.spines['bottom'].set_color('white')

      self.fig_2.spines['left'].set_color('white')

      self.fig_2.tick_params(axis='x', colors='w')

      self.fig_2.tick_params(axis='y', colors='w')

      若在主界面把可調(diào)參設(shè)置為 N=10,b=15μm,a=5μm,λ=579nm,運(yùn)行程序,模擬光柵衍射實(shí)驗(yàn)。點(diǎn)擊“Dsi&Ssd”按鈕,切換界面,即可得到該實(shí)驗(yàn)條件下如圖9 所示的單縫衍射因子和縫間干涉因子的相對(duì)光強(qiáng)圖。

      圖9 單縫衍射因子和縫間干涉因子的相對(duì)光強(qiáng)圖

      3 創(chuàng)新實(shí)驗(yàn)設(shè)計(jì)

      有研究表明有意改變光柵的刻槽間距(即選擇性地遮擋狹縫)和曲率以及基底面形,能提高光柵的分辨力和改善光學(xué)系統(tǒng)的成像的特性,并能節(jié)省輔助透鏡、減少雜散光、增加出射光強(qiáng)和提高光學(xué)系統(tǒng)的性能,使光路更為簡(jiǎn)便[15~16]。因此程序在探究光柵狹縫總數(shù)對(duì)衍射圖樣影響的基礎(chǔ)上,設(shè)計(jì)了“探究遮擋不同位置的狹縫時(shí)對(duì)透射光強(qiáng)的影響”,為選擇性地遮擋狹縫提供實(shí)驗(yàn)手段。

      該實(shí)驗(yàn)分為無(wú)規(guī)律遮擋和有規(guī)律遮擋兩大類。無(wú)規(guī)律遮擋包括隨機(jī)分布30%、隨機(jī)分布50%、隨機(jī)分布70%;有規(guī)律遮擋包括滿足間隙分布和斐波那契分布。通過(guò)對(duì)比遮擋前后的光強(qiáng)分布圖,可探究遮擋不同位置時(shí)狹縫對(duì)透射光強(qiáng)的影響。

      3.1 實(shí)驗(yàn)原理

      該部分采用振幅矢量法和圖解法來(lái)完成光強(qiáng)分布的計(jì)算。如圖10 與圖11 所示,A1為在P 點(diǎn)產(chǎn)生的、振幅為A1和初相位為α的振幅矢量。假設(shè)各次波(Ai)到達(dá)P 點(diǎn)都有相同的振幅A,令A(yù)=1,相應(yīng)的相位差以第一條光所在的方向?yàn)閤 軸正方向建立坐標(biāo)系,則第i 條光在x 方向的分量為:

      圖10 光柵衍射原理圖

      圖11 振幅矢量法

      則第i 條光在y 方向的分量為:

      光在x 方向和y 方向的分量之和分別為:

      多光干涉光強(qiáng)為:

      加入衍射的影響后光強(qiáng)為:

      基于上述原理開(kāi)發(fā)“狹縫界面”——“遮擋不同位置的狹縫對(duì)透射光強(qiáng)的影響”創(chuàng)新實(shí)驗(yàn),利用 Python 語(yǔ)言可編寫(xiě)出如下仿真程序:

      # 遮擋

      A_xs = A_x

      A_ys = A_y

      if len(self.idset) != 0:

      for i in self.idset:

      i = 2 * i if i > 0 else -2 * i + 1

      A_xs -= cos((i - 1)*2*pi*d*(x/(f**2+x**2)**0.5)/lamda)

      A_ys -=sin((i-1)*2*pi*d*(x/(f**2+x**2)**0.5)/lamda)

      I_ints = A_xs**2+A_ys**2

      I_s=np.round(I_ints*I_diff, 3)

      self.fig_2=mpl2d.fig.add_subplot(2, 1, 2)

      self.fig_2.set_facecolor((37/255, 36/255, 36/255))

      self.fig_2.plot(x, I_s,color='w')

      self.fig_2.axis([-s, s, -1, 1.1*max(I)])

      self.fig_2.spines['right'].set_color('white')

      self.fig_2.spines['top'].set_color('white')

      self.fig_2.spines['bottom'].set_color('white')

      self.fig_2.spines['left'].set_color('white')

      self.fig_2.tick_params(axis='x', colors='w')

      self.fig_2.tick_params(axis='y', colors='w')

      3.2 仿真結(jié)果

      通過(guò)改變狹縫總數(shù)以及遮擋規(guī)律,可得到如圖12 所示的不同光強(qiáng)分布圖。

      圖12 遮擋不同位置狹縫對(duì)透射光強(qiáng)的影響

      應(yīng)用該理論的聚焦和消像差性能對(duì)核心色散元件和聚焦元件的制作和研究具有一定的指導(dǎo)意義[17],并且在未來(lái)的空間光譜儀、等離子體診斷、同步輻射單色儀、光纖通信等領(lǐng)域的生產(chǎn)實(shí)踐中具有其獨(dú)特的應(yīng)用價(jià)值[18~19]。

      4 結(jié)束語(yǔ)

      作為一款基于C/S 架構(gòu)模式的軟件,PythonGUI 能良好地運(yùn)行于多平臺(tái)中,如Unix、Windows 和Macintosh等等,程序最終通過(guò)軟件包安裝的方式集成到桌面上[20],具有操作容易、計(jì)算功能強(qiáng)大以及無(wú)延遲反應(yīng)等優(yōu)勢(shì),有助于解決疫情背景下實(shí)驗(yàn)條件受限的問(wèn)題;該程序包含了較為完善的光柵衍射仿真模擬體系,有助于加強(qiáng)用戶對(duì)光柵衍射知識(shí)的理解,培養(yǎng)了自主研究的綜合創(chuàng)新能力,為推進(jìn)創(chuàng)新實(shí)驗(yàn)的設(shè)計(jì)開(kāi)辟了新路徑。

      猜你喜歡
      光柵波長(zhǎng)寬度
      HPLC-PDA雙波長(zhǎng)法同時(shí)測(cè)定四季草片中沒(méi)食子酸和槲皮苷的含量
      雙波長(zhǎng)激光治療慢性牙周炎的療效觀察
      馬屁股的寬度
      CDIO教學(xué)模式在超聲光柵實(shí)驗(yàn)教學(xué)中的實(shí)踐
      日本研發(fā)出可完全覆蓋可見(jiàn)光波長(zhǎng)的LED光源
      基于LabView的光柵衍射虛擬實(shí)驗(yàn)研究
      紅細(xì)胞分布寬度與血栓的關(guān)系
      便攜式多用途光波波長(zhǎng)測(cè)量?jī)x
      孩子成長(zhǎng)中,對(duì)寬度的追求更重要
      人生十六七(2015年5期)2015-02-28 13:08:24
      光柵衍射實(shí)驗(yàn)教學(xué)中的體會(huì)
      物理與工程(2014年4期)2014-02-27 11:23:08
      昭平县| 肥东县| 霍邱县| 额敏县| 安宁市| 灵台县| 漯河市| 武陟县| 汝南县| 馆陶县| 利津县| 湘西| 凌海市| 斗六市| 昌都县| 西贡区| 乌鲁木齐市| 女性| 称多县| 盐津县| 湾仔区| 奉节县| 青冈县| 屏边| 高邑县| 册亨县| 常宁市| 开原市| 卓尼县| 大厂| 孙吴县| 罗山县| 南投市| 南投县| 九龙县| 宝清县| 和静县| 瑞昌市| 武强县| 略阳县| 巴林右旗|