尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

COMSOL仿真拓扑光子晶体:从能带计算到边界态验证

COMSOL仿真拓扑光子晶体:从能带计算到边界态验证 最开始接触这个课题其实是抱着“跑通一个案例”的心态去的。真正常用的光学仿真工作流大多是FDTD类的时域工具但在把拓扑光子晶体和单向传输这两个关键词放在一起之后我发现事情没那么简单想要扫出能带、看清布里渊区里的简并点、再验证界面态的背散射抑制一套能同时做频域本征分析和参数化扫描的环境会顺手得多。于是Comsol被拉进了战场也正因为这样才踩出了一条从能带计算到界面态验证的完整路径。这篇内容就是把这套路径里值得记录的东西都写出来尤其是那些不跑一遍根本不会注意到的细节。1. 为什么偏要用Comsol啃拓扑光子晶体这块硬骨头1.1 拓扑光子晶体的“单向传输”究竟是什么问题这不是普通的“光只能往前不能往后”那样直观的问题。传统光波导中界面处的缺陷、粗糙度、拐角都会引发后向反射工程上只能靠加工精度去控制。拓扑光子晶体则提供了一套完全不同的逻辑通过设计晶胞的对称性让光在两种具有不同拓扑性质的结构交界处传播时背向散射通道在物理上被关闭。我在刚接触这个方向时常犯一个理解错误以为“单向传输”指的是光完全不能反向走。实际上谷霍尔机制下的拓扑边界态正反两个传播方向仍然存在分别对应两个不同的能谷偏振态。真正的核心在于一个边界上的正向模式与反向模式在动量空间里是隔离的所以局部缺陷或者路径拐角很难把能量从正向“弹”回反向。这也是为什么拓扑光子晶体能够成为片上光路由、光隔离器、慢光器件研究热点的原因。要验证这个效应靠买样品加工是来不及的仿真就要扛下绝大多数预研工作。这时仿真的对象实际上有两层第一层是体态能带结构用来判断带隙位置以及带隙的拓扑性质第二层是边界态的色散关系和场分布用来确认边界上确实存在一条跨过整个带隙的传播模式并且这条模式受到拓扑保护。1.2 Comsol在处理这类周期性结构时的独特优势在仿真拓扑光子晶体时市面上的工具选择其实不少。基于平面波展开法的程序能很快算出理想周期结构的能带但一旦涉及超胞、边界态、有限结构中的场分布和反射/透射分析平面波展开的灵活性就不够了。基于时域差分的方法做能带扫描也不差但频域本征值问题通常需要跑很多时间步而且从时域结果里提取色散需要额外的后处理。Comsol最难得的一点是它把“解析几何建模—本征频率求解—参数化扫描—后处理提取色散—直接在真实结构里加激励看场演化”这几件事放在同一个模型文件里做完。特别是模型方法中的“电磁波频域”接口支持二维周期性结构的特征频率求解配合参数化扫描一条完整的能带曲线可以不离开软件就画出来。另外Comsol的参数化扫描加上“上一个解作为初始值”的做法在追踪能带分支时极其实用。很多其他工具在扫描波矢时容易出现模式顺序跳跃的问题要么漏掉某条带要么把两条带搞混。Comsol在这点上相对宽容只要配置得当几乎能稳定地连续扫描整个高对称路径。而这些正是探索拓扑光子晶体时最高频的操作。2. 先看懂谷霍尔机制的物理图像再谈建模2.1 从C6v对称性和狄拉克锥说起三角晶格是拓扑光子晶体里最经典的结构之一。在未破坏对称性时三角晶格的光子晶体在第一布里渊区的K点和K点附近会形成能带简并。所谓“简并”就是在某个动量位置上两个不同模式拥有相同的频率色散关系像一个上下锥顶在一起的形状这就是狄拉克锥。这个锥形色散非常关键因为拓扑相变正是从它身上发生的。当晶格里的两个最近邻“原子”通常是空气孔或介质柱半径从相等变成不等时晶格的对称性从C6v降到了C3v。对称性破缺之后原来在K点简并的两个态会被劈开形成一条带隙。这条带隙的宽度直接由两个相邻孔的半径差决定半径差越大带隙就越宽。但是要注意如果半径差过于夸张整个晶格的能带可能会出现其他闭合带隙窗口反而被破坏因此参数选择需要扫描后确定。这里有一个很实用的物理直觉带隙打开后我们需要判断这个带隙是“普通带隙”还是“拓扑带隙”。在平凡带隙里两个不同结构交界处不会存在边界态而在拓扑带隙里两个具有不同拓扑指标的结构交界时一定会产生一条或几条边界态色散曲线跨过整个带隙连接上方体态与下方体态。判断拓扑指标的方法很多但工程上最实用的是通过谷陈数来判断。2.2 谷陈数、能谷投影与界面态判据在谷霍尔机制中每个能谷K或K都可以单独定义谷陈数。对于三角晶格双孔结构当两个孔半径分别为r1和r2且r1≠r2时在某个能谷处一个相的谷陈数为1/2另一个相的为-1/2。两个结构在同一个能谷上的谷陈数之差是±1这个差值对应着边界上存在一条单向的谷锁定边界态。晶格从C6v到C3v的破缺方式也有讲究。如果r1和r2的分配方式在空间上呈现出了“上下翻转不对称”的结构那么两个相的拓扑性质就会出现差异。常见做法是用同一种晶胞几何只是交换r1和r2的位置这样两个半平面具有相反的拓扑指标拼在一起时边界态自然存在。理解了这一层之后就能明白为什么仿真建模最常见的方案是“两个半平面拼接”上半部分采用结构A比如左边孔半径大、右边孔半径小下半部分采用结构B反过来。这两部分之间的分界线就是拓扑边界态存在的位置。模拟时只要保证两个部分在整个带隙区间内有重叠的完整带隙即能带图里在相同频率范围内两边都没有体态就有很大把握在边界上观察到单向态。3. 能带结构计算用Comsol扫出第一条k空间色散3.1 三角晶格几何与归一化参数设置在Comsol里建议从二维模型开始把“电磁波频域”接口中的求解模式设置为“面外磁场”也就是计算TE偏振。谷霍尔光子晶体的大多数理论和实验都基于TE模这样也便于后续和文献中的归一化频率对比。三角晶格的标准晶胞是一个平行四边形两个基矢取a1(a,0)a2(a/2,sqrt(3)a/2)。我在建模时习惯把晶格常数a设为1微米圆孔半径设为r1和r2两个参数。对于通常的硅基/氮化镓介质板结构背景材料相对介电常数设为12.25空气孔相对介电常数设为1。两个圆孔在晶胞内的位置需要仔细确定。以原胞的基矢方向来看晶胞内有两个不等价的孔位置一个位于基元的原点附近一个位于(a/2, sqrt(3)a/6)附近实际位置要根据期望的高对称方向来调整。这里容易犯的错是把两个圆孔放到了同一个高对称点上导致晶格对称性没破坏带隙完全打不开。设置好几何之后把两个圆从背景矩形中减去形成空气孔结构。对于介质柱结构也类似只是把材料反过来。考虑到现实加工多为介质板上打孔我更推荐空气孔方案它在后续的边界态超胞模型中更容易控制PML和开放边界。3.2 Floquet周期边界的正确设置方式Comsol中周期结构能带计算的物理核心就是布洛赫定理在周期边界两侧场不是简单相等而是差一个相位exp(i*k·a)。在“周期边界条件”功能中需要指定源边界和目标边界并将周期性设置为“Floquet周期”。这里最容易搞错的地方是波矢的单位和方向。Comsol的波矢分量kx、ky单位默认为弧度每米不是“无量纲的倒晶格坐标”。所以我在参数扫描之前通常先定义两个辅助参数kx_val k0 * cos(θ)ky_val k0 * sin(θ)直接扫描k0从0到某个布里渊区边界点再换算成物理频率。另一种更方便的做法是直接用“归一化波矢坐标”比如定义kx_param从0到π/a然后在Floquet周期设置里写kx_param。只要保持单位一致、扫描范围覆盖想走的高对称路径就行。三角晶格的高对称路径通常是Γ(0,0) → M(0.5,0) → K(2/3,1/3) → Γ(0,0)这里的坐标是按倒格子基矢归一化的。在Comsol里实现时需要把这条路径拆成三段参数区间分别扫描。定义倒格矢基矢之后就可以将归一化坐标转换为物理波矢作为周期边界条件。3.3 特征频率求解器的驯服技巧在Comsol的特征频率研究中求解器默认会寻找一定数量的最低频模式。对光子晶体能带计算来说“所需模式数”至少设置成6到10个否则在低频区会漏掉模式能带图出现断带。一个很影响效率和成功率的小技巧是开启“在参数扫描中使用前一个解作为初始值”。这个功能能让特征值求解器在扫描波矢时沿着上一步的解附近寻找新解使模式追踪稳定得多。如果不用这个选项每个k点都是独立冷启动很容易在带交叉区域发生模式跳变。我在计算中发现特征频率搜索方式最好选择“指定搜索基准频率”把它设定在目标带隙附近。比如预估带隙在0.3归一化频率c/a附近就搜索0.25到0.4之间的模式。这样求解器会集中在感兴趣的频段里寻找避免花费大量算力去算低频的平庸模。用“参数化扫描”跑完整个路径后可以添加一维绘图组用“全局”绘制特征频率对扫描参数的曲线。在这张图上能清楚看到两条本来简并的能带在K点附近劈开形成带隙。到了这一步拓扑光子晶体仿真工作就算开了个好头。4. 拓扑边界态的完整建模流程与单向性验证4.1 超胞构造如何把两个拓扑相放进一个模型计算边界态的时候晶胞从原来的单个原胞变成了一个包含拓扑界面的一维超胞。这个超胞在传播方向设为x方向上仍然具有周期性因此x方向两侧要加Floquet周期边界而在垂直于界面的y方向结构是有限的上下边界不能再加周期边界要换成开放边界或吸收边界。具体几何我一般这样搭先建一个高度为H的长方形里面按照三角晶格排列圆孔上半部分的晶胞采用结构A下半部分采用结构B。所谓结构A和结构B就是最近邻两个孔半径的分配不同。两个部分拼接的中间行就是拓扑界面。界面取的是之字形边界因为大量文献已经验证之字形界面比扶手椅边界更容易出现清晰的谷锁定边界态。超胞的高度要足够大通常每侧至少5到10个周期。如果高度太小上下的开放边界会影响界面态的场分布数值上会出现虚的频率漂移如果高度太大计算量随之猛增。平衡经验是每侧6个周期既能保证界面态场在边界处衰减到可忽略程度又不会让网格数量失控。y方向两侧我用散射边界条件SBC而不是PML。原因是特征频率求解器与PML的兼容性不如频域响应求解器稳定。在特征值问题中PML会造成非物理的复特征值干扰对真实模式的判断。散射边界条件虽然不是一个完美吸收体但对于被强局域在界面的谷霍尔边界态来说场到达边界时已经衰减得足够小寄生反射基本可以忽略。4.2 边界态色散从带隙里捞出一条孤立的线把超胞建好后x方向周期边界仍然采用Floquet周期条件扫描kx从布里渊区中心到边界。特征频率扫描得到的色散曲线上除了上下两个半平面的体态模式之外会在带隙中出现一条孤立的色散分支这就是我们寻找的拓扑边界态。怎么判断这条分支是边界态而不是某个体态模式的衍射分支最实用的判据是看场分布。在Comsol结果中选中带隙里的特征模式绘制电场模分布。如果是边界态能量会紧紧局域在超胞中间的界面上左右两侧几乎看不到明显的传播场。体态模式则会铺满整个超胞。另一个判据是观察色散曲线的走向。拓扑边界态的色散在带隙内通常单调跨过整个带隙。如果你扫出的色散曲线只在带隙的某个边缘附近徘徊或者中途折返多半是模式识别出了问题比如把体态分支误当成边界态。此时需要调整超胞高度或者检查几何拼接处两个相的参数是否确实相反。多验证一步把两个相交换上下位置再算一次边界态色散应该出现在同一个带隙窗口只是态的空间分布位置仍然在界面上而某个谷的传播方向会反转。这一步对于确认边界态的拓扑起源比单纯看色散形状更有说服力。4.3 场演化与拐弯无反射验证单向传输的完整闭环计算出色散曲线之后就该做动态验证了。我通常的做法是直接构建一个有限尺寸的真实结构一个长方形的平板上半和下半分别放置两种拓扑结构中间构造一条界面。在界面左侧放一个点源或者线源频率设为边界态色散上对应的频率用频域求解。此时最关键的现象是激励源放在界面上时能量会沿界面定向传播而不会扩散进两侧的体材料。这是边界态的“空间局域性”的直接体现。为验证拐弯无反射我会再建一个带L型弯角的界面模型。拓扑边界态沿x方向传播到一个90度弯头后应该沿垂直方向继续传播而几乎不产生背向反射。在弯角两侧分别放置场监视点对比输入和输出的振幅在真正保真度高的参数范围内透射率可以达到95%以上。如果需要更详细的单向性指标可以在界面一端用单频点源激励然后检查界面相反方向上的场强计算“隔离比”或“方向性比”。谷霍尔拓扑边界态的方向性并不天然地意味着高隔离比因为它不是绝对单向而是谷锁定如果想要高隔离需要同时考虑偏振态的匹配问题。这一点在阅读文献时要格外留意很多论文里所说的“单向传输”其实指的是背向散射抑制不是传统隔离器的非互易单向性。5. 我在真实仿真中踩过的几个大坑5.1 模式跳支和分支断裂特征频率求解器反常识的地方第一次扫能带时我得到了一条断成几截的曲线起初以为是几何设置错了折腾了一整天才意识到是特征值求解器在k点之间“串台”了。具体表现为某些k点选中的是第5个模式换到邻近k点时求解器自动选了第6个模式导致色散曲线看起来像有一条带突然消失。后来解决的办法有两步。第一步是在参数化扫描设置里明确开启“求解器基于前一个解继续”给求解器一个追踪模式的记忆。第二步是把所需模式数从“刚好够”提升到比目标频段内实际模式数多2到3个让求解器有余量覆盖模式交叉过渡区再在结果中排除多余的平庸模式。还有一个经验不要一上来就用超细网格做参数扫描。先用较粗网格把整个能带趋势扫出来确认模式数量和对称性之后再做全局较细网格的单点验证。粗网格下能带偏移很常见但在趋势判断上仍是性价比极高的工具。5.2 网格尺寸对带隙频率的严重影响光子晶体能带计算结果对网格的依赖度远高于普通微波器件。原因在于圆孔边界处的电场集中效应很强特别是带隙边缘的模式场在介质和空气交界处有尖锐的间断面。如果网格划得不够细计算出的本征频率会系统性地抬高带隙宽度也会被压窄。我的实践经验是圆孔边界周围至少要有10到12个网格节点全局最大单元尺寸应小于a/8。在参数扫描阶段可以用a/5但最终确认带隙的模型必须细化到a/10。另一种更省算力但效果好的做法是在圆孔边界上加“边界层网格”控制法向第一层厚度在a/50量级可以显著提高场间断面的描述精度。如果发现能带频率怎么扫都停在某个数值附近不动多半不是物理问题而是网格锁住了解的灵活性。这个时候尝试把网格继续细分如果频率几乎不变说明该处的物理已经收敛如果还有明显变化说明之前的结果只是网格依赖的伪收敛。5.3 超胞边界上的“寄生模”陷阱计算边界态时超胞在竖直方向不是周期的。因此除了拓扑界面上的边界态之外整个有限结构的上下表面也会支持表面波或平板波导模式。这些模式的特征频率如果落入目标带隙会干扰边界态的识别。最典型的现象是在色散图上看到带隙中出现不止一条孤立的色散分支其中一条很强地局域在超胞上下边界附近。这种模式在实验里并不存在因为实际结构的上下边界是和其他结构相连的属于超胞建模带来的伪影。解决方式也比较直接增加超胞两侧的材料层数让伪表面波和目标界面态在空间上分开或者在结果筛选时只保留场主要集中在超胞中部的模式。实在分不开的时候还可以在超胞上下表面也换成PML边界再算一轮。如果是真实边界态它的频率和色散不会随表面处理方式变化太多伪模式则会发生明显移动。5.4 带隙重叠问题只扫一个相永远不够拓扑边界态存在的必要条件是两种结构在同一个频率窗口内都有带隙。这意味着不能只计算一个相而是要分别计算上半部分结构和下半部分结构各自的体态能带将它们叠在一起对比。在调整参数时如果我改动了r1和r2就必须同步重新计算两个相的带隙并检查重叠窗口。很多时候两个相的带隙都打开了但一个在归一化频率0.30到0.35之间另一个却在0.32到0.36之间重叠区域只剩窄窄的一条。边界态色散虽然还存在但可用频率范围大幅收窄后续的宽带传输测试就会失败。一个相对高效的调参流程是先固定一个相差r1/r2的比值扫描r1r2的平均值再固定平均值扫描r1/r2比值。这样能在两轮二维参数扫描中快速锁定既保证带隙宽度、又保证重叠范围较大的几何参数组合。6. 从能带到实用器件把算好的边界态变成能用的设计6.1 器件化视角下的拓扑保护并不是万能药跑到这里很多初学者会有一个误区觉得拓扑边界态有了就可以随便做任意形状的波导还能保持完美传输。事实并非如此。拓扑保护主要是对无序和特定类型的缺陷免疫而不是对所有几何突变都免疫。在工程设计中弯头的曲率半径、界面两侧晶格的对准方式、填充因子变化都会影响最终性能。我自己的经验是端口处的阻抗匹配往往比拓扑边界本身更决定整体传输性能。一个拓扑保护再好、边界态色散再漂亮的波导如果端口模式失配实际器件也是白搭。所以设计时一定要同时看模式轮廓、有效折射率以及传播方向的群速度确保输入波导的模式和拓扑边界态之间具备足够的耦合系数。在做弯头设计时也不建议把弯角设计成尖锐的90度即便拓扑边界态能够承受这样的拐角。把拐角做一点圆弧过渡可以避免高动量处的额外模式耦合让传输带宽更宽、插损更低。6.2 由这个案例延伸出来的仿真方向做完基础验证后这套方法可以很方便地平移去研究很多相关题目把线性边界态推广到非线性材料观察功率依赖的传输切换在手性介质或磁光材料里寻找真正的非互易单向传输利用拓扑界面态设计慢光波导或者把二维结果推广到三维平板光子晶体研究面内传播和垂直方向限制之间的耦合。另外如果在Comsol里已经熟练掌握了特征频率扫描和参数化扫描的搭配转向声子晶体、等离激元晶体等周期性结构也只是换一个物理接口的事。建模思路、模式追踪以及边界态判断的流程几乎一模一样。最后分享一个我自己一直沿用的工作习惯每调整一次结构参数就把带隙重叠范围、边界态色散、网格数量、扫描耗时记录下来。这个看似不酷的习惯在经历了几十组参数对比后会帮你建立起对问题空间的直觉。等到正式投文章或者报项目指标的时候手头那几张系统化的数据表会比孤立的几条能带曲线有力得多。
返回列表