国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Python的光學(xué)仿真的可視化研究

2021-03-25 08:48劉雅嫻
科教導(dǎo)刊·電子版 2021年2期
關(guān)鍵詞:原理圖繪圖光學(xué)

劉雅嫻

(武漢東湖學(xué)院電子信息工程學(xué)院 湖北·武漢 430212)

早在1786年,蘇格蘭工程師威廉·普萊費(fèi)爾(William Playfair)因堅(jiān)信圖表比數(shù)據(jù)更有說服力,在《商業(yè)與政治圖解集》中給出了線圖、柱圖、餅圖和面積圖,從此開創(chuàng)了圖表的新紀(jì)元。

隨著大數(shù)據(jù)時(shí)代的到來,數(shù)據(jù)分析應(yīng)用于生活的方方面面。數(shù)據(jù)分析的可視化研究更是進(jìn)入了熱點(diǎn)研究課題。大量數(shù)據(jù)不僅可以用如2D、3D圖形,直觀、簡(jiǎn)潔、實(shí)時(shí)呈現(xiàn)出來,而且能從可視化中獲取更多有用的信息,成為人們關(guān)注的焦點(diǎn)。

數(shù)據(jù)分析的可視化工具,非常豐富,編程語言也非常多,如C++,Java。而Python語言作為一種解釋性的、交互式的、面向?qū)ο蟮木幊陶Z言,因其具有簡(jiǎn)單、優(yōu)雅的語法,同時(shí)具有開源、免費(fèi)使用、豐富的第三方庫(kù)等特性,越來越受到學(xué)者們的關(guān)注與使用。

光學(xué)現(xiàn)象,看得見摸得著,而對(duì)于描述光學(xué)現(xiàn)象的方程,具有晦澀難懂的特性。因此,如何將描述光學(xué)現(xiàn)象的方程的解,用圖形表現(xiàn)出來,對(duì)理解光學(xué)現(xiàn)象,顯得尤為重要。2019年,Aydogan Ozcan首次提出一種全新的光學(xué)——AI系統(tǒng),即全光衍射深度神經(jīng)網(wǎng)絡(luò),依靠光的傳播,實(shí)現(xiàn)幾乎零能耗、零延遲的深度學(xué)習(xí),它是光學(xué)工具、3D打印和神經(jīng)網(wǎng)絡(luò)的結(jié)合。基于光學(xué)衍射的研究逐漸成為研究熱點(diǎn)。仿真技術(shù)與手段,克服了光學(xué)器材的昂貴及實(shí)驗(yàn)過程不易操作、實(shí)驗(yàn)結(jié)果不易獲得等特性,將光學(xué)過程和現(xiàn)象用二維、三維或動(dòng)態(tài)圖像很好地呈現(xiàn)出來。

無論是光學(xué)仿真,還是光學(xué)仿真平臺(tái)的搭建,目前用的最多的軟件是MATLAB,用simulink搭建平臺(tái),組建模型,并對(duì)模型實(shí)施仿真。而對(duì)于使用Python進(jìn)行光學(xué)仿真,學(xué)者Vasudevan Lakshminarayanan在Understanding Optics with Python中對(duì)光學(xué)現(xiàn)象進(jìn)行了詳盡的闡述。本文對(duì)夫瑯禾費(fèi)單縫、雙縫衍射的強(qiáng)度分布圖形以及隨著單縫寬度的變化,引起的單縫衍射圖形的變化,用Python做了仿真。

1 可視化技術(shù)簡(jiǎn)介

目前為止,可視化軟件很多,如熟知的Matlab、Mathemetica、Excel等,也有比較多的商業(yè)化的可視化軟件,如:Datawrapper,Tableau Public,Smartbi,Chart.js等。

1.1 Python語言及常見可視化庫(kù)

自1989年P(guān)ython語言由荷蘭工程師Guido van Rossum設(shè)計(jì)并開發(fā)以來,逐漸成為主流程序設(shè)計(jì)語言之一。在TIOBE編程語言排行榜2020年最新版名列第三。Python又被稱為膠水語言,能夠很輕松地使用C/C++、Java等其他語言的各種模塊接口,這使Python語言用途更為廣泛。

Python具有強(qiáng)大的可視化能力,具有眾多可視化庫(kù),如2D及3D可視化庫(kù)Matplotlib、seaborn和pandas等,交互信息可視化庫(kù) Bokeh、Plotly和 Pyecharts等,地圖可視化庫(kù) folium、basemap、Geoplotlib、Mapbox、Pyecharts的Map和Geo 等等。

1.2 Matplotlib庫(kù)

Matplotlib是Python的面向?qū)ο蟮睦L圖庫(kù),通過pyplot模塊提供了一整套和MATLAB類似的繪圖函數(shù)集,可以進(jìn)行靜態(tài)、動(dòng)畫和交互式可視化。也可以很方便的將它作為繪圖控件,嵌入到GUI應(yīng)用程序中。Matplotlib附帶了幾個(gè)附加工具包,包括3D繪圖mplot3d。可以滿足對(duì)2D、3D、動(dòng)畫的要求。

