首页 示例 截图 用户手册 Bluesky logo YouTube
OghmaNano 模拟有机/钙钛矿太阳能电池、OFET 和 OLED 下载

FDTD 边界条件

1. 介绍

在有限差分时域(FDTD)仿真中,边界条件定义了电磁场在计算区域外部边界处的行为。从物理上讲,它们决定了当波到达仿真单元边缘时会发生什么。这是 FDTD 模型中最重要的方面之一,因为数值区域总是有限的,而物理问题通常表示开放空间中的传播、重复结构或受限腔体。因此,边界条件的作用就是在截断网格之外施加正确的场的数学延拓。

如果边界选择不当,波会反射回网格内部,与物理解相干涉,并可能产生强烈的驻波伪影。在最坏情况下,能量会被困在仿真体积内,所计算的场分布将不再代表预期的器件。这在开放光子结构、散射问题、辐射系统和脉冲响应计算中特别重要,因为出射波必须干净地离开区域。相反,在周期性结构中,正确的行为不是吸收而是重复,而在某些测试问题中,则希望在边界处显式固定场。因此,边界条件的选择必须与模型的物理相匹配。

在数学上,Maxwell 旋度方程在有限 Yee 网格上求解。对于无源各向同性区域,它们可写为

\[ \mu \frac{\partial \mathbf{H}}{\partial t} = - \nabla \times \mathbf{E}, \qquad \varepsilon \frac{\partial \mathbf{E}}{\partial t} + \sigma \mathbf{E} = \nabla \times \mathbf{H}. \]

内部更新方程可直接由这些关系得到,但在最外层单元处,差分模板会延伸到已存储网格之外。边界条件提供了完成更新所需的缺失信息。在实践中,这意味着仿真盒的每一个外表面都必须被赋予一条数值规则,用以确定切向场是被固定、吸收、周期性回绕,还是通过匹配吸收层衰减。

在 OghmaNano 中,边界条件通过 Optical 功能区上的 Boundary Conditions 按钮进行配置(见 图 ??)。对应的编辑器(见 图 ??)允许为 FDTD 区域的每个外表面分配不同的条件。可用的边界类型有 DirichletMur ABCPeriodicPML

六个可选边界对应于笛卡尔仿真盒的六个表面。在 OghmaNano 使用的默认视图配置中,\(y_0\) 是仿真区域的顶面,\(y_1\) 是底面,\(x_0\) 是左侧面,\(x_1\) 是右侧面,\(z_0\) 是最靠近用户的表面,\(z_1\) 是距离用户最远的表面。方向映射如 图 ?? 所示。

OghmaNano optical ribbon showing the Boundary Conditions button used to open the FDTD boundary-condition editor
Optical 功能区打开 FDTD 边界条件编辑器。
OghmaNano boundary-condition editor showing configurable boundary types for y0, y1, x0, x1, z0, and z1, together with PML depth controls
用于定义仿真区域每个外表面 FDTD 处理方式的边界条件编辑器。
3D view of the FDTD simulation region indicating the x, y, and z directions used to assign x0/x1, y0/y1, and z0/z1 boundary faces
用于分配 FDTD 边界条件的方向约定。在默认视图中,\(y_0\) 是顶面,\(y_1\) 是底面,\(x_0\) 是左侧面,\(x_1\) 是右侧面,\(z_0\) 是最靠近用户的表面,\(z_1\) 是远侧面。

边界条件编辑器会分别为这六个表面独立分配一条规则。这使得构造混合区域成为可能,例如横向方向使用周期性边界、传播方向使用吸收边界,或在所有表面使用 PML 以模拟向自由空间辐射。当某个表面选择 PML 时,该表面还会提供一个附加的深度参数。该深度以网格单元数给出,并决定保留多少个外层 FDTD 层作为吸收介质。

2. 边界条件编辑器

边界条件编辑器为表面 \(y_{\min}\)、\(y_{\max}\)、\(x_{\min}\)、\(x_{\max}\)、\(z_{\min}\) 和 \(z_{\max}\) 分别提供独立控制,它们在 图 ?? 所示的方向约定中分别对应于 \(y_0\)、\(y_1\)、\(x_0\)、\(x_1\)、\(z_0\) 和 \(z_1\)。对于每个表面,所选选项决定了在网格外边缘处如何更新切向电场和磁场。

3. Dirichlet 边界条件

Dirichlet 边界条件将边界上的场固定为某个给定值。在最常见的 FDTD 用法中,该值为零,因此边界施加

\[ \mathbf{E}_{\mathrm{tan}} = 0 \qquad \text{在所选表面上,} \]

因此,该边界对电场表现为完全反射壁,任何出射波都会被反射回仿真区域。

3. Mur ABC 边界条件

Mur 吸收边界条件旨在通过逼近计算区域边缘处外向传播波的行为来减小反射。其思想是在边界法向方向满足一个单向波动方程,从而使离开网格的能量继续向外传播,而不是反射回来。

对于一个沿 \(+x\) 方向传播的一维波,精确的出射波关系为

\[ \frac{\partial u}{\partial x} + \frac{1}{c}\frac{\partial u}{\partial t}=0. \]

Mur 的一阶吸收边界条件是通过在 FDTD 网格上离散该方程得到的。在左边界上,一个标准形式为

\[ u_0^{n+1} = u_1^{n} + \frac{c\Delta t-\Delta x}{c\Delta t+\Delta x} \left( u_1^{n+1}-u_0^{n} \right), \]

在另一侧边界上有类似表达式。这里 \(u_i^n\) 表示空间索引 \(i\)、时间索引 \(n\) 处的场,\(\Delta x\) 是网格间距,\(\Delta t\) 是 FDTD 时间步长。

