構(gòu)BIC仿真:斜入射線偏振與SBC邊界條件設(shè)置要點(diǎn))
在COMSOL里跑彎月型結(jié)構(gòu)的BIC仿真幾何建模永遠(yuǎn)不是最耗時(shí)的環(huán)節(jié)真正讓人頭疼的是斜入射條件下的線偏振設(shè)置。入射角度一變E0和k向量之間的垂直關(guān)系被破壞SBC散射邊界條件對(duì)平面波的吸收性能也跟著波動(dòng)結(jié)果看起來花花綠綠其實(shí)很可能沒有一個(gè)數(shù)可靠。這篇文章就是我最近調(diào)試這個(gè)場(chǎng)景的完整記錄把散射邊界條件配合斜入射線偏振的關(guān)鍵設(shè)置思路交個(gè)底給正在做納米光子諧振器、超表面或者BIC方向仿真的朋友當(dāng)個(gè)參考。1. 先想明白彎月結(jié)構(gòu)里的BIC斜入射為什么牽一發(fā)動(dòng)全身1.1 用馬路環(huán)島來理解連續(xù)譜束縛態(tài)BIC全稱是Bound State in the Continuum連續(xù)譜束縛態(tài)。普通光模式只有兩種歸宿要么被結(jié)構(gòu)束縛住要么耦合到外部輻射通道里跑向遠(yuǎn)方。BIC的特殊之處在于它的能量處在可輻射連續(xù)譜之中但模式卻始終不向外部輻射理論壽命無限長、Q值趨向無窮大。我習(xí)慣用一個(gè)生活場(chǎng)景類比一條開放高速路相當(dāng)于連續(xù)輻射通道普通模式就是路上的車沿著大路駛向遠(yuǎn)方而BIC是路中央一個(gè)完全封閉的環(huán)島里面的車只能在環(huán)島內(nèi)繞圈完全不會(huì)匯入主路對(duì)觀察者來說它既不放行車輛也不產(chǎn)生擾動(dòng)。這類模式在傳感、激光和超表面領(lǐng)域都非常有價(jià)值因?yàn)樯晕⒏淖円稽c(diǎn)點(diǎn)環(huán)境條件Q值就會(huì)從無限大掉落到幾千幾萬對(duì)周圍參數(shù)異常敏感。BIC大體分兩類來源。一類是對(duì)稱保護(hù)型模式場(chǎng)分布的對(duì)稱性和外部所有輻射平面波的對(duì)稱性都不匹配輻射通道被幾何對(duì)稱性直接鎖死另一類是參數(shù)調(diào)諧型兩個(gè)泄漏通道的輻射分量在遠(yuǎn)場(chǎng)恰好幅度相等、相位相反互相抵消之后一個(gè)有泄漏的模式被洗成了束縛態(tài)。理解這兩類來源是后面做參數(shù)掃描的基礎(chǔ)。1.2 彎月幾何到底帶來了什么額外自由度為什么不用圓盤、方柱這類規(guī)規(guī)矩矩的結(jié)構(gòu)圓盤和方柱也能承載對(duì)稱保護(hù)BIC但這類BIC往往只在正入射條件下嚴(yán)格成立。一旦改成斜入射原有的鏡像對(duì)稱等對(duì)稱元素被破壞BIC會(huì)很快退化成一個(gè)低Q的Fano共振可供調(diào)節(jié)的參數(shù)維度很有限。彎月結(jié)構(gòu)不一樣兩個(gè)表面的曲率半徑、中心厚度、底面半徑都可以分別控制結(jié)構(gòu)天然帶有上下和內(nèi)外的不對(duì)稱性。模式分布不再依賴嚴(yán)格的全局對(duì)稱性而是被曲率比、高寬比等局部幾何參數(shù)牢牢控制。我在模擬項(xiàng)目X里做過一組參數(shù)掃描固定材料折射率只改變底部曲率半徑發(fā)現(xiàn)BIC出現(xiàn)的入射角從大約46度移動(dòng)到了37度附近譜線形態(tài)也從對(duì)稱的Lorentz型過渡到了明顯的Fano型。這意味著彎月結(jié)構(gòu)的BIC很適合把入射角當(dāng)做一個(gè)外置旋鈕斜入射仿真不是可做可不做的推廣而是這個(gè)課題本身的核心研究手段。還有一點(diǎn)容易被忽略彎月表面是強(qiáng)彎曲界面外行波在曲面上的傳播方向并不單一結(jié)構(gòu)散射出去的場(chǎng)可能會(huì)同時(shí)朝很多角度擴(kuò)散。如果邊界條件只處理某個(gè)特定方向的平面波其他方向的反射就會(huì)悄悄溜進(jìn)數(shù)值結(jié)果最后表現(xiàn)成一條虛假的泄漏通道把本應(yīng)很高的Q值硬生生壓低。2. 邊界條件取舍斜面入射場(chǎng)景我為什么棄PML改SBC2.1 SBC到底吸收了什么以及它能吸收到什么程度SBC的數(shù)學(xué)本質(zhì)是在邊界面上設(shè)置阻抗匹配關(guān)系讓外行電磁波穿過邊界時(shí)盡量不生成反射波。COMSOL里的SBC分為一階和二階一階形式默認(rèn)邊界處的波近似垂直邊界傳播處理斜入射時(shí)反射率明顯升高二階形式在阻抗關(guān)系里加入了切向?qū)?shù)項(xiàng)對(duì)斜入射的吸收穩(wěn)定性大幅提升。BIC仿真對(duì)邊界條件的要求比普通諧振器高得多。高Q模式意味著光子在結(jié)構(gòu)內(nèi)停留成千上萬個(gè)光學(xué)周期哪怕SBC每個(gè)周期只反射0.1%的能量累積起來也足以變成一個(gè)可觀的數(shù)值損耗通道Q值上限被人為壓低。所以彎月BIC這個(gè)場(chǎng)景里我直接上二階SBC并關(guān)閉后向反射選項(xiàng)——那個(gè)功能主要用于保留駐波效應(yīng)對(duì)純吸收?qǐng)鼍安粌H沒有幫助反而會(huì)引入額外的數(shù)值反射路徑。2.2 為什么我不首選PML提到吸收邊界不少人的第一反應(yīng)就是PML。PML正入射時(shí)效果確實(shí)很好但它本質(zhì)上是針對(duì)特定傳播方向設(shè)計(jì)的高損耗層入射角一大吸收性能會(huì)顯著滑落而且需要反復(fù)調(diào)節(jié)層數(shù)與縮放系數(shù)。彎月結(jié)構(gòu)的散射場(chǎng)是發(fā)散且多方向的單一取向的PML很難兼顧各個(gè)角度的外行波更不用說PML還要額外占用空氣域和網(wǎng)格資源。我做過實(shí)際對(duì)比入射角在15度以下時(shí)認(rèn)真配置的SBC和精心調(diào)優(yōu)的PML共振峰位置的差別不到0.01 nm但SBC模型的體量和調(diào)參周期都更短。當(dāng)然不要因此把SBC當(dāng)成萬能方案入射角超過40度或者散射場(chǎng)里有明顯的掠射分量時(shí)SBC仍然會(huì)力不從心。我個(gè)人的經(jīng)驗(yàn)判斷大致如下表場(chǎng)景二階SBCPML入射角0-10度推薦設(shè)置最簡可用但需要額外吸收層幾何入射角10-30度推薦能穩(wěn)定工作需要細(xì)致調(diào)節(jié)PML參數(shù)入射角30-45度謹(jǐn)慎使用必須空盒驗(yàn)證更穩(wěn)妥可靠大角度/多方向散射場(chǎng)不推薦通常更合適3. 斜入射線偏振的三個(gè)地基E0、k向量、相位參考點(diǎn)3.1 先讓入射波滿足橫波條件在SBC設(shè)置面板里入射電場(chǎng)參數(shù)分兩部分E0矢量決定線偏振方向和幅度k向量決定傳播方向。斜入射時(shí)最常見的錯(cuò)誤是隨手填一個(gè)E0比如E0(1,1,0)覺得只要電場(chǎng)同時(shí)有x和y分量就行。正入射時(shí)可能僥幸蒙對(duì)斜入射一出現(xiàn)就露餡平面波要求電場(chǎng)嚴(yán)格垂直于傳播方向只要E0和k的內(nèi)積不為零入射場(chǎng)就多了一個(gè)非物理的縱向分量結(jié)構(gòu)附近會(huì)產(chǎn)生虛假激勵(lì)。標(biāo)準(zhǔn)做法是先把k確定下來再用叉乘構(gòu)造E0。如果入射面取xz平面入射角為theta則有k k0 * (sin(theta), 0, cos(theta)) s偏振TE電場(chǎng)垂直入射面 E0s (0, 1, 0) p偏振TM電場(chǎng)在入射面內(nèi) E0p (cos(theta), 0, -sin(theta))E0p更嚴(yán)格的寫法是直接取 y_hat 與 k 的叉乘再做歸一化這樣無論入射角的正負(fù)如何變化偏振方向都不會(huì)出錯(cuò)。3.2 把入射參數(shù)做成參數(shù)表而不是寫死成數(shù)字斜入射BIC必然要做入射角掃描每次手動(dòng)改設(shè)置面板里的數(shù)值既低效又容易出錯(cuò)。我習(xí)慣在全局定義-參數(shù)里一次性建好一批命名參數(shù)theta_inc入射角phi_inc入射方位角kx k0*sin(theta_inc)kz k0*cos(theta_inc)E_sx、E_sy、E_szs偏振的電場(chǎng)分量E_px、E_py、E_pzp偏振的電場(chǎng)分量SBC面板里直接引用這些參數(shù)名。后續(xù)只需要把入射角定義成參數(shù)化掃描COMSOL就會(huì)自動(dòng)在每個(gè)角度上重新計(jì)算SBC的入射場(chǎng)不用任何額外的腳本干預(yù)。這條工作流節(jié)省的時(shí)間比想象中多得多。3.3 相位參考點(diǎn)為什么關(guān)鍵SBC的入射場(chǎng)表達(dá)式通常會(huì)帶一個(gè)相位因子 exp(i*k·(r-r0))r0就是相位參考點(diǎn)。多數(shù)教程對(duì)此一筆帶過但斜入射時(shí)它非常關(guān)鍵。如果參考點(diǎn)設(shè)在結(jié)構(gòu)中心入射角變化之后每個(gè)網(wǎng)格點(diǎn)相對(duì)參考點(diǎn)的相位會(huì)整體平移雖然在理論上不改變最終物理結(jié)果但在強(qiáng)彎曲邊界上容易引發(fā)相位跳躍影響SBC在曲面處的吸收方向。我的建議是參考點(diǎn)固定在全局坐標(biāo)原點(diǎn)每次更換入射面時(shí)同步檢查k向量的符號(hào)和E0方向是否仍構(gòu)成右手關(guān)系。最可靠的自檢方法是空盒子測(cè)試把彎月結(jié)構(gòu)臨時(shí)隱藏只保留均勻介質(zhì)和空氣盒子施加同樣的SBC平面波跑一次頻域然后后處理看體積內(nèi)總電場(chǎng)減去解析平面波的差值。如果差值趨近于零說明入射場(chǎng)和SBC的相位配置完全正確才可以放心繼續(xù)。4. 從幾何到掃描彎月BIC仿真的完整實(shí)操鏈路4.1 彎月幾何、空氣盒子和網(wǎng)格的思路彎月結(jié)構(gòu)可以用球冠差集來生成。一個(gè)大曲率半徑的球冠向下延伸底部與一個(gè)小曲率半徑的球冠或圓柱面求差就能得到彎月輪廓;想獲得更精確的形狀控制可以直接用超橢圓表達(dá)式做旋轉(zhuǎn)體。建模參數(shù)至少四個(gè)頂部曲率半徑、底部曲率半徑、中心厚度、底面半徑。我建議把參數(shù)先定義好再建幾何這樣后續(xù)做幾何掃描時(shí)只需改參數(shù)、不需要重新建模??諝夂凶臃矫嫱鈬呴L至少取工作波長的1.5到2倍。盒子太小即使SBC本身是好的結(jié)構(gòu)輻射的倏逝場(chǎng)在邊界處還沒有衰減到足夠低截?cái)嗾`差直接污染諧振頻率。彎月表面曲率變化劇烈曲面附近網(wǎng)格要加密到波長/30左右遠(yuǎn)處空氣域按波長/10劃分使用自由四面體過渡即可。4.2 物理場(chǎng)和SBC配置的標(biāo)準(zhǔn)步驟物理場(chǎng)選擇電磁波、頻域研究類型選頻域。材料上調(diào)試階段建議讓結(jié)構(gòu)介質(zhì)不帶損耗因?yàn)槟呐绿摬空凵渎手挥幸稽c(diǎn)也會(huì)給BIC引入真實(shí)衰減Q值上限瞬間被鎖死后邊很難區(qū)分物理效應(yīng)和數(shù)值效應(yīng)。邊界配置按這個(gè)順序執(zhí)行選中所有外部邊界添加散射邊界條件階數(shù)選2類型選平面波激活平面波入射場(chǎng)的設(shè)置E0和k替換為全局參數(shù)確認(rèn)相位參考點(diǎn)是坐標(biāo)原點(diǎn)關(guān)閉后向反射如果你的COMSOL版本有曲面曲率修正一類的選項(xiàng)建議一并打開二階SBC在強(qiáng)曲面邊界上會(huì)得到進(jìn)一步改善。4.3 掃描策略先波長后角度不要同時(shí)在一張表里掃一堆參數(shù)那個(gè)組合爆炸很浪費(fèi)算力。先固定入射角可以是0度或預(yù)期的BIC角度附近掃描波長用先粗后細(xì)的步長把共振位置鎖定然后固定共振波長掃描入射角重點(diǎn)觀察Q值隨角度怎么演化。兩階段都用參數(shù)化掃描完成每段掃描讓共振線寬內(nèi)至少分布5個(gè)采樣點(diǎn)高Q峰如果窄得離譜就改用自適應(yīng)步長。求解器我直接用直接求解器比如PARDISO或MUMPS。BIC仿真別碰迭代求解器高Q模式讓矩陣條件數(shù)差到離譜迭代器經(jīng)常長時(shí)間徘徊不收斂省下的內(nèi)存遠(yuǎn)遠(yuǎn)彌補(bǔ)不了浪費(fèi)的時(shí)間。網(wǎng)格規(guī)模上說一個(gè)2λ量級(jí)的空氣盒子配合局部加密3D全模型自由度通常在幾十萬到一兩百萬普通工作站完全跑得動(dòng)。5. 怎么確認(rèn)你看到的是真BIC而不是數(shù)值假象5.1 三個(gè)相互獨(dú)立的證據(jù)鏈看到窄峰不等于看到了BIC我通常要求三個(gè)證據(jù)同時(shí)成立第一譜線寬度要足夠窄并且隨著逼近BIC條件線寬持續(xù)收窄Q λ/Δλ朝一個(gè)穩(wěn)定的大值收斂。第二遠(yuǎn)場(chǎng)輻射功率在BIC條件附近急劇下降普通共振的輻射功率比BIC鄰域高好幾個(gè)數(shù)量級(jí)。第三近場(chǎng)分布呈現(xiàn)束縛態(tài)特征場(chǎng)極大值局域在彎月核心區(qū)域離開結(jié)構(gòu)后迅速衰減而不是一個(gè)正在向外拖拽的輻射波前。5.2 網(wǎng)格與邊界對(duì)Q值的污染測(cè)試高Q仿真里數(shù)值誤差最喜歡偽裝成物理信號(hào)。網(wǎng)格太粗模式場(chǎng)被削掉一部分Q值可能虛高也可能虛低SBC反射會(huì)把Q值上限壓低。要分辨這兩類誤差用雙測(cè)試策略網(wǎng)格測(cè)試把彎月曲面附近的網(wǎng)格從波長/30加密到波長/50重新跑同一點(diǎn)看共振頻率移動(dòng)量。真BIC對(duì)網(wǎng)格應(yīng)當(dāng)非常穩(wěn)定頻率移動(dòng)小于千分之一如果明顯移動(dòng)繼續(xù)加密。盒子測(cè)試把空氣盒子邊長從1.5λ擴(kuò)大到3λ對(duì)比Q值和共振頻率。Q值隨著盒子變大而明顯增長說明結(jié)果被邊界卡住基本不變說明SBC吸收足夠干凈。兩個(gè)測(cè)試一起做排查偽峰的效率非常高。5.3 求解器收斂度的診察最后還要看求解器本身。直接求解器跑完后我會(huì)查看殘差和收斂報(bào)告。高Q頻點(diǎn)附近矩陣接近奇異容差設(shè)得不夠小的話峰形會(huì)被削平或者出現(xiàn)抖動(dòng)。把相對(duì)容差壓到1e-8以下再檢查頻率掃描曲線在高Q峰附近是否光滑。如果出現(xiàn)非物理的鋸齒優(yōu)先查求解器設(shè)置不要急著去改物理參數(shù)。6. 實(shí)戰(zhàn)踩坑記錄這些細(xì)節(jié)最容易讓斜入射仿真報(bào)廢6.1 E0沒有歸一化角度掃描整體失真最早一版模型里我的E0直接填了1完全沒有考慮偏振方向歸一化。結(jié)果入射角變大時(shí)投影到傳播方向的電場(chǎng)有效幅度在悄悄變化透射率曲線像整體疊加了一個(gè)余弦因子和物理規(guī)律明顯不符。把所有E0向量歸一化到單位長度并確認(rèn)入射總功率密度在任意角度下都一致之后問題徹底消失。6.2 s偏振和p偏振的定義一定要擺到臺(tái)面上斜入射時(shí)不同的人說水平偏振可能指的是完全不同的方向。s偏振的定義是電場(chǎng)垂直于入射面p偏振是電場(chǎng)平行于入射面。彎月結(jié)構(gòu)在xy平面具有軸對(duì)稱性時(shí)s和p會(huì)激勵(lì)到不同的模式分支如果把兩者搞混譜線特征會(huì)張冠李戴。我現(xiàn)在會(huì)在模型里明確寫下incident_plane_normal、s_polarization、p_polarization三個(gè)參數(shù)后處理再畫電場(chǎng)矢量確認(rèn)方向確保每一步都看得見。6.3 從PML模型改SBC時(shí)留下的影子吸收層有次我在一個(gè)舊PML模型基礎(chǔ)上直接改成SBC波形異常、Q值低了將近一個(gè)數(shù)量級(jí)。排查了很久才發(fā)現(xiàn)PML子域還留在幾何里只是邊界條件換了那層高損耗材料仍在默默吸收?qǐng)?。如果你也打算從PML模型改造務(wù)必把原來的PML域重新改回普通空氣域或者干脆在新模型里重新搭幾何別讓這種低級(jí)殘留浪費(fèi)半天時(shí)間。6.4 空盒子自檢幾十秒的高性價(jià)比照妖鏡所有經(jīng)驗(yàn)里最值得保留的一條每次換了入射角、換了偏振類型、換了邊界條件之后先別急著跑含結(jié)構(gòu)的完整模型先用只有均勻介質(zhì)的空盒子跑基準(zhǔn)測(cè)試??蘸凶幽P妥杂啥鹊蛶资刖湍芘芡?。如果空盒子里SBC都吸不干凈、或者平面波定義就有問題含結(jié)構(gòu)的結(jié)果必然全錯(cuò)空盒子過了再去跑正事能減少一大半無效仿真。最后再分享一個(gè)工作流習(xí)慣。每次調(diào)整完幾何或者SBC參數(shù)我會(huì)把空盒子基準(zhǔn)、網(wǎng)格測(cè)試和盒子尺寸測(cè)試的結(jié)果存進(jìn)一張對(duì)照表隨模型一起歸檔。后續(xù)再改任何參數(shù)只要對(duì)照表里對(duì)應(yīng)的基準(zhǔn)數(shù)值沒有漂移我就敢繼續(xù)往下跑。BIC仿真的坑大多埋在那些看不見的邊界里而基準(zhǔn)測(cè)試就是專門照出這些坑的手電筒。