基于Comsol的双波段红外吸收器仿真:从结构设计到参数优化
发布时间:2026/9/23 3:23:06 锦皓数字建站

做红外吸收器仿真说实话一开始并不是冲着论文去的纯粹是项目里那句“特殊用途”四个字把需求定死了同一片结构上既要在3um附近锁住一个传感通道又要在8-10um这个长波红外区间保持稳定响应。3um是什么概念那是中红外分子指纹区的入口很多气体分子的特征吸收带就落在这附近8-10um则是长波红外大气窗口的核心区热成像、红外测温、夜视系统基本都盯着这个波段干活。这两个波段中间隔了将近一个数量级单波段吸收器好办网上案例一大把真正让我折腾了小半个月的是怎么把两个吸收峰塞进同一个结构里还能让它们彼此不“打架”。这篇文章不打算做那种“照着教程点一遍”的流水账而是把我从Comsol电磁场仿真建模、结构设计到参数优化、踩坑重来的完整过程摊开讲。3um和8-10um双波段红外吸收器这个题目看起来只是换了个结构、多算几个频点实际动手时你会发现问题全藏在材料色散、边界条件、网格收敛和共振模式耦合这些细节里。不管你是刚装好Comsol准备做第一个电磁仿真案例还是已经做过超表面吸收器想拓展多波段设计这篇内容应该都能给你省下不少弯路。1. 为什么盯上3um和8-10um做一个双波段吸收器的初衷1.1 两个波段“各吃各的红利”先说3um。这个波段在气体传感领域里地位很特殊像甲烷、一氧化碳、二氧化碳这些典型分子它们的基频伸缩振动吸收峰有不少落在2.7um到4.2um之间3um附近正好是传感器设计时绕不开的“指纹区”。如果你在做一个红外气体探测器前端光学结构对3um有选择性吸收就意味着可以把目标气体浓度的变化转成探测器信号强度的变化。顺带一提3um附近也是很多有机分子O-H、C-H键的吸收位置做生化检测、大气环境监测同样用得上。再看8-10um。这个区间属于标准的长波红外大气窗口跟中波红外相比长波波段在潮湿、多尘环境里的传输衰减更小所以军用的热像仪、民用的红外测温设备、甚至无人机夜视载荷工作波段基本落在8-14um这个窗口内。你要做红外隐身控制、辐射制冷、或热光伏器件也逃不开对8-10um发射率/吸收率的精细调控。这个窗口意味着在这个波段吸收率越高热辐射调控能力越强反过来在某些场景下吸收率低了正好用来降低目标的热特征。所以“3um8-10um”这个组合本质上是把“分子检测”和“热辐射调控”两件事叠在了同一个器件上。单独做其中一个波段现有文献里已经非常成熟但做成双波段一共振结构滤波、传感、热像兼容应用想象空间一下就打开了。这也是我接这个项目的第一反应这不是一道纯电磁题是一道系统集成题。1.2 “特殊用途”到底落在哪项目名里“特殊用途”三个字不是修饰是真的有一个具体场景卡在那里一套便携式红外检测模块既要能通过3um通道做气体浓度判断又要用8-10um通道做远距离热像瞄准与测温。两块功能原本需要两套光学元件如果能在同一个吸收器上实现双波段兼容系统的体积、重量、校准复杂度都能压下来。再往深处想这个结构反过来用它还能当双波段热发射器——通过在两个窗口内设计高发射峰就能让器件辐射特定波段的热信号这在红外识别、光谱标定里都有实际价值。当然双波段也会带来一个别人常问的问题为什么不用两块单波段吸收器拼在一起答案很简单拼接方案在工程上会遇到口径浪费、边界衍射、以及两套结构互相遮挡的问题。真正好用的方案是把两个谐振单元放进同一个周期单元里让它们各自吸收各自的光空间上共用一个金属底反射层工艺上也可以一次光刻完成。这种设计才是“特殊用途”带来的真实技术需求。1.3 为什么选Comsol而不是其他仿真软件做这类微纳光学结构市面上也不是只有Comsol一家。FDTD类的软件算窄带光谱很快但边界条件、材料色散处理和参数化扫描的灵活性我始终觉得Comsol更顺手。尤其在电磁场仿真这个领域Comsol的“电磁波频域”物理场接口把入射源、周期边界、S参数提取这些东西都做成了图形化设置你不需要每次都手动改一大段脚本。再加上它本来就是多物理场平台后面如果要把“吸收光生热”、“热应力变形”这类耦合场景加进去Comsol可以直接延续同一套模型不用转格式。热词榜单里总有人搜“Comsol安装”、“Comsol案例”、“Comsol电磁场仿真”说明这软件的新用户还在持续涌入。我的建议是别一上来就啃用户手册直接拿一个带明确物理量的案例练手比如这次的双波段吸收器把端口、周期边界、S参数、参数化扫描这几个核心操作跑通Comsol的基本套路就掌握了一大半。2. 结构设计与建模从单元到物理场一步步搭起来2.1 吸收器结构选型嵌套式MDM单元双波段吸收器结构上最稳妥的起点是“金属-介质-金属”MDM三明治最底层是连续金属反射层中间是介质间隔层顶层是图案化的金属谐振单元。底层金属足够厚光就透不过去透射率T≈0顶层图案化金属与底层金属之间会激发强的局域等离激元共振和腔模共振入射光被强烈束缚在结构里吸收率自然高。但一个普通CDM结构通常只有一个强吸收峰要做到“3um8-10um”双峰就得在一个单元里放两种尺寸的谐振器。我采用的是嵌套式设计每个周期单元里放一个大的方环方环内部放一个小的十字。大尺寸方环的等效电感大、共振波长长用来覆盖8-10um小十字尺寸小、共振波长短负责3um附近。两者在空间上共用一个周期单元但共振模式不同互相干扰有限。底层统一铺一层150nm的金作为反射背板中间的介质间隔层选ZnS厚度作为后期优化变量。这个方案的好处是工艺友好。方环加十字其实是一个标准的单层光刻图形你用Lift-off就能做出来不需要双层套刻。仿真层面它也不需要额外引入复杂边界直接把单元设成周期边界就能反映大阵列行为。2.2 材料参数获取与配置做红外仿真材料参数比几何结构更影响可靠性。金在3um和8-10um两段的介电常数差别非常大不能直接用常数折射率往里填必须用带色散的数据。我一般从Johnson Christy的经典测量数据里取金的折射率和消光系数再把数据整理成波长-折射率表在Comsol材料节点里用“插值”方式导入。如果你懒得手动敲Comsol材料库里自带的“Au (Gold) - Johnson and Christy”也可以直接用实测下来与文献吻合度不错。介质层ZnS的红外性质相对稳定在3um附近折射率约2.2到10um也基本维持在2.15到2.25之间不太离谱。不过你如果换用SiO2就要小心了SiO2在8-9um附近存在明显的声子吸收带复折射率的虚部会抬升虽然这也能贡献吸收但会干扰你对“结构吸收”的判断。所以建议前期做物理机制分析时尽量选ZnS这类低损耗介质把可变因素压到最少。给个具体的材料参数配置思路金底层厚度150nm折射率用插值表电导率不需要单独设因为频域求解会从复折射率换算。ZnS介质层厚度初始取200nm折射率取2.2损耗正切设一个很小的值比如1e-4如果后面对不上再调。顶层金谐振器与底层同一种材料参数厚度统一设成50nm。2.3 物理场、周期边界与入射源设置模型直接用“电磁波频域”ewfd接口三维建模。几何上只建一个周期单元四周设一对“周期性条件”一个边界的激励端选“Floquet周期”指定入射波矢方向为沿z轴、电场沿x方向另一个对应边界选“周期”关联起来。顶部空气域上端加“端口”边界作为入射平面波源底部金属下方同样加一个端口用来检测透射。由于底层金属不透光底部端口算出来的S21基本是零但建议保留这么做是为了后续吸收率计算时公式完整。关于周期边界很多人会犯一个错误直接选“完美电导体/完美磁导体”组合来偷懒。如果入射光正好是正入射且偏振方向沿坐标轴这种简化成立但只要你后面想扫入射角或分析偏振特性就必须回到Floquet周期边界。我做第一版时图省事用了PEC/PMC对称面结果一看8-10um的峰位置跟文献总是错开几百纳米后来换成Floquet周期边界对上了。这个经验值得记下来对称边界只适合快速试算正式结果一律用周期边界。2.4 吸收率计算表达式与频域扫描范围吸收率的定义很简单A 1 - R - T。在Comsol里只要端口设置正确软件会自动生成S参数变量。我在“全局定义”里建一个变量表达式Abs 1 - abs(ewfd.S11)^2 - abs(ewfd.S21)^2式中ewfd.S11对应端口1的反射系数ewfd.S21对应端口2的透射系数。为什么用绝对值平方而不是直接取模因为S参数通常是复数功率反射率和透射率必须用模平方很多新手在这里直接看成实数算出来的吸收率乱七八糟。另外如果你只想看吸收损耗也可以直接用体损耗密度积分但用S参数更直观、对结构诊断也更方便。频域扫描范围我分成两段来做第一段2.8-3.5um步长0.01um第二段7.5-11um步长0.02um。为什么要分段扫描因为3um和10um之间的频率跨度太大如果放在一个从3um到11um的均匀扫描里频点数量爆炸到几千个求解时间成倍增加而且短波段的数据分辨率还不够。分段扫描窄谱带用细步长宽带用中等步长既保证峰位准确又控制计算量。3. 参数化扫描让两个吸收峰各就各位3.1 几何参数变量与扫描策略模型里关键参数一共四个周期P、大环外边长L1、小十字臂长L2、介质层厚度d。我初始值这样定P2.4umL11.6umL20.8umd200nm。这个初始值是根据经验拍的并不是所有结构都能同时出两个峰后面必须扫描。我的扫描策略不是一次性四参数全扫那样组合数太大容易爆炸。我遵循“先单变量、后双变量”的思路先固定其它参数分别扫L1和L2看哪几个候选值能激发出目标波段的吸收峰然后再扫d因为d对两个峰的移动方向有不同影响最后选最合理的组合做二维扫描确认。这样能把参数组合从几百个压缩到几十个。Comsol里的参数化扫描节点很好用你可以把扫描维度拖进去它会自动循环求解。我要提醒一点三维模型加参数化扫描每一步都是完整的一次频域计算运算量不小。如果模型比较大建议先把“网格细化”往回拉一档用较粗网格做趋势扫描锁定优值后再加细网格做精算。这是最省时间的策略没有之一。3.2 从单峰到双峰介质层厚度和大环尺寸调优第一轮扫描结果跟我预想的一样小十字单独就能在3.1um附近给出一个很深的吸收峰吸收率约0.93但大环在8-10um区间的表现很差只在9.4um附近有一个半高不宽的小峰吸收率勉强到0.55宽度也窄得可怜。这时候就需要查原因。我把电场分布调出来看发现大环在9um附近的电场主要集中在环臂边缘属于典型的局域等离激元共振但底部MDM腔没有参与进来吸收通道单一所以带宽窄。怎么把底部腔拉进来两个办法一是调整d让介质腔的Fabry-Perot模式正好落在目标波段二是把大环改成“方环中央金属块”的组合等效于一个短单极子天线更容易把能量耦合到腔里。我先后扫了d150nm到350nm步长20nm。结果很有意思d250nm附近8-10um波段的吸收峰宽度明显增加中心频率从9um左右移向9.6um且吸收率提到了0.82同时3um峰只是从3.1um微移到3.0um影响不大。这说明d是调谐双峰平衡的关键参数它同时改变两个共振的相位条件但灵敏度不同。最终我选了d260nm让长波峰的峰值和宽度都处在较佳区间。3.3 优选参数与最终吸收光谱结合两轮扫描最终锁定一组参数参数数值周期P2.4um大环外边长L11.7um环臂宽w1200nm小十字臂长L20.85um十字臂宽w2120nm介质层厚度d260nm顶层Au厚度50nm底层Au厚度150nm用这组参数做最终仿真3um处吸收峰出现在3.02um峰值吸收率0.948-10um波段在9.5um附近出现一个宽峰峰值吸收率0.86并且8.5um到10.2um范围内吸收率都保持在0.7以上。3um峰的半高宽大约0.15um对于传感应用来说这个选择性足够长波峰宽度约1.7um正好满足热像波段“不能太窄”的指标。这里有一个细节值得说明我这个结构里3um峰和8-10um峰并不是完全独立。扫参数时能看到当长波峰调到极值时3um峰的峰值会有小幅度波动大约0.02说明两个模式之间存在弱耦合。这种耦合在超表面单元里非常普遍你不可能做到完全无耦合并让两个峰独立移动只要耦合带来的漂移控制在可接受范围内设计就是成立的。4. 结果的物理机制解读电场分布告诉你谁在吸收4.1 3um峰来自哪里光看吸收光谱看不出来物理机制必须看场分布。我把频率设为对应3.02um的位置在顶层谐振器平面剖电场幅值分布能看到能量大部分集中在小十字的两条臂端部以及小十字与大环之间的窄间隙里。这是典型的局域表面等离激元共振可以理解为小十字等效为一个个偶极天线在3um波段被入射电场驱动电荷在两端来回振荡能量以焦耳热形式耗散在金属里。这里有一个关键参数小十字臂长L2从0.7um扫到1.0um的过程中3um峰位从2.75um红移到3.3um接近线性。这说明3um峰的位置主要由小十字的整体尺寸直接决定。如果你想单独把3um峰调到别的分子吸收带上优先改L2其它参数的影响力要弱很多。4.2 8-10um峰不是单一共振8-10um那个宽峰场分布看起来跟3um完全不同。在9.5um处电场最强的位置出现在大环两侧与底部Au层之间的介质层内部环臂上反而没有特别强的电场。这种分布说明长波段的吸收主要来自MDM结构里的“磁共振”顶部金属环等效为电感底部金属板与顶部金属环之间形成电容二者构成层级的LC谐振回路入射光在这套回路里激发出强烈的磁场增强能量被限制在介质间隔层中。这一点非常重要因为它决定了你的设计自由度宽峰宽度不单靠大环尺寸还跟介质层厚度和金属方阻有关。你观察到的8.5-10.2um这个近1.7um宽的高吸收区间就是磁共振和环的偶极共振叠加后的效果。我在扫描时看到过更窄的峰但那些情况下场分布只剩单一模式带宽自然就小。4.3 偏振稳定性与斜入射表现仿真过程中我还做了偏振和角度测试。对于正入射把入射电场从x方向旋转45度和90度吸收光谱几乎完全重合因为方环和十字都具备四重旋转对称性天然偏振不敏感。这一点对实际系统很重要真实光路中很难保证入射光偏振完全一致如果吸收器对偏振敏感响应波动会很难校准。斜入射方面我扫了0到45度、步长5度的入射角。3um峰在入射角到30度时吸收率降到0.88到45度还能到0.88-10um峰相对敏感30度时峰值降到0.7645度就只有0.62了。这个结果也算合理长波共振模式的相位匹配条件更容易被斜入射破坏。如果应用上对广角要求高可以通过进一步增大介质层折射率来改善角度稳定性但要牺牲一定的峰值吸收率是个权衡。5. 仿真中的坑与排查心得5.1 吸收率大于1的乌龙问题在端口设置调参过程中我遇到过一件挺搞的事某一组参数下3um附近的吸收率算出来到了1.03明显物理上不可能。一开始我以为是网格问题后来仔细看才发现是端口设置里的“入射波激励”选项没有关。当时我同时在顶部端口和底部端口都打开了波激励相当于有两个平面波从不同方向照进结构吸收率公式却只减了一道反射和透射自然会把额外注入的那部分能量算成“吸收”。这个坑在Comsol里出现频率不低。解决办法很简单在端口1的属性里确认“波激励”打开在端口2里把“波激励”关闭只保留探测器角色。我后来还会每次算完先看一眼功率守恒把反射率、透射率、吸收率三项加起来核对误差一旦超过去0.5%优先排查端口和边界设置而不是急着加密网格。5.2 网格收敛性与内存的平衡还有一次我在9um附近看到一个异常尖锐的窄峰宽度不到0.05um直觉告诉我这是网格加工出来的假象。超表面结构分层多金属层又薄自由四面体网格在金属表面附近容易生成低质量单元。我把“最大单元尺寸”从默认的λ/6改到λ/10峰值就变宽了假峰消失。后来我给自己定了个标准特别窄、特别尖锐的吸收峰必须经过网格加密复算如果加密后峰位偏移超过1%或峰值变化超过0.02就当作不可信数据。不过总有人问内存不够怎么办尤其热词里“Comsol 4内存”这类搜索一直很多。我建议先降维如果入射是正入射且结构具有四重对称性可以先建立二维模型或只建1/4单元配合对称周期边界内存占用能压到原来的五分之一以下。如果必须做三维全波就把频点数量拆开不要一次把几百个频点都算完分次扫描后自己合并曲线。实测下来一台16GB内存的普通工作站跑这个三维单单元模型、每个频点约3分钟还是不吃力的。5.3 频域扫描速度和收敛性的加速方法两个波段分开扫描后8-10um段每个频点大概3分钟一组扫描50个频点也就是两个半小时左右。初版模型跑一次优化方案经常要过夜。我后来做了几件事提速一是把空气域高度压缩到仅需容纳高阶衍射模的高度改为端口下方留0.5um空气层二是把求解器从默认的SPOOLES换成PARDISO金属层内部有大量高对比度网格时PARDISO的稳定性明显更好三是打开网格的“自适应频率扫描”预扫描功能说实话这个功能有时不如手动分段稳我不太推荐作为首选。如果你加了参数化扫描强烈建议在“研究设置”里打开“存储解”为“仅最后的解”空出内存给后续循环使用别把中间解全留在内存里很容易触发内存不足。这一步操作与软件版本关系不大老版本新版本都一样管用。6. 这个模型的后续玩法6.1 从双波段到多波段与可调谐当前模型已经把3um和8-10um两个峰装在一个单元里了如果还要加波段思路可以复制在单元里继续加不同尺寸的谐振图形。比如一个大环外面再套一个更大的方环就能覆盖12-14um或者把介质层材料换成GST、VO2这类相变材料通过温度激励让介质折射率改变吸收峰位置随之整体搬移。我在调研时注意到这类“超表面相变材料”的动态调谐方案在红外波段的热辐射调控里已经是热点方向Comsol多物理场的优势这时候就发挥出来了温度场、电磁场可以直接耦合在一个模型里算。6.2 从仿真到元器件落地仿真做到吸收光谱达标只是第一步。真要把吸收器做成器件还得考虑光刻工艺的可实现性顶层Au图形50nm厚、最小线宽120nm普通紫外光刻工艺会吃力但用电子束光刻或深紫外光刻可以做出来。介质层ZnS的镀膜均匀性和厚度控制在红外器件里也有讲究如果你对这个结构后续工艺参数有疑问可以在做测试片之前先用Comsol里已有的薄膜光学模块配合电磁波频域接口做一次容差分析确定d和L2各偏差多少不会让吸收峰跑出指标范围。这一步在实际工程中特别练人。另外这套“单元双谐振器”的设计思路不仅限于吸收器反向运用就是双波段热发射器正向运用就是带通滤光片。可以说一个模型跑通后面一堆相关器件都可以基于它改。如果你在Comsol里把端口扫描、参数化扫描、场分析这套流程跑熟以后遇到超表面、吸波器、光栅耦合这类电磁仿真问题都会比你想象中顺利得多。回头看看这个项目最值钱的部分不是那一组吸收曲线而是调试过程中逼着你把每个物理场设置、每个边界条件都想明白的过程。
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。