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

网格划分

什么是网格划分?

网格划分是将连续的物理区域划分为一组可由计算机处理的离散点的过程。 例如,设想热量沿着一根金属棒从一端的蜡烛火焰传导到另一端的冰块。 在现实中,温度沿棒连续变化,但仿真无法存储无限多个数值。 因此,用有限数量的采样点(网格)来表示金属棒,并只在这些位置进行计算 (见 ??)。 通过使用网格,我们将原本连续的问题转化为离散问题,从而可用数值方法求解。 这一原理是有限差分、有限元以及其他在物理与工程中广泛使用的计算方法的基础。

An example of a continuous problem, showing heat conduction from a candle to an ice crystal, broken up (meshed) into a series of discrete points along the bar.
一个连续问题被分割(或 网格化)为一系列离散点的示例。 在该示意图中,热量沿棒从蜡烛传至冰块,温度分布由离散的网格点表示。

不同问题对应不同网格

在 OghmaNano 中,求解三类核心物理模型:光学模型(光吸收与传播)、 热学模型(热生成与传导)以及 电学模型(电荷输运与复合)。 这些过程通常发生在截然不同的长度尺度上,因此各自需要独立的网格。例如:

Thermal ribbon in OghmaNano, showing the Thermal mesh button alongside model and temperature settings. Optical ribbon in OghmaNano, showing the Optical mesh button together with light source and simulation tools. Electrical ribbon in OghmaNano, showing the Electrical mesh button alongside solvers and interface tools.
OghmaNano 的三个功能区:thermal(顶部)、optical(中部)、 以及 electrical(底部)。每个功能区都包含专用的 mesh 按钮, 用于定义对应物理模型的网格。

在实践中,这意味着不同的物理效应必须在不同的长度尺度上进行仿真。 此外,器件结构往往包含厚度仅数纳米的极薄接触或界面层。 从光学角度看,此类层远小于光的波长,往往可以忽略, 但从电学角度看它们却至关重要,因为它们决定器件的电流–电压行为。 为了捕捉这些效应,你会在这些区域使用非常细的电学网格, 而光学网格可以保持更粗,并跨越这些区域。

当模型耦合时,OghmaNano 会自动在网格之间进行 插值。 例如,如果你在热学网格上定义了温度分布,但电学求解器需要局部 温度值,它们会通过插值传递。 光学量(例如载流子产生率)也是如此, 会在需要时从光学网格插值到电学网格。 作为用户,你不需要手动管理这些传递。

OghmaNano 的三种网格

OghmaNano 提供三种相互独立的网格——thermaloptical、 以及 electrical——可根据所求解的问题分别定义。 每种网格可在其对应的功能区选项卡中访问,如图 ?? 所示。

电学网格

OghmaNano electrical mesh editor showing X and Y dimensions active for a 2D OFET simulation, with tables defining thickness, mesh points, and spacing, and plots visualizing the resulting mesh.
电学网格编辑器,其中为 2D OFET 仿真启用了 XY 维度。 表格用于定义厚度、网格点数与增长因子,图形用于可视化网格分布。

Electrical 功能区中点击 Electrical mesh 按钮会打开网格编辑器窗口 (图 ??)。 在该窗口顶部有 XYZ 按钮。 它们用于切换仿真中启用的空间维度。 例如,仅启用 Y 将进行 1D 仿真,而同时启用 XY 将设置 2D 仿真。在所示示例中,XY 都处于启用状态,因此网格被配置为 2D OFET 仿真。中央表格类似电子表格,用于定义每个启用维度的网格结构。其主要列为:

生成的网格会绘制在窗口底部的图中,从而立即反馈 点间距与分布。Import from layer editor 按钮为复杂器件提供了快捷方式。它会清空 Y-网格,并自动从 Layer Editor 导入所有层,为每层分配四个网格点。 这对包含许多层的结构(例如激光二极管)尤其有用。

光学网格

OghmaNano optical mesh editor with X, Y, Z dimension toggles and a wavelength panel. The left panel defines spatial mesh thickness, points, and growth factors; the right panel defines start and stop wavelengths, step multiplier, and number of points. Colored plots below show mesh spacing and spectral sampling.
光学网格编辑器。左侧面板定义沿器件厚度方向的空间网格点, 右侧面板通过设置波长范围与分辨率来配置谱网格。 下方图形同时可视化空间网格分布与波长采样。

