|
|
[交流]
利用Matlab處理Lumerical FDTD的三角納米片電場(chǎng)分布仿真結(jié)果 已有2人參與
FDTD計(jì)算得到的電場(chǎng)分布,但是FDTD通過另存為jpg或者截屏所得到的圖片分辨率很低,得到的圖片往往不能直接使用。因此,可以通過腳本輸入到Maltab,然后再利用Matlab處理圖片并輸出。
但是將數(shù)據(jù)從FDTD輸出到Matlab中,并不是想象中那么簡(jiǎn)單,經(jīng)歷了好幾次坑,反復(fù)摸索之后,得到了一種比較可行的方案,介紹如下。
1. FDTD原始結(jié)果
這里我們選用三角納米片的電場(chǎng)分布仿真結(jié)果進(jìn)行舉例。圖1是FDTD直接輸出的結(jié)果(截圖),可以明顯看出,x方向和y方向的比例并不相同,而且不容易調(diào)節(jié)成比例尺相同,我目前有兩個(gè)可行的方案可以解決這個(gè)問題,一種是先建立一個(gè)方形的圖片,利用簽字筆在電腦屏幕上畫出方形的邊界,然后再反復(fù)調(diào)節(jié)FDTD的圖片,使其邊界和畫出的邊界重合;第二種方案相對(duì)更精準(zhǔn)也更方便,借用Snipaste截圖軟件創(chuàng)建一個(gè)方形的貼圖,這個(gè)好處是這個(gè)貼圖可以一直置于頂層,然后再調(diào)節(jié)FDTD中圖片的邊界即可。這兩種方案都是調(diào)節(jié)好之后進(jìn)行截圖,因?yàn)橹苯恿泶妫現(xiàn)DTD輸出的圖片更加模糊,而且也沒有在FDTD Solutions軟件中找到可以設(shè)置分辨率的選項(xiàng)(FDTD Solutions版本為2018版),因此可以使用高分辨率截圖軟件或者較高分辨率的軟件,然后將圖片放到PS或者AI中進(jìn)行分辨率的進(jìn)一步調(diào)節(jié)。FDTD中能夠調(diào)節(jié)的著實(shí)比較少,很有必要繼續(xù)調(diào)整。
![利用Matlab處理Lumerical FDTD的三角納米片電場(chǎng)分布仿真結(jié)果]()
2. FDTD結(jié)果導(dǎo)出到Matlab
FDTD數(shù)據(jù)導(dǎo)入到Matlab主要參考Lumerical官網(wǎng)的介紹文檔matlabsave。
可以通過如下腳本實(shí)現(xiàn)電場(chǎng)的讀。
E=getresult("z=0","E" ;
E2=getelectric("z=0" ;
E1=sqrt(E2);
matlabsave("tri120.mat",E,E1);
其中E得到的是一個(gè)struct結(jié)果:
包含以下字段的 struct:
E: [48841×3 double]
Lumerical_dataset: [1×1 struct]
f: 4.2827e+14
lambda: 7.0000e-07
x: [221×1 double]
y: [221×1 double]
z: 0
struct中E是一個(gè)包含三個(gè)x, y, z三個(gè)方向的電場(chǎng)分布,是矢量信息,而通過getelectric并開根號(hào)得到的是電場(chǎng)的標(biāo)量數(shù)值。值得一說的是,對(duì)結(jié)構(gòu)體struct中內(nèi)容的調(diào)用可以采用E.x等命令進(jìn)行直接讀取。
值得注意的是,F(xiàn)DTD和Matlab采用的矩陣規(guī)則不同,輸出后的結(jié)果需要進(jìn)行非共軛轉(zhuǎn)置,才能夠和FDTD的結(jié)果進(jìn)行對(duì)應(yīng)。
x,y, E 等的信息除了利用getdata或getresult獲取以外,也可以通過右鍵單擊,將結(jié)果輸出到腳本,可以得到相同的效果。
![利用Matlab處理Lumerical FDTD的三角納米片電場(chǎng)分布仿真結(jié)果-1]()
3. Matlab作圖
將電場(chǎng)結(jié)果,x,y,z數(shù)據(jù)導(dǎo)出到matlab中之后,作圖可以有多種方案,contour,contourf,pcolor等均可以實(shí)現(xiàn),pcolor更為方便。
![利用Matlab處理Lumerical FDTD的三角納米片電場(chǎng)分布仿真結(jié)果-2]()
contourf和pcolor的語(yǔ)句如下:
[C,h] = contourf(E,M) %counterf, M越大,越精細(xì)
h = pcolor(x,y,E) %pcolor
如圖3為pcolor輸出的結(jié)果。作圖后,仍需進(jìn)行如下調(diào)整:
set(h,'LineStyle','none'); %線型設(shè)置為無
colorbar %色標(biāo)
colormap jet %色標(biāo)模式選用jet
axis equal %x, y 等比例尺
最后,如果有仿真相關(guān)需求,歡迎通過微信公眾號(hào)聯(lián)系我們。
微信公眾號(hào):320科技工作室。 |
|