Mur 吸收边界条件计算代价低,且只需要极少的附加内存,这使得它们对轻量级仿真或探索性计算具有吸引力。它们试图逼近一个出射波,使能量能够离开仿真区域,而不是从外边界反射。

由于 Mur 条件只是一个近似,因此总会残留一定反射。对于斜入射、宽带脉冲和复杂多维散射场,其精度会下降。因此,Mur 边界最适用于那些波大致垂直入射到边界、且不要求极高精度的简单传播问题。

对于要求较高的光学仿真、辐射结构,或者波从多个角度撞击边界的情况,应改用完美匹配层(PML)。PML 边界引入一个吸收区域,比 Mur 条件更有效地消除出射波,且反射显著更低。

4. 周期性边界条件

周期性边界条件将仿真区域的一个表面与其对面识别为同一边界,因此从一侧离开的场会从另一侧重新进入。当物理结构在空间中无限重复,而计算单元表示该重复几何中的一个单胞时,这种条件是合适的。

在最简单的形式下,周期性施加

\[ \mathbf{E}(x+L_x,y,z,t)=\mathbf{E}(x,y,z,t), \qquad \mathbf{H}(x+L_x,y,z,t)=\mathbf{H}(x,y,z,t), \]

当 \(y\) 或 \(z\) 方向边界被标记为周期性时,相应方向也类似。数值上,在区域一侧之外所需的场值取自另一侧。因此,对应的相对表面必须作为匹配的一对来处理。从物理上讲,这意味着该解对应的不是一个孤立物体,而是所仿真单元副本构成的无限晶格。

周期性边界通常用于空间重复的结构,例如衍射光栅、光子晶体、超材料单元以及周期性波导几何。只建模单个单胞即可显著降低计算成本,同时仍然表示整个重复结构的行为,前提是光源和几何与所假定的周期性一致。

在周期性边界下,从仿真区域一侧离开的场会从对侧重新进入。因此,能量不会被吸收,而是通过计算单元重新循环。因而,周期性边界不应当用于表示开放空间。如果在仿真区域的所有表面都施加周期性边界,能量就无法离开该区域,总电磁能可能会随时间积累。在许多实际 FDTD 仿真中,因此会在横向方向使用周期性边界,而在传播方向使用 PML 等吸收边界。

在最一般的情况下,周期性场在相邻单元之间可以包含相位移。这由 Bloch 条件描述:

\[ \mathbf{E}(x+L_x,y,z,t)=\mathbf{E}(x,y,z,t)e^{ik_xL_x}, \]

磁场也有类似关系。这里实现的标准周期性边界对应于特殊情形 \(k_x=0\),即场在仿真区域相对表面之间完全相同地重复。

5. PML 边界条件

完美匹配层(PML)是现代 FDTD 仿真中标准的高性能吸收边界。其目的是在宽频率范围和宽角度分布下,以最小反射消除出射电磁波。PML 并不是在外边缘施加一步边界公式,而是在物理仿真区域周围引入一种人工吸收介质。进入该层的波在界面处不会看到尖锐的阻抗失配,同时会经历衰减。

其核心思想是:PML 在入口平面处与内部介质匹配,因此入射波不会遇到会自行产生反射的不连续性。一旦进入该层,场就会按指数形式衰减。在连续形式下,这可通过复坐标拉伸来解释,例如

\[ x \;\rightarrow\; \int_0^x s_x(\xi)\,d\xi, \qquad s_x(\xi)=\kappa_x(\xi)+\frac{\sigma_x(\xi)}{j\omega\varepsilon_0}, \]

其他方向也有相应的拉伸因子。这里 \(\sigma_x\) 是人工电导率分布,\(\kappa_x\) 是拉伸坐标 PML 公式中使用的缩放因子。其效果是传播场在穿过该层时被衰减,同时在与物理区域的界面处保持近似无反射。

在 OghmaNano 中,为某一表面选择 PML 会在仿真区域该侧激活这一吸收层。相关的 PML depth 参数设置分配给该层的网格单元数。较厚的 PML 通常提供更强的衰减,因为场有更长的距离用于衰减。如果 PML 太薄,部分能量可能会到达外部截断边界并发生反射。如果其厚度足够大,则出射场在到达最外边缘之前就会衰减到可忽略的值。

理解厚度依赖性的一个方便方式是注意到,吸收介质内部的场分量大致按如下方式衰减:

\[ E(d)\sim E(0)\exp(-\alpha d), \]

其中 \(d\) 是进入 PML 的传播距离,\(\alpha\) 是由电导率渐变设定的有效衰减系数。因此,增加 PML 单元数会降低到达外部截断边界的残余振幅。实际而言,PML 深度应足够大,使来自该层后端的反射相对于所关注的物理信号可以忽略不计。

PML 通常是开放光子和电磁仿真的首选边界条件,包括波导辐射、孤立物体散射、类天线发射以及瞬态脉冲传播。当场以斜角撞击边界或包含宽光谱成分时,它比简单吸收边界条件稳健得多。因此,在许多预期波会离开计算盒的 FDTD 模型中,PML 是默认选择。

即使使用 PML,良好的建模实践仍然很重要。吸收层不应放置得离强倏逝场区域或高谐振场区域太近,因为非传播近场可能与吸收介质相互作用并改变解。通常,物理结构应与 PML 之间留有足够的自由空间,以便出射波前能够干净地形成。以这种方式使用时,PML 在 FDTD 中提供了对开放、无反射外部区域最接近的近似。