PML

PML完美匹配层边界条件

PML

完美匹配层(Perfectly Matched Layer, PML)用于吸收仿真边界处入射和反射的电磁波,减少边界反射对计算结果的影响。它是 FDTD 求解中最常用的吸收边界之一,尤其适合开放域、近场/远场计算和大多数波传播问题。

基本概念

PML(Perfectly Matched Layer,完美匹配层)并不是“一个理想导体边界”,而是一层人工吸收层,置于计算域的外侧,用来尽量减小电磁波在边界处的反射,并使其在进入该层后快速衰减。它的目标不是把波完全反射回去,而是让波在进入PML后被逐层吸收,最终衰减到数值上可忽略的程度,因此非常适合近似无限大开放空间。

PML 的核心思想来自于坐标拉伸或复数坐标变换:在边界附近将传播常数或导电参数按一定规律逐步改变,使电磁波在层内不断损耗,且在理论上无需在界面处产生不必要的反射。实际模拟中,这种“匹配”效果并非绝对完美,但在工程上已被证明非常有效,是 FDTD 中最常用的吸收边界之一。

PML 的效果

使用FDFP监视器(FDFP monitor)可以直观观察PML对波的吸收效果。将场沿传播方向记录下来时,通常可看到在接近PML区域时,场强随距离急剧下降,说明边界反射已被明显抑制。

solver_pml2.png

如图所示,当光进入PML后,随着PML的逐层吸收,电磁场能量被迅速衰减,最终几乎不再返回计算区域。若PML设计合理,则边界处的残余反射可以控制到很低的水平,从而避免仿真结果被边界效应污染。

PML 与结构

软件采用拉伸型PML。对于穿过PML边界的结构,用户可参考结构页面中相关说明。在 FDTD 属性边界条件选项卡中,存在一个 Extend Structure through PML 选项,如下图所示,该选项默认开启。

extend_structure_through_PML

启用该选项后,软件会在垂直于边界的方向上自动延伸与PML内边界接触的结构。对于多层薄膜、平板结构或其他与边界直接相接的实体,此设置通常可以降低界面反射、改善吸收效果,并减少因边界附近结构截断导致的杂散回波。

PML_rectangle

但需要注意:对于光子晶体等周期结构,通常不应启用该选项。因为若将与PML内边界接触的周期体直接延伸,会破坏原本的周期性约束,导致结构在边界附近发生人为改变,从而影响计算的物理真实性。

PML_PC

在使用 PML 作为吸收边界时,通常需要保证计算区域中感兴趣结构与边界之间保留足够的间隔,避免边界附近残余反射干扰目标结果。若结构、激励或观测区域过于靠近 PML,甚至穿过 PML 层,则可能需要增大仿真域、增加 PML 层数或调整边界条件类型。对于周期结构等需要保持平移对称的模型,尤其要注意不要在边界附近人为扩展结构,以免破坏原本的物理假设。

PML 的配置类型

PML 的吸收效果与其配置类型密切相关。软件内置了三种预定义的 PML 配置,用于在不同工程需求下平衡吸收效率、数值稳定性和计算成本,用户可通过 PML profile type 下拉菜单进行选择。

Name Description
Standard 标准配置;该配置类型以相对较少的层数提供良好的整体吸收,适合大多数常规仿真。通常在结构未穿过 PML 区域时优先选用该配置。
Stabilized 稳定配置;当材料边界穿过 PML 层,或光源以大角度入射到 PML 层时,可能出现数值不稳定。稳定配置通过调整参数并增加层数来抑制 PML 内场发散,提高稳定性。
Custom 自定义配置;允许用户直接输入 PML 参数值,默认值来自标准配置。该配置更适合对 PML 传播与损耗机制有较深入理解的用户。

在典型场景中,Standard 是最常用的默认选择;当边界附近存在复杂材料穿透或高角度入射时,可优先考虑 Stabilized;而 Custom 则应在充分理解参数影响后再使用。

PML 参数设置

PML 的吸收性能由一组参数共同决定,其中最关键的是 PML 层厚度和分布形式。对不同配置类型,可进行的参数设置也不完全相同。

对于自定义配置(Custom)类型,允许用户定义以下参数:

Name Description
Cells Z/X/Y PML 单元个数,决定 PML 层的厚度和吸收范围。
Sigma PML 层的电导率,用于调节波在 PML 内的衰减强度。
Alpha PML 层损耗系数,用于降低低频或低角度反射。
Kappa 无量纲参数,用于调整 PML 中有效折射率和阻抗匹配特性。
Polynomial 使用多项式函数来描述 Kappa 和 Sigma 的空间分布变化。
Alpha polynomial 使用多项式函数来描述 Alpha 的空间变化。

对于标准配置(Standard)或稳定配置(Stabilized)类型,允许用户主要调整的是:

Name Description
Cells Z/X/Y PML 单元个数,影响吸收层厚度和稳定性。

一般来说,增加 PML 层数和适当调节参数可以提高吸收效果,但过厚的 PML 会增加计算成本,建议在保证吸收质量的前提下尽量保持参数合理。

适用场景

PML 适合处理以下典型问题:

  • 自由空间传播问题;
  • 波从光源发出并到达边界后需要尽量减少反射;
  • 近场、远场、散射和辐射分析;
  • 多层结构、复杂周期结构以及开放边界问题。

使用要求

PML 作为吸收边界时,最关键的要求是:在感兴趣结构和仿真边界之间保留足够的空白区域与吸收层厚度,避免边界附近的残余反射干扰目标场分布。若结构、光源或观测区域过于靠近 PML,甚至穿过 PML 层,则应增大计算域、增加 PML 层数或切换更稳定的 PML 配置,以保证结果不受边界效应污染。

此外,PML 对近场、远场、散射和辐射分析,通常需要在结构与边界之间预留足够的传播空间,以便完整记录场在进入 PML 前的演化过程。

仿真工程中允许光源和监视器的空间尺寸超出仿真区域,但注意:

  • 默认情况下,光源超出仿真区域部分无效;
  • 默认情况下,监视器超出仿真区域部分不记录数据;
  • 在监视器中,可设置是否记录 PML 内的场:Record data in PML

注意事项

  • PML 在多数开放问题中是首选吸收边界,但并非万能:当结构穿过 PML 或光源以大角度入射时,可能出现数值不稳定,应考虑使用 Stabilized 配置或增加 PML 层数;
  • 对于接触 PML 的结构,可酌情使用“Extend Structure through PML”选项。对多层平板类结构通常有益,但对周期性结构(如光子晶体)应禁用以保持周期性;
  • 仅在理解 PML 参数影响后才建议使用自定义(Custom)配置;在常规场景下优先使用 Standard 配置;
  • 建议记录并检查进入 PML 区域的场分布(如沿边界方向的衰减曲线)以验证吸收效果并避免人工反射。