Home Examples Screenshots User manual Bluesky logo YouTube 中文
OghmaNano Simulate organic/Perovskite Solar Cells, OFETs, and OLEDs DOWNLOAD

OghmaNano 中的 FDTD

1. 引言

有限差分时域法(FDTD)是计算电磁学中最广泛使用的技术之一。 它通过对空间与时间同时离散化,然后逐步对 Maxwell 方程进行数值积分,以跟踪电磁场的演化。 由于不对几何、材料或解的形式作任何简化假设,FDTD 能够处理任意器件结构、复杂边界以及强散射或共振系统。 这使其成为研究纳米光子器件、光子晶体、等离激元结构与波导的强大工具,同时也适用于在真实空间与时间中可视化场的传播与相互作用。 然而,这种通用性是有代价的:FDTD 计算量很大,需要大量内存,并且每个波长需要许多时间步才能得到解。 只有随着现代计算能力的提升,FDTD 才逐渐可用于现实器件问题。

在选择 FDTD 之前,重要的是评估它是否适合你的问题。 在很多情况下,使用 FDTD 可能像用大锤敲开坚果。 例如,可以用 FDTD 来建模常规太阳能电池:从顶电极发射波前,通过数千个时间步仿真其演化直到达到稳态,然后计算吸收。 但在多数器件研究中,我们并不关心光场的详细时间演化——太阳光变化极其缓慢——因此诸如 传输矩阵模型(见 A 部分)之类的稳态方法通常效率更高。

尽管如此,FDTD 仍是一种重要且多用途的方法,尤其适用于分析与设计复杂光子结构。 它在干涉、散射或非平凡几何起关键作用的情形中表现尤为出色——例如光子晶体、波导与微结构器件。

要在 OghmaNano 中开始一次 FDTD 仿真,请打开 新建仿真 窗口 (??) 并选择 光子晶体 FDTD 演示。 这将启动初始 FDTD 仿真窗口 (??), 在其中你可以在时域中探索光场的演化,并选择要显示的场分量。

关于 FDTD 求解器成熟度的说明: OghmaNano 内置的 FDTD 求解器主要用于演示与教学目的,其成熟度与优化程度不如软件包中的其他求解器。对于生产级研究或大规模仿真,最好使用专门的外部 FDTD 求解器,并将结果(例如场分布或等效参数)耦合到 OghmaNano 中,以进行进一步的器件级建模与分析。

OghmaNano new simulation window showing a grid of device and demo options, with the Photonic-crystal FDTD option highlighted in red.
新建仿真 窗口。 用户在此选择要仿真的器件类型或演示项目。 高亮选项显示 光子晶体 FDTD 演示。
OghmaNano initial FDTD simulation window showing a 3D photonic-crystal structure with vertical rods and a waveguide channel in the center, rendered on a grid.
初始 FDTD 仿真 窗口。 仿真网格上显示一个带有竖直柱与波导的 3D 光子晶体结构。 滑块可用于在时域中探索场,右侧下拉菜单用于选择显示的场分量。

2. 运行一次 FDTD 仿真

打开后,仿真窗口将类似于 ??。 点击 播放 按钮启动求解器。 一个小型演示通常可在约 30 秒内完成,但更复杂的结构可能需要更长时间。

仿真完成后,切换到 输出 选项卡。 在那里你会找到 snapshots 文件夹 (??)。 双击该文件夹会打开 FDTD 快照窗口??)。 该工具允许你逐帧查看场的演化。 使用 要绘制的文件 下拉菜单选择要显示的场分量(Ex、Ey 或 Ez)。 在此示例中,选择 Ey,然后使用滑块来探索场随时间的演化。 你也可以直接播放动画,或将帧导出为视频以用于演示与发表。

OghmaNano output tab after running an FDTD simulation, showing the generated snapshots folder.
运行 FDTD 仿真后的 输出 选项卡。 关键结果是 snapshots 文件夹,用于存储场数据。
OghmaNano FDTD snapshots window showing the Ey field distribution evolving in time.
FDTD 快照 窗口。 你可以在此逐步查看场的演化,选择场分量(Ex、Ey、Ez), 并使用滑块或播放控件来动画显示结果。

3. 在 OghmaNano 中操作对象

关闭快照查看器并返回主仿真窗口。 选择 Device 选项卡。左侧你会看到四个视图按钮:xyyzxz,以及一个由小方块组成的网格 (??)。 试着分别点击它们,观察器件视图如何变化。 在接下来的步骤中,选择 xz 视图,使屏幕类似于 ?? 左侧所示。

如果你用左键点击透镜,就可以在器件中移动它们。 尝试重新定位透镜,使你的设计与 ?? 右侧所示一致。 拖动时按住 Shift 键可在原地旋转对象。

Main simulation window in OghmaNano showing the device tab and view controls (xy, yz, xz).
在 OghmaNano 中更改对象视图。
OghmaNano simulation window showing lenses positioned in the xz plane before adjustment.
在仿真窗口中移动对象——调整前。
OghmaNano simulation window showing lenses repositioned in the xz plane.
在仿真窗口中移动对象——调整后。

右键点击透镜并选择 Edit 会打开 对象编辑器??)。 该编辑器提供对对象属性的完全控制。 例如,你可以将类型从 convex_lens 更改为 concave_lens, 调整其用于 FDTD 仿真的材料,修改颜色、位置或旋转角度, 并重新运行仿真以查看效果。 编辑器还包含一个 shape enabled 开关,可让你临时禁用对象。 如果对象在电学上是 active 的,该窗口也可用于配置其电学参数。

对于高级用途,你可以将自定义形状添加到 形状数据库

OghmaNano Object Editor window. The editor shows options to configure a convex lens object, including rotation angles, size in x, y, and z dimensions, offsets, padding, replication counts, color, optical material, and whether the object is enabled in the simulation.
对象编辑器。 该窗口通过右键点击对象并选择 Edit 打开。 它允许用户配置对象属性,例如位置、旋转、padding、replication、颜色与光学材料。

4. 配置 FDTD 求解器

要配置一次 FDTD 运行,请在 Optical 功能区点击 FDTD Simulation??)。 这将打开 FDTD 编辑器??), 在其中你可以控制仿真设置:

调整这些参数以匹配你的器件以及精度/速度权衡,然后从主窗口运行求解器。

Optical ribbon in OghmaNano showing the FDTD Simulation button alongside Light Sources, Ray tracing editor, and Optical Detectors.
Optical 功能区。 点击 FDTD Simulation 打开 FDTD 编辑器。
FDTD Editor window with controls for excitation type, wavelength range, field components (Ex, Ey, Ez), stop time, max steps, mesh slice, mesh resolution, and GPU acceleration.
FDTD 编辑器。 配置激励、仿真时间、网格以及可选的 GPU 加速。

在 OghmaNano 中操作光源

在 FDTD 仿真窗口中,光源由一个 绿色箭头 表示 (见图 ??)。 你可以通过在器件结构中 点击并拖动 该箭头来重新定位此光源。 移动箭头会改变光的发射起点,从而直接影响电磁波如何进入并与器件相互作用。

该元素对应一个 FDTD 光源。 关于不同类型光源及其配置的更多细节,请参阅 光源文档

👉 进入下一节: FDTD 理论