光学网格编辑器(图 ??) 在布局上类似电学网格编辑器,但增加了一个用于定义 波长网格 的面板。在窗口顶部,XYZ 按钮用于切换启用的空间维度,而 λ (Wavelength) 按钮用于启用谱网格。

左侧面板以纳米为单位指定空间离散化,使用与电学网格相同的列 (ThicknessMesh pointsStep multiplyLeft/Right)。右侧面板通过设置 StartStop 波长、points 点数以及 步长倍率来定义谱范围。这些波长点会在所有光学求解器中一致使用,包括 ray tracingFDTDtransfer matrix 仿真。

热学网格

热学网格编辑器(图 ??) 与电学和光学网格编辑器工作方式相同,使用 XYZ 按钮来激活空间维度。此外,它还包含专用的 T (Temperature) 网格。

OghmaNano thermal mesh editor showing spatial mesh configuration on the left and temperature mesh configuration on the right. The table on the right defines the start and stop temperatures, number of points, and step multiplier; plots below visualize the distribution.
热学网格编辑器。左侧面板定义空间离散化,右侧面板通过设置起止值、分辨率与步长增长来配置 温度网格。 图形可视化位置空间与温度空间中的网格分布。

温度网格用于需要考虑温度依赖性的仿真,例如启用 自热效应,或在温度范围内评估电学性质时。在仿真运行之前, OghmaNano 会预先计算并制表诸如载流子密度随费米能级与温度变化的关系, 或费米–狄拉克积分等量。这些表格使求解器在运行期间能够快速查表,而不是 反复计算。

在大多数情况下,热学网格会自动处理,但高级用户可以调整范围与分辨率, 以确保在强温度依赖问题中具有足够精度。

电学网格详解

?? 展示了电学网格的构建方式。注意网格并非从器件边界处精确开始, 而是从边界内侧半个网格步长处开始。这确保第一个计算节点位于有源 仿真区域内部,从而可以在网格外侧的明确位置施加边界条件(例如接触)。同样的约定也适用于器件的远端边界,因此网格会超出 最后一个物理点半个步长。该偏置布置带来两点主要优势:

我何时需要在 OghmaNano 中关注网格划分?

1D electrical mesh diagram showing evenly spaced grid points placed half a step inside the device boundaries.
电学网格的 1D 示意图。网格点相对器件边界偏移半个步长, 以确保导数计算稳定,并一致地施加边界条件。

电学网格

Layer Editor 将器件划分为不同材料的层 (见第 3.1.3 节)。 标记为 active 的层是应用电学模型的区域。 对这些层必须定义有限差分网格。 网格长度必须与有源层长度完全一致——否则会报错。 OghmaNano 通常会自动生成合适的网格,因此对大多数简单器件你不需要考虑这些细节。 然而,当存在多个有源层,或当你希望减少网格点数以加速仿真 (或增加点数以获得更高精度)时,你可能需要手动配置电学网格。

光学网格

光学网格同时控制位置与波长采样。 如果你希望改变仿真的波长范围,或细化 光与器件各层相互作用的描述,你可能需要调整它。 增加网格点数会提高光学精度,但代价是更长的仿真时间。

热学网格

只有在启用自热效应时,热学网格才相关。 在这种情况下,它提供对器件中温度演化建模所需的分辨率, 或用于描述热效应如何与陷阱与复合过程耦合。 否则,它由 OghmaNano 自动处理。

网格划分建议

我应该进行 1D、2D 还是 3D 仿真?

选择正确的维数是建立仿真时最重要的决策之一。 始终使用能够捕捉目标物理过程所需的最少维数——这能节省时间与计算资源。

速度与精度

增加网格点数通常会提高精度,但会减慢仿真速度。 相反,减少网格点数会加快计算,但可能丢失重要的物理细节。 关键在于取得平衡:先用粗网格测试设置,然后只在必要时细化网格, 以获得稳定且可靠的结果。

在 OghmaNano 中建立器件时,请记住以下指南: