使用 COMSOL Multiphysics® 开发用于设计超透镜的仿真 App

2023年 9月 21日

这篇博客,我们将为您介绍如何构建一个简单的教学仿真 App,用于设计金属基底上由不同直径的玻璃纳米柱阵列组成的二维反射超透镜。这个使用 COMSOL Multiphysics® 软件中的 App 开发器构建的仿真应用程序,首先将根据给定波长找到最佳超表面参数,然后计算纳米柱直径与相对相移之间的关系。最后,在此基础上,自动构建超透镜的几何结构,并对最终确定的几何结构进行频域研究,计算焦点周围的电场。

什么是超透镜?

近年来,超材料已经成为涉及波动方程求解的光子学和声学等领域的热门研究课题,这是一种具有人工结构(有时被称为“超原子”)的复合材料,通常小于波长。因此,超材料与电磁场的相互作用就像均质材料一样,具有不同于组成材料的材料特性,例如,微波炉门上的光栅——一块充满空气小孔的金属板,就是一个相当常见的例子,这种超材料具有实心金属板和空气都不具有的特性:对短波长可见光基本上透明,而对长波长的微波则完全屏蔽。

除了具有已知“真实”材料所不具备的潜在定性特性外,超材料的主要优势还在于可以通过改变结构的几何参数,对其特性进行定量调制——通常有很大的可调范围。许多为半导体制造而开发的技术,如光刻技术,也适用于制造超材料。由这种超材料制成的光学元件在显微设备和虚拟现实技术等应用中备受青睐。

微波炉门内部的特写图,显示了它的光栅。
微波炉门上光栅的特写图。

本文我们将重点介绍反射超透镜:这是一种由金属基板上的玻璃纳米柱组成的平面阵列,其工作原理类似凹面镜。虽然听起来“元镜”这个名字更合适它,但重要的是要明白这种设备的工作原理不仅仅是传统的反射,还有一种会发生与坐标相关的相移的反常反射。与透镜和反射镜等传统光学器件相比,超透镜具有以下优点:

  • 超透镜的厚度仅为几分之一微米,实现了光学器件的微型化
  • 超表面可以被设计成不仅能聚焦光,也能将多个传统光学器件整合到一个超薄的元器件中
  • 超材料在特定波长范围内具有更好的性能,例如紫外线(UV)

具体来说,我们将考虑一个放置在平坦的金属衬底上,由二氧化硅纳米柱组成的二维超透镜,如下图所示,纳米柱的高度 H 和周期 P 均匀,但直径 D 变化。为简单起见,我们只考虑法线入射(沿负 y 方向传输)的平面波,在面外方向偏振。

由二氧化硅纳米柱组成的二维超透镜示意图。

从数学角度讲,凹面镜是一种能在平面波入射时局部改变波相位,使其成为汇聚于一点(即焦点)的球面波的装置。直观上,我们可以想象,随着纳米柱厚度的增加,由于柱的折射率比周围空气的折射率高,反射波的相位会发生较大的偏移,但如果我们想建造一个正常工作的超透镜,就需要获得直径与相对相位偏移 \Delta \Phi (D) 之间的精确定量关系,这将在下一节中介绍。本文采用的方法基于参考文献 1。

基本单元模拟

获得 \Delta \Phi (D) 的一个有效方法是计算均匀周期晶格引起的相移,所有纳米柱的直径都是D,在直径范围内扫描。(您可以在此了解有关周期结构建模的更多信息。)这样我们就可以使用周期性边界条件,从而只需要模拟晶格的基本单元。使用周期性端口边界条件激励入射波意味着我们可以通过复值 S 参数方便地获取波的相移。

