Fdtd算法中pml的类型和选择

FDTD Solutions和MODE Solutions中的varFDTD最常用的边界条件就是PML。PML全称是Perfectly matched layer即完美匹配层,是由法国科学家Berenger于1994年提出的。在FDTD发展的过程中,这个边界条件是一个重要的里程碑。在此之前,如何仿真电磁波传输到无限远的问题,已经有几种边界条件将仿真区截断,但是都不是很理想,也就是都有一定量的反射,这些反射波又返回仿真区域物体相互作用,严重影响仿真的精度。在正确设置和PML上入射角不是非常大的情况下,我们软件提供的PML可以达到非常低的反射。需要说明的是,所有软件仿真时都需要把PML区域考虑进去,因此,为了减小内存需求,一般来说应该在基本满足仿真精度的前提下尽可能选取少层数。

软件缺省的也是我们极力推荐的是stretched-coordinate PML。为了方便用户使用,我们将这种技术分为几种情况,届时只要选取合适的PML就可以了:

  1. Standard
    该设置针对大多数应用能够在使用最少层数情况下提供很好的吸收。一般情况下物体应该穿透PML。如果物体仅延伸到PML里面一部分(例如一些光子晶体器件),有可能产生仿真发散,此时可以选用Stabilized

  2. Stabilized
    为了降低仿真发散的可能性,此PML选用更多的层数但是更缓慢的吸收。

  3. Steep Angle
    当仿真区的电磁场一较大角度入射到PML上时,例如一些周期结构,对PML要求更高,此时可以选用

  4. Custom
    前面三种PML的材料参数都是固定的,用户只能调整层数。对于有经验的用户,可以通过调整PML的材料参数实现更好的性能。

根据需要,用户可以将所有需要PML的方向设置为相同的PML,例如散射问题,也可以设置为不同的PML,例如环形谐振腔器件。不同方向可以使用不同的PML, 例如x方向两边都使用 Stabilized:

当然前提是通过诊断知道发散是x方向PML引起的,例如可以用视频监视器查看。

如何选?只有StretchedPML才有上面4个选项。一般情况下,所有方向的PML选用同种类型和层数,当然根据需要也可以不同方向选择不同的类型,例如

此时需要不能选Same Settings On All Boundaries,然后点击对应坐标下的Profile那一栏的Standard(缺省的都是Standard)

偶尔需要使用Uniaxial AnisotropicPML:

一般是StretchedPML无论如何调整都得不到需要的效果时才用它测试。我曾经有过这样一个例子。

其它可以参见这几个帖子
FDTD 和 varFDTD 常见的发散原因以及处理
PML应该放在什么地方?
关于varFDTD仿真共振环的问题

此外,实际的PML匹配层经过离散后仍然有一定的反射,因此使用时,既不要对它有苛刻的要求,例如要求反射率不能高于1E-6(也是可以做到的,不过没有必要),也要注意其反射对结果的影响。后者可以通过增加PML的距离等检查。

PML Parameters

Unlike conventional boundary conditions, PML boundaries have a finite thickness. In other words, they occupy a finite volume that surrounds the simulation region. It is within this volume that the absorption of light happens.

•LAYERS: For discretization purposes, PML regions are divided into layers.

•KAPPA, SIGMA, ALPHA : The absorption properties of PML regions are controlled by three parameters. Their definition can be found in the second reference at the top of this page. Kappa is unitless by definition, but sigma and alpha must be entered into the PML settings table as normalized unitless values. Kappa, sigma and alpha are all graded inside the PML regions using polynomial functions. Parameter alpha is sometimes described as a complex frequency shift (CFS) in the literature2. Its main role is to improve numerical stability. Increasing the ratio alpha / sigma will make a a PML boundary more stable, but it will reduce its absorption effectiveness; this is why the stabilized profile requires a larger number of layers. To recover the S.I. unit values of alpha and sigma, it is necessary to multiply by twice the permittivity of free space and divide by the time step employed in the simulation.

•POLYNOMIAL: It specifies the order of the polynomial used to grade kappa and sigma.

•ALPHA POLYNOMIAL: It specifies the order of the polynomial used to grade alpha.

•MIN LAYERS, MAX LAYERS: They enforce a sensible range of values for the number of PML layers.

4 Likes

介绍PML的各个参数时,这句话“Increasing the ratio alpha / sigma will make a a PML boundary more stable, but it will reduce its absorption effectiveness”中表示增大alpha / sigma的比值可以使得PML边界更加稳定。
那么PML边界的稳定性是什么意思?

PML穩定的時候應該是吸收光的, 不穩定的時候有機會會造成非物理的增益, 以及彷真發散。