1.3 Pyplot繪圖

使用pyplot繪圖的一般過程為:

生成或讀入數(shù)據(jù)-〉折線圖、散點(diǎn)圖、柱狀圖、餅狀圖、雷達(dá)圖或三維曲線和曲面-〉設(shè)置坐標(biāo)軸標(biāo)簽、坐標(biāo)軸刻度、標(biāo)題等圖形屬性-〉顯示或保存繪圖結(jié)果。

1.4 Numpy庫(kù)

Numpy是Python的一個(gè)擴(kuò)展庫(kù),支持?jǐn)?shù)組與矩陣運(yùn)算,也為數(shù)組運(yùn)算提供大量的數(shù)學(xué)函數(shù)庫(kù)。通常和SciPy(Scientific Python)和Matplotlib(繪圖庫(kù))一起用于科學(xué)計(jì)算及可視化,能替代Matlab,很好解決科學(xué)繪圖的問題。

2 光的衍射

光的衍射是指可見光在傳播過程中,如果遇到障礙物或小孔,原本直線傳播的光將偏離直線傳播而繞到障礙物后面?zhèn)鞑?,在接收屏上得到明暗相間的條紋。光的衍射和干涉一起證明了光具有波動(dòng)性。因此,光的衍射是波動(dòng)光學(xué)中的重要的一個(gè)現(xiàn)象。一般分為夫瑯禾費(fèi)衍射和菲涅爾衍射,而夫瑯禾費(fèi)衍射又分為狹縫衍射和圓孔衍射。本文以夫瑯禾費(fèi)單縫、雙縫衍射為例,使用Python開展仿真研究。

2.1 夫瑯禾費(fèi)單縫衍射原理

夫瑯禾費(fèi)單縫衍射原理圖如圖1所示。平行入射光垂直入射到中間有一個(gè)窄縫的衍射屏上,通過透鏡后,折射到像屏上。單縫寬度為b,衍射角為,入射光波長(zhǎng)為。根據(jù)波動(dòng)理論,相鄰波帶的點(diǎn)發(fā)出的次波到達(dá) P點(diǎn)的光程差,當(dāng)時(shí),在像屏上得到明暗相間的圖像,即為夫瑯禾費(fèi)單縫衍射條紋。特別的,衍射角時(shí),中央明紋就在像屏的中心。

圖1:夫瑯禾費(fèi)單縫衍射原理圖

2.2 夫瑯禾費(fèi)單縫衍射強(qiáng)度分布

為了得到單縫衍射像屏上的衍射光強(qiáng)分布,根據(jù)波動(dòng)理論,設(shè)單縫上某點(diǎn)發(fā)出的點(diǎn)光源到達(dá)P點(diǎn)的場(chǎng)強(qiáng)為相鄰點(diǎn)平行光源到達(dá)P點(diǎn)的場(chǎng)強(qiáng)和為:

2.3 夫瑯禾費(fèi)雙縫衍射原理

夫瑯禾費(fèi)雙縫衍射原理圖如圖2所示??p寬為a,b為雙縫之間的寬度,縫距為衍射角,入射光波長(zhǎng)為。根據(jù)波動(dòng)理論,

圖3:夫瑯禾費(fèi)雙縫衍射原理圖

2.4 基于Python的可視化

首先引入第三方庫(kù)文件

import matplotlib.pyplot as plt

import numpy as np

定義單縫衍射函數(shù) single_slit_diffraction_intensity(slit_width,lamda,X)

定義雙縫衍射函數(shù)double_slit_diffraction_intensity(slit_width,lamda,X,d)

圖3:?jiǎn)慰p衍射光強(qiáng)分布仿真圖b=2.5×10-4m

圖4:?jiǎn)慰p衍射光強(qiáng)分布仿真圖b=2.5×10-4m

圖5:雙縫衍射光強(qiáng)分布仿真圖

3 結(jié)論

通過Python,我們可以展現(xiàn)光學(xué)中的衍射、干涉等光學(xué)現(xiàn)象,并且能很詳細(xì)的反映出衍射的特征。

猜你喜歡
原理圖繪圖光學(xué)
來自河流的你
“禾下乘涼圖”繪圖人
滑輪組的裝配
光學(xué)常見考題逐個(gè)擊破
淺談STM32核心板原理圖設(shè)計(jì)
電路原理圖自動(dòng)布圖系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
基于Protel DXP 2004層次原理圖的設(shè)計(jì)
基于HTML5 Canvas繪圖技術(shù)應(yīng)用
Surfer和ArcView結(jié)合在氣象繪圖中的應(yīng)用
光學(xué)遙感壓縮成像技術(shù)