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

资讯详情

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

COMSOL超表面仿真:从连续谱束缚态到拓扑优化的全流程解析

COMSOL超表面仿真:从连续谱束缚态到拓扑优化的全流程解析 1. 从“不可能”说起连续谱束缚态到底是什么1.1 一个看似矛盾的名词第一次听到“连续谱束缚态”这个名字我第一反应是“这不是自相矛盾吗”。束缚态的能量应该落在离散能级上连续谱里的模式应该能向远场辐射能量怎么会存在一个既能待在连续谱里、又不往外辐射的模式但BICBound state in the continuum连续谱束缚态就是这样一个反直觉的存在它处在辐射连续谱之内却完全被束缚在结构里Q值理论上趋于无穷。在光学超表面里这个“不可能”变得非常有价值。超表面要靠共振来调控光的振幅、相位和偏振但一般共振模式都会有辐射损耗Q值做不高。BIC提供了一条路通过对称性保护或其他机制抑制某个模式向远场的耦合让它既不往外漏光又和入射光有很强的近场相互作用。把BIC微扰成准BICquasi-BIC就能得到极高的Q值同时保留对外部光的响应能力。我用COMSOL做超表面仿真最常被问到的问题就是“BIC在COMSOL里到底怎么设怎么知道我算出来的那个模式就是BIC”。这个问题比想象中复杂因为BIC不是一个独立的物理场接口而是一种模式行为你得通过特征频率分析、远场判断和参数扫描综合去识别它。1.2 超表面里的BIC常见的实现结构理论上BIC可以分为几类对称性保护BIC、Friedrich-Wintgen BIC、Fabry-Pérot BIC等。但在超表面仿真里绝大多数工作集中在对称性保护BIC上。举一个最经典的例子椭圆硅纳米柱阵列。当纳米柱的截面是正圆时结构具有C₄对称性此时存在一个模式其远场辐射分量因为对称性匹配条件而被禁止这就是对称性保护BIC。当你把圆形扰动成椭圆对称性被破坏BIC就变成了准BICQ值从无穷大降到有限值但依然可以高达几千甚至上万。实际建模时你只需要在COMSOL里画一个单元胞unit cell设定好周期性边界条件然后在特征频率分析里扫面几何参数就行。材料方面1550 nm通信波段最常用的是晶体硅折射率实部约3.45损耗可以忽略不计衬底用二氧化硅折射率1.45左右。结构高度通常选在200 nm到500 nm之间周期在800 nm到1200 nm之间具体取决于目标工作波长。1.3 为什么全流程仿真要先把BIC讲清楚你在做拓扑优化的时候如果对BIC的物理机制没有清晰的概念很难设计出合理的优化目标。比如拓扑优化的目标函数可以是“使目标波长的Q值最大化”也可以是“使目标波长处透射率达到某个值”还可以是“在保持高Q值的同时实现特定的相位覆盖”。这些目标本质上都在操纵模式与连续谱的耦合强度——也就是在操纵BIC与准BIC的行为。我在做的这个全流程简单来说就是先用BIC结构确定物理机制和参数基线再用拓扑优化在参数空间中寻找更优的结构。这两个阶段并不是割裂的拓扑优化的初始条件和约束很多来自BIC分析阶段的结论。理解了BIC你就知道为什么优化出来的结构往往不是简单几何体而是一些看起来“不规则”的形状——那正是模式耦合被精确调控的体现。2. 在COMSOL里把BIC“算出来”模型搭建与关键设置2.1 几何与材料从一堆论文数据到可复现的模型第一步永远是几何建模。在COMSOL中二维超表面的单元胞建模有三种常见方式全三维建模、二维近似建模、以及“二维周期结构本征模式分析”的组合。BIC分析建议直接做三维因为二维近似会丢掉很多实际辐射通道的信息。以一个椭圆纳米柱阵列为例我在COMSOL里的具体做法是新建一个三维模型选择“电磁波频域”接口研究类型选“特征频率”。几何上单元胞X和Y方向尺寸为P比如1000 nmZ方向包含三层空气间隙顶部空气、纳米柱层、衬底层。纳米柱高度设为H比如400 nm椭圆长轴a和短轴b分别设定为参数方便后续做参数扫描。材料定义有两点需要特别注意。第一对于BIC分析建议先把材料的损耗设成零或者至少把折射率虚部设得非常小。原因在于BIC的Q值无穷大是辐射意义上的无穷大如果材料本身有吸收损耗Q值会被材料损耗上限卡住干扰你对“BIC特性”的判断。第二衬底厚度不能太薄否则能量会漏到边界上最好配合PML来吸收向下传播的波。2.2 边界条件与激励端口、周期性和PML的配置逻辑BIC分析的核心在边界条件的正确设置。水平方向用周期性边界条件Periodic Condition这个设置相当于把单元胞在X和Y方向无限延拓模拟真实的阵列环境。Z方向需要在顶部和底部设置完美匹配层PML防止反射干扰模式分析。很多人在这里会犯一个错误用PML而不是端口Port来做特征频率分析。实际上BIC分析最好用PML包裹整个模拟区域然后用特征频率求解器找模式。如果你的研究类型是“频域”而不是“特征频率”那就需要通过端口设置Floquet周期条件再扫频看透射谱和吸收谱中的共振峰Q值可以通过峰的半高宽FWHM换算。这里顺带说一个判断的小技巧完整的BIC是所谓的“暗态”它不能被入射平面波直接激发。所以当你用频域分析时如果一个模式的Q值极高但在透射谱里看不到明显的共振谷它很可能就是BIC。而准BIC不同它被激发后会在透射谱里形成一个非常尖锐的Fano线型。2.3 特征频率分析找到那个Q值“异常高”的模式在COMSOL中求解特征频率你会发现特征频率是复数——实部是模式的振荡频率虚部的绝对值代表衰减速率。辐射Q值可以用公式Q_rad Re(f) / (2|Im(f)|)来计算。一个真正的BIC在理想无损耗条件下Im(f)应该趋近于零Q_rad趋近于无穷。但在数值计算中Q_rad会受到网格离散化、PML反射等因素的影响最终得到的是一个有限但很大的值。实际操作中我建议分两步走。先做一个粗网格的特征频率扫描把模式“找出来”。这一步关键是设置好搜索频率范围比如目标波长1550 nm对应频率约193.5 THz就在180 THz到210 THz之间搜索。搜索区域设得太大会引入大量无关模式设得太小又容易漏掉目标模式。找到候选模式后再做网格细化验证。把网格从粗网格细化到细网格通常单元数增加4倍以上重新计算这个模式的Q值。如果随网格细化Q值持续上升、没有收敛趋势说明它确实在向真BIC靠近如果Q值基本不变那它可能只是一个普通的高Q共振模式。这里有个非常关键的实操经验对称性保护BIC的出现强依赖于结构对称性。你的建模过程中不能有任何数值不对称——哪怕是一个微小的网格不对称都会在特征频率分析中被放大导致本应消失的辐射通道被“虚假激活”。这一点在后面拓扑优化阶段会变成一个巨大挑战我先留个伏笔。2.4 从远场图判断“是不是真BIC”特征频率分析给出了复频率但还不能百分之百确定模式就是BIC。更直观的验证办法是分析远场图在COMSOL中你可以通过派生值Derived Values提取模式的电磁场分布然后做近远场变换Near-to-Far-Field Transformation写出远场辐射图。真正的BIC其远场辐射图应该出现“零辐射方向”——某个特定的角度方向上辐射强度接近于零这对应着辐射通道被对称性禁止。准BIC则在原来零点的方向上出现强度很弱的辐射瓣。我在给学生演示的时候经常用一个比喻BIC就像一个完美的哑巴它在房间里存在但从不发声准BIC是嗓子被捏住一点的哑巴能发出一点微弱的声音但声音小得可怜。这个“声音”的大小就是远场辐射强度在仿真里对应远场图中的瓣的高度。远场判断还会暴露一个容易被忽视的问题PML与模式之间的耦合。如果PML厚度不够或者网格太粗PML会产生寄生反射让远场图出现虚假的辐射峰导致你把准BIC的判断做得偏高或偏低。我一般的做法是PML厚度至少取工作波长的1到2倍PML内的网格扫描数设为3以上然后通过加厚PML观察Q值变化来确认PML本身没有引入额外误差。3. 为什么要从BIC走向拓扑优化3.1 手调参数的天花板BIC分析做完以后你手里有了一个物理机制清晰的基准结构。但问题来了这个结构是最优的吗凭经验调参你最多调两到三个参数比如椭圆长短轴比例、周期和厚度。要同时实现高Q、特定信道波长、特定偏振响应甚至多波长工作手调参数几乎不可能覆盖所有可能性。我自己之前做过一个多波长复用超表面的项目要求在1310 nm和1550 nm两个波长同时实现高Q共振。用参数扫描的笨办法两个波长之间会互相干扰一个波长Q值上去了另一个波长就掉下来。折腾了半个月始终找不到一个令人满意的参数组合。后来切到拓扑优化目标函数里同时写入两个波长的Q值加权和优化器在一夜之间就找到了参数扫描完全没触及到的结构。3.2 拓扑优化的基本逻辑拓扑优化和传统的形状优化、尺寸优化思路完全不同。形状优化是“在一个确定的外形里微调边界”拓扑优化是“在给定的设计区域内自由分配材料”允许结构发生拓扑上的改变包括洞的出现、材料分支的分裂与融合。在COMSOL里做拓扑优化我用的核心逻辑是密度法SIMP方法。每个网格单元被赋予一个设计变量ρ取值在0到1之间代表“材料密度”。ρ1表示该处是纳米材料比如硅ρ0表示该处是空气或衬底材料。优化过程就是反复迭代这个密度场使目标函数最小化。这里要提醒密度法求出的解往往存在中间密度灰度区域就是ρ取0.3、0.5这种值它物理上不对应任何真实材料但在数学上是优化可行域的一部分。你需要通过投影函数如Heaviside投影把灰度压向两端让最终结构尽可能二值化便于实际加工。3.3 在COMSOL中实现拓扑优化的可行路径关于COMSOL怎么做拓扑优化很多人有个误区觉得必须在COMSOL内置的优化模块里完成所有事情。其实COMSOL的拓扑优化至少有三条路径我分别说一下优缺点。路径一是COMSOL内置的“优化模块密度模型法”把设计变量定义在域上用密度模型接口配合优化求解器求解。优点是全流程在COMSOL里完成不用切换软件缺点是自定义性不够灵活复杂的约束条件如最小线宽约束实现起来很麻烦。路径二是COMSOL MATLAB LiveLink联合仿真。你可以在COMSOL里建立完整的物理模型导出一部分几何和网格信息然后在MATLAB里写敏度分析逻辑和优化算法如MMA通过LiveLink反复调用COMSOL求解偏微分方程。优点是算法控制力强适合科研和复杂问题缺点是需要同时掌握COMSOL和MATLAB还要解决两个软件之间的数据传输开销。路径三是把COMSOL只当作正向求解器用Python等外部程序控制仿真和迭代。这个我就不推荐了因为COMSOL的Java API虽然可以调用但在优化迭代中频繁启动求解器效率极低。我个人的经验是如果只是验证想法用路径一最快如果要做严肃的研究工作路径二是主流也是很多论文里实际上采用的配置。4. 全流程跑通从BIC结构到拓扑优化超表面的实操步骤4.1 第一步基线BIC模型的网格收敛性测试在开始拓扑优化之前必须先把BIC基线模的可靠性确认到位否则后面每一步都是在“错误的地基上盖楼”。我习惯的流程是这样在COMSOL中把网格从粗到细分成四档比如最大单元边长分别为λ/8、λ/12、λ/16、λ/24分别计算BIC模式的Q值画出一条Q值随网格密度变化的曲线。当相邻两档网格的Q值变化小于2%时认为网格收敛。然后把这一档网格作为拓扑优化的基线网格。这个测试还会告诉你一个信息拓扑优化的设计区域需要多大的网格分辨率才够。BIC模式往往有很强的近场局域效应能量集中在结构表面或者缝隙里。如果网格太粗这些局域增强会被数值耗散抹平优化器利用不了这些物理现象最后优化出的结构往往是平庸的。4.2 第二步目标函数与约束条件的定义设计目标函数的思路应该源于BIC分析阶段你对物理机制的认知。举个例子如果你希望优化出一个在1550 nm处Q值尽可能高的结构目标函数可以写成最小化 F -lg(Q_eff)其中Q_eff f₀ / Δf_FWHM。这里的Q_eff是等效品质因子对应透射谱中的共振半高宽。取对数是为了让优化器对小幅度的Q值变化更敏感否则Q值从1万到10万的巨大数值跨度会让梯度信息被淹没。如果你要设计的是多波长复用超表面目标函数可以写成两个目标波长的加权Q值之和的倒数注意权重需要根据实际需求设置。我在那个1310/1550双波长项目中权重设为1:1因为两个波长同等重要。约束条件方面最常见的是体积约束设计区域中“硅材料”的体积分数不超过某个上限比如30%。这个约束的目的是保证最终结构与实际加工的物理可实现性——一个体积分数过高的结构在刻蚀时容易因为应力过大导致纳米柱倒塌。此外还要考虑加工约束最小特征尺寸。如果优化结果中有直径只有20 nm的细柱工艺上根本加工不出来。COMSOL的密度模型接口里可以直接加滤波半径变量等价于限制最小特征尺寸。滤波半径建议取到加工能力允许的最小特征尺寸的一半。4.3 第三步伴随敏度分析与迭代优化拓扑优化依赖于梯度信息用于梯度计算的最高效方法是伴随方法adjoint method。它的核心思想非常漂亮常规做法下你要计算每个设计变量的变化对目标函数的影响有多少个设计变量就要解多少次方程计算代价极高。伴随方法另辟蹊径只额外解一次伴随方程就能得到目标函数对所有设计变量的梯度。这相当于用一次求解换取成千上万个变量的梯度信息。在COMSOL中密度模型接口配合内置的灵敏度求解器会自动处理伴随求解过程。关键设置集中在优化求解器的参数上。我实际使用的优化参数配置如下移动界限move limit0.05到0.2。移动界限太小收敛慢太大容易振荡。优化方法GCMMA全局收敛移动渐近线法这是拓扑优化领域最常用的算法之一对非凸问题的处理能力比MMA强。最大迭代次数200次起步我通常设到500次用收敛曲线判断是否提前停止。滤波半径初始设为中心单元尺寸的1.5倍随着迭代进行可以逐渐减小。这里有一个重要的实操提醒拓扑优化一开始不要直接跑到最终分辨率上。我的习惯是先在一个较粗的网格上跑50到100次迭代把结构的大致拓扑形态确定下来哪里该有材料哪里该是空洞然后用插值把设计变量映射到更细的网格上继续优化。这样既节省了前期计算时间也避免了优化初期因为自由度太大导致的振荡不收敛问题。4.4 第四步拓扑优化结果的栅格化与验证优化迭代结束时你会得到一个密度分布场里面充满了0到1之间的灰度值。直接把灰度结构拿去做加工是不现实的必须做“栅格化”处理。栅格化的过程就像把照片转成黑白图选择一个阈值一般0.5左右密度大于阈值的单元变成材料低于阈值的变成空气。但简单阈值化有一个问题——你可能会断开重要的材料连接或者把细小的材料桥接起来导致结构的电磁特性和优化结果截然不同。我建议的流程是先做一次阈值化然后把二值化的结构重新在COMSOL里建模用导入的几何或直接以离散介电常数分布的形式定义材料属性重新做频域分析计算透射谱和Q值。把最终Q值和优化目标Q值对比如果差别在10%以内说明优化过程足够稳健如果差别很大通常需要回头调整滤波半径或投影强度再重新优化。这一步验证非常关键因为你在拓扑优化中解的是“灰度近似物理”的问题而最终加工出来的是“二值真实物理”的结构两套物理模型之间天然存在差异。5. 必须避开的坑网格、模式追踪与数值伪像5.1 模式追踪难题优化迭代中BIC模式“跑掉了”拓扑优化中最让人抓狂的问题是优化迭代过程中模式漂移。你的目标函数需要提取1550 nm处某一个特定模式的Q值但随着结构逐渐改变这个模式的频率会移动、模式轮廓会变化甚至在某个迭代步突然消失或者与另一个模式发生杂化。解决办法是设置模式追踪。修改目标函数加入频率约束项比如强制模式频率保持在目标波长附近如1550 nm ± 20 nm范围内。此外每次迭代结束时要检查模式的电磁场分布形状看是否和上一迭代相似——这就是所谓“模式重叠积分”追踪。在COMSOL里可以用积分算子在设计域内计算当前模式与参考模式的场重叠程度把它作为权重乘进目标函数。我用过的另一个简便办法把参考模式定义为BIC阶段那个高Q模式的电磁场分布然后在优化目标函数中加入一个惩罚项当当前模式与参考模式的重叠度低于某阈值时惩罚值急剧增大。这能把优化器“拉”回到目标模式附近防止模式切换。5.2 网格相关性与局部极小值为什么同样的设置两次运行结果不同拓扑优化是强烈非凸的问题结果依赖于初始条件。两次运行如果初始结构不同很可能收敛到完全不同的局部极小值。这不是bug而是问题本身的数学性质。为了应对这个问题我的做法是至少做三到五次随机初始结构的优化运行然后从所有结果中选出目标函数最优的一个。每个运行之间的初始结构可以通过给密度场加随机扰动来生成。所谓“随机”要控制扰动幅度一般建议均匀随机扰动在±0.05左右避免初始结构物理上失真导致优化器找不到可行路径。网格相关性和这个也有关系。同样的优化设置网格加密之后你可能会得到一个完全不同的拓扑形态。这是SIMP方法的已知局限。为了减少网格相关性需要合理设置滤波半径让设计变量的空间变化尺度维持在滤波半径以上。滤波器本质上起“模糊”作用保证结构特征尺寸不会小于某个物理上合理的极限。5.3 材料参数与损耗Q值优化中那些“虚部”陷阱在优化高Q结构时材料损耗设置不当是很多结果“看起来很美、实际做不出来”的原因之一。材料折射率虚部消光系数k决定了材料的吸收损耗而吸收损耗会给Q值设置一个绝对上限。具体计算很简单材料吸收Q值的近似公式是Q_abs ≈ n/(2k)其中n是折射率实部k是折射率虚部。拿1550 nm波段的晶体硅来说n3.45低掺杂工艺下k可以低到1×10⁻⁴到1×10⁻⁵量级对应Q_abs大约在1.7万到17万之间。如果你在仿真里把k设为零优化器可能“肆无忌惮”地设计出Q理论值高达百万的准BIC结构但它实际的Q值受限于材料吸收的上限你得到的高Q结构则根本达不到这个量级。我的建议是在第一轮优化中先假设无损耗k0目标是找到物理机制和结构拓扑拿到初步结果后把实际材料的k值加回去重新验证Q值。如果加入损耗后Q值下降不到一个量级说明优化结果对材料损耗不敏感结构设计是稳健的如果Q值骤降说明你优化出的结构实际上是在“压榨辐射损耗”一旦材料损耗引入这个优势就被掩盖了需要重新考虑优化目标。5.4 频域扫描的“假峰”如何验证真共振最后再提醒一个频域验证阶段的常见坑。在频域扫描透射率或吸收率时如果频率步长设得过大可能错过尖峰或者把数值噪声误认为共振峰。对于Q值一万左右的准BIC共振峰的线宽大约1550/10000 ≈ 0.155 nm换算成频率约0.02 THz。这意味着如果你想准确捕获共振峰形状频点间隔必须不大于0.006 THz左右在COMSOL里要用自适应扫频如设定目标频率附近的细化区域。对付“假峰”我常用的方法是比较不同扫频精度下的结果先把频率步长缩小一个数量级看峰的位置和深度是否基本不变。如果峰的深度和位置都稳定才能确认它是真实共振。结语前的最后一件事全流程的完整闭环从BIC的物理识别到拓扑优化的结构生成再到最终的频域验证整个流程我强调的核心就是一个“闭环思维”。BIC分析给了你物理机制的直觉拓扑优化把这个直觉转化为一个可加工的结构频域验证又回过头检验你对BIC的理解是否正确。这个流程走下来我自己最深的体会是不要试图在拓扑优化开始之前就预设一个“最优结构”的轮廓。优化器能探索到人类直觉之外的参数组合但它们探索的方向完全取决于你定义的目标函数和约束条件。换句话说你对物理的理解——尤其是对BIC这类极限模式的理解——才是整个优化过程中最有价值的部分而不是那套数学算法本身。有一次我拿到一个拓扑优化结果看起来像一只形态怪异的“小岛”无论如何也想不明白为什么它会这样设计。后来回头分析近场分布才发现优化器在结构边缘精确构造了一组相位相消的局部模式使得特定方向的辐射被完全压制相当于“数值地发现”了一种新的BIC变体。这种经历让我越来越相信拓扑优化和BIC分析放在一起做全流程不只是为了设计一个具体器件它本身就构成了一种发现新物理机制的方法。从这个角度说COMSOL在这里不仅仅是一个仿真工具更像是我们探索光学模式的“显微镜”。
返回列表