要建立一个正常工作的超透镜,我们需要能够将波的局部相位在 02\pi 弧度之间任意移动。因此,我们首先需要找到 HP 的值,以及最小直径 D_\mathrm{min} 和最大直径D_\mathrm{max} 的值,使得 \Delta \Phi ( D_\mathrm{max} ) – \Delta \Phi ( D_\mathrm{min} )=2 \pi,同时尽可能保持较高的反射率。这是一个频域优化问题。优化步骤只需要扫描端点的结果,因此我们可以省去中间步骤,使计算速度更快。我们知道,柱越窄,相位偏移的范围就越大,D_\mathrm{min} 就尽可能小的受到制造工艺的限制,因此我们不把D_\mathrm{min}作为控制参数。相反,D_\mathrm{min} 是一个固定参数,对于大多数波长,其值为 20~\mathrm{nm} 。(对于在 300~\mathrm{nm} 左右及以下的波长,应使用 10~\mathrm{nm} 来代替,以获得良好的结果)我们只对相对相位感兴趣,因此目标函数应该如下所示:

\left| \mathrm{arg} \left[ \frac{S_{11}
( D_\mathrm{max} )}
{S_{11}( D_\mathrm{min} )} \right]-2\pi\right|。

 

不过,这个表达式还不能在用户接口中使用,因为软件使用符号约定 e^{iky} 来表示沿正 y 方向传播的平面波,并定义了从复值\pi\pi 的相位。当使用 COMSOL® 的符号约定,并加入所需的运算符来引用 D=D_\mathrm{min}D=D_\mathrm{max} 的解后,我们最终得到了下图所示的表达式。我们还在 目标函数 中添加了一个涉及从这两个解中获得的反射率的项,有助于避免共振模式并确保高效。如果您想了解有关优化的更多信息,请查看有关电磁学中形状优化的博客或COMSOL Multiphysics® 学习中心的课程:在 COMSOL Multiphysics® 中执行优化


COMSOL Multiphysics UI显示了选择了优化研究的模型生成器和相应的“设置”窗口。

用于优化研究的设置(研究 1)。优化步骤使用端点处的扫描结果,因此我们需要将 参数扫描步骤放在 优化步骤之后(如模型开发器树所示),并使用 withsol() setind() 算子实现所需的目标函数。我们还在目标函数 设置中添加了表示反射率的第二个表达式。

剩下要做的就是用优化后的参数值进行全扫描,以获得 D_\mathrm{min}D_\mathrm{max} 之间中间值的相移。结果如下图所示:在整个直径范围内,具有较高反射率的相移均匀、单调递增。接下来,就可以根据这些结果制作超透镜了。

x 轴为纳米柱直径(nm),y轴为反射率和吸收率(1)的一维绘图。
波长为 400~\mathrm{nm} 的基本单元扫描结果图,显示相移从 02\pi 单调增加,同时在整个纳米柱直径范围内保持高反射率。

超透镜仿真

在绘制超透镜几何图形之前,我们需要将相移函数 \Delta \Phi (D) 转化为纳米柱直径分布函数 D,其中 x 是与光轴的距离。我们知道,理想的聚焦镜会对正常入射的平面波产生以下相移:

\Delta \phi = – \frac{2\pi}{\lambda_0}\sqrt{f^2+x^2}+\frac{2pi}{\lambda_0}\sqrt{f^2+R^2}。

 

其中, fR 分别为超透镜的焦距和半径。为方便起见,我们选择将 \Delta \phi 定义为\Delta \phi (R) =0。 剩下的就是少量的数值处理了:假设相移是单调的,我们可以反转 \Delta \Phi (D) 得到 \Delta \Phi ^{-1} (\phi) \equiv D( \phi ),加上周期性,得到 D( \phi \pm 2n\pi ) =D( \phi ),并与 \Delta \phi 形成复合函数,得到 D(\phi) \equiv D 。下图是一个示例。

 x (m) 在 x 轴,直径 (nm) 在y轴的一维绘图。
纳米柱直径分布 D(x) 与焦距为 25~\mu\mathrm{m}、半径为 7.5~\mu\mathrm{m} 和工作波长为 400~\mathrm{nm} 的超透镜光轴距离的函数关系。

下一个挑战是将这个函数转换为实际几何体。如果我们在全局定义 节点中定义了上述函数,就可以将纳米柱定义为一个几何部件,并将支柱位置 x 作为输入,同时将宽度设置为 D。然后,我们只需将该部件的 \lfloor R/P \rfloor(此处,R 为超透镜半径,P 为超表面周期)添加到几何序列中即可。更妙的是,我们可以使用App开发器编写一个方法来完成这项工作,这将在下一节讨论。

关于仿真App的使用

首先,我们来看看如何自动生成超透镜几何图形。实际上,在 App 开发器中,我们可以使用 model.component().geom().create(, "PartInstance")方法创建一个几何零件实例,然后使用 model.component(<comp>).geom(<geom>).feature(<name>).setEntry
("inputexpr", <expr-name>, <val>)
方法设置输入参数。将这些命令放在 for 循环中就可以得到整个超表面。 需要注意的是,这种方法适用于小型超透镜
(R/P\lesssim100) 和教学目的。对于大型超透镜,必须使用分层子模型法,即使用 COMSOL® 模型来计算不同几何参数下的基本单元响应,并使用 Java®方法或 LiveLink™ for MATLAB® 将结果用作大型程序的一部分。现在我们已经掌握了编写方法,可以创建一个按钮,使用 model.result().numerical("gev1").getReal() 获取初始优化的输出,并使用 model.param().set() 将模型参数设置为这些值。此外,我们还使用了 setRibbonItemEnabled() 在前一步完成后启用下一步的按钮。

App开发器不仅可以实现设计过程中繁琐步骤的自动化,还可以实现更多功能。例如,将模型打包成一个仿真 App 意味着我们可以创建一个自定义用户界面(UI),这非常有益,因为用户可以一目了然地监控整个设计过程。下图显示了App 的用户界面。下一步,您当然可以使用 COMSOL Compiler™ 创建一个独立的应用程序。

超透镜仿真App的用户界面,显示了焦点周围的电场模。
超透镜仿真 App 的用户界面设计使设计过程的各个方面都一目了然。

 

超透镜仿真 App 运行时的屏幕录像。

结束语

在这篇博客中,我们总结了如何构建一个用于设计具有指定尺寸、焦距和工作波长的二维反射超透镜的仿真 App。我们看到,使用 COMSOL Multiphysics® 中的 App 开发器通过用户界面简化相对复杂的设计过程,用户能够方便地监控从开始到结束的设计过程。

不过,在这篇文章中我们仅仅触及了超透镜设计的表面。进一步的扩展研究还包括考虑三维透镜,透镜性能分析(如参考文献1中分析的聚焦尺寸和色散特性),以及用多物理场模拟热配置超透镜(如参考文献2)。我们在今后的博客中将探讨其中一些更高级的主题。

下一步工作

点击下面的按钮,进入案例下载页面,亲自动手尝试运行超透镜仿真 App:

参考文献

  1. H. Guo et al., “Design of Polarization-Independent Reflective Metalens in the Ultraviolet–Visible Wavelength Region,” Nanomaterials, vol. 11, no. 5, 2021; https://doi.org/10.3390/nano11051243.
  2. A. Archetti et al., “Thermally reconfigurable metalens,” Nanophotonics, vol. 11, no. 17, pp. 3969–3980, 2022; https://doi.org/10.1515/nanoph-2022-0147.

Oracle 和 Java 是 Oracle 和/或其附属公司的注册商标。MATLAB 是 The MathWorks 公司的注册商标。


评论 (5)

正在加载...
Johnston Kalwe
Johnston Kalwe
2023-10-27

This is quite insightful. I wish you can provide more information about matching of the target phase with the unit-cells phase.
also, some more information about metalens characterization.

wei bao
wei bao
2023-10-30 COMSOL 员工

The following link maybe helpful:https://cn.comsol.com/blogs/your-guide-to-lumped-ports-in-the-rf-module

Johnston Kalwe
Johnston Kalwe
2023-11-16

thank you. it was of help.

can i get tutorials or a blog explaining the dsign of transmissive metalens?

Johnston Kalwe
Johnston Kalwe
2023-11-16

Thanks a lot for the suggested link. It worked.

Can i get a tutorials and/or blogs detailing design of transmissive metalens?

Qihang Lin
Qihang Lin
2023-11-21 COMSOL 员工

All material in this application download link are material we can provide you: https://cn.comsol.com/model/metalens-design-app-117281

浏览 COMSOL 博客