-
-
May 18, 2021 at 12:47 amGuilin SunAnsys Employee在前面的这个帖子中 Ansys Insight: FDTD 和 varFDTD 常见的发散原因以及处理 ,除了介绍两个常见的仿真发散处理方法外,还提供了几个可能导致发散的原因,用户可以根据情况做适当修改。 PML( perfectly matched layer )是FDTD大规模应用的一个里程碑,最初由法国科学家Berenger在1994年提出的【1】,参考文献见后。 这是一种人为的数值材料,Artificial的,理论上可以将特定的入射平面波全部吸收,有来无回,因此,FDTD和其它类似的微分方程数值求解经常使用,进而也发展由不同的方法,这里不做表述。 Lumerical推荐使用的Stretched coordinate PML,原文献见后【2】。当发散是因为PML参数而不是PML距离结构太近的情况下,需要修改一些PML的参数。为此,Lumerical的FDTD提供了几套不同的PML参数(软件中称为 profiles)应对常见的原因:
Standard:
缺省(默认)设置,用于绝大多数情况,特别是网格精度为1或者2时最常用。如果没有结构穿透PML, 这套PML一般来说非常有效。 参数调整: 层数。需要注意的是,PML的有效性并不仅仅取决于层数,而是主要取决于PML的厚度。 如果有结构穿过PML而且发散,可以采用下面这套。Stabilized:
当有结构穿透PML时,有可能产生数值不稳定性,特别是色散材料。 参数调整: 层数。 不过,此套PML的缺点是层数太多,有时导致仿真内存需求较大。 遗憾的是,此PML主要目的是为了防止仿真发散,因此其吸收性能稍差,需要更多的层数。Steep angle:
一般在周期结构仿真,有高级衍射且衍射角或者光源入射角非常大,比如80度或以上时,建议采用此套PML。 不够,如果网格精度较低,比如低于精度2,即每个波长十个网格,其吸收性能不如Standard的PML好。 参数调整: 层数。Custom:
当分别用上述三套PML通过调整层数仍然不收敛,或者用到最大层数收敛但是需要内存太大,仿真时间太长时,有经验的用户希望能够调整PML,可以采用这种方法。 参数调整: 1:增加alpha (此量无单位)。缺点,虽然可能抑制发散,但是反射可能会高一些。 2:增加 alpha / sigma,即固定 alpha减小 sigma,或者反之。缺点,同上。 这些参数介绍参见文献或官网链接[3]. 其它方法: 1:因为是PML的总厚度能有效吸收,因此,也可以在给定的Mesh Accuracy情况下,在PML之前添加一个方向的Override网格使得网格适当变粗,比如精度2情况下的网格尺寸。缺点,因为网格尺寸变化且变粗,有可能会增加反射。 2:如果是有金属材料穿过PML产生的发散,可以将金属结构变小不要穿过PML,这个技巧在前面帖子中已经提及。 注:如果经验不足,建议仅将最大可用的层数增加,此时可以使用原PML的Profile参数,仅需要将最大层数增加即可。 除了Stretched coordinate PML之外,最早开发的uniaxial anisotropic PML也是可以使用的。曾经有一个CASE无论怎么调整总是发散,后来采用这种方法反而实现了收敛。 总之, 发散问题比较复杂,与光源光谱和设置、网格尺寸、时间步长、材料拟合和材料特性,以及结构与PML的相互作用的给都可能与PML导致的发散有关。 诊断发散时可以用Movie监视器,或者添加Profile监视器但是记录PML里面的数据有可能发现是那里导致发散的。
-
Viewing 0 reply threads
- The topic ‘Ansys Insight: 修改PML哪些参数可以有效抑制FDTD发散’ is closed to new replies.
Ansys Innovation Space
Trending discussions
Top Contributors
-
1406
-
599
-
591
-
555
-
366
Top Rated Tags
© 2025 Copyright ANSYS, Inc. All rights reserved.
Ansys does not support the usage of unauthorized Ansys software. Please visit www.ansys.com to obtain an official distribution.