COMSOL纳米光学仿真
公眾號→【COMSOL仿真交流】←更多精彩內容
入門仿真
仿真的第一要務就是要搞清楚層與層之間的反射、透射關系,也就是復雜的背景場。
這個背景場有兩種方法:一是用fresnel equation計算出來解析解,該方法遇見多層,尤其是有奇奇怪怪的介電常數的時候,難度較大;二是用comsol進行數值計算。
?從最簡單的官方案例庫中的fresnel equation開始學習。該案例主要是用仿真值和理論值進行對比,判斷仿真的準確性。該方法也是廣為流傳的two step method的基礎。
首先是理論計算,假設入射角是
,那么通過fresnel equation可以計算出,s分量和p分量的反射和透射系數:
? ?反射率為
,透射率為
。理論值已經有了,下面進行仿真,具體參數設置見案例,下面只說我認為的細節。
? ?仿真結構如下圖:共兩層,上面一層是空氣,下面一層是玻璃,定義了兩個端口,上面是入射端口,下面是出射端口。
邊界條件使用周期性邊界條件,KF選擇通過端口計算(以前版本貌似要自己寫),在進行網格化的時候,最好通過copy face的方法實現,有利于計算的收斂性。
port的設置對新手是最有迷惑性的地方,comsol中port端口入射角度有兩個輸入參數,如下圖:
那么comsol是怎么定義這兩個角度的方向的呢?我沒有找到官方資料,根據案例和圖形描述,elevation angle應該是與port法線的夾角,Azimuth angle應該是與x軸的夾角。
? ?首先將入射波設為TM波,也就是H方向垂直于入射面。那么結合剛說的內容,當Azimuth angle=0時,入射面為xz平面,所以案例中將H0的y方向振幅設置為1。這時候反射率和折射率對應的是p分量,可以在案例結果中看到兩種方法結果符合的很好。? ?然后將入射波設為TE波,也就是說E方向垂直于入射面。同理,案例中將E0的y方向振幅設置為1。這時候反射率和折射率對應的是s分量,可以在案例結果中看到兩種方法結果依然符合的很好。
? ?這時候如果加入Azimuth angle,比如設置為60[deg],運行試試會出現什么結果?如果只改變這一個地方,那么結果就會出問題。因為此時的入射面已經變了。很多初學者很容易忽略這個問題!如何更改?
? ?還是以TE波為例,如Azimuth angle=60[deg],那么E0x = sin(60[deg]),E0y = -cos(60[deg])。將入射光更改后,再與s分量比較,又可以吻合了。
來源:iFanFan
總結
以上是生活随笔為你收集整理的COMSOL纳米光学仿真的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 校园网规划与设计(附加完整word文档和
- 下一篇: wget连接指定端口_WGET常用命令