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

漂移–扩散求解器配置

可以通过在电学功能区中选择 配置 来配置漂移–扩散求解器。 这将打开求解器配置窗口,在其中可以调整迭代次数上限、误差容限以及收敛策略等数值属性。 这些选项使用户能够针对不同器件仿真控制求解器的性能和稳定性。

配置电学求解器

OghmaNano 的电学引擎求解一组紧密耦合的非线性方程(泊松方程 + 漂移–扩散方程, 以及任何已启用的动力学过程)。这些方程包含指数项并具有强耦合性, 因此通过在单一全局雅可比矩阵上使用牛顿–拉夫森方法进行迭代求解。 通常不需要更改默认设置,但配置面板允许您稳定困难算例、加速简单算例, 或检查数值行为。

通过进入 电学 选项卡,选择 漂移–扩散,然后点击 配置 来打开配置界面 — 参见 DD Solver Open。 这将弹出如 DD Solver Window 所示的窗口,在其中可以调整求解器的迭代和收敛方式。

各个部分的作用

该面板分为四个主要模块,分别控制运行的不同阶段: 首次迭代后续迭代电压扫描退出策略。 在所有阶段,核心思想都是一致的:从一个初始猜测开始, 使用牛顿步更新未知量,并在全局误差足够小时停止。 限制因子(clamp) 用于限制每一步的最大更新量, 以防止求解器跳入非物理区域。 较小的限制因子 → 更慢但非常稳定;较大的限制因子 → 更快但可能不稳定。

首次迭代

后续迭代

电压扫描

当从初始偏压(例如 0 V)扫描到目标工作点(可能是高电压)时, 中间的求解通常只是过渡点。 该模块允许在扫描过程中使用更宽松的容限或不同的限制因子, 以更快地完成扫描,同时在最终工作点保持严格的求解条件。

退出策略

求解器类型与工具

实践建议

如果算例较为敏感(高掺杂、极端电场、强注入), 请降低限制因子并收紧首次步骤的容差。 对于简单、行为良好的算例,可提高限制因子以加快速度。 使用扫描模块快速到达工作点,然后在该点施加更严格的容差。

另请参见: DD Solver Open 中显示的配置入口,以及 DD Solver Window 中的完整对话框。

求解器稳定性

OghmaNano 是一个数值模拟器,用于求解电荷、势能和复合过程的一组紧密耦合的微分方程。 与任何数值求解器一样,它需要物理上合理的输入参数才能成功收敛。 精确为零、无限大,或跨越过多数量级的数值 都会导致底层矩阵运算不稳定。 为帮助您避免这些问题,本节强调在配置仿真时的一些实际注意事项。

避免非常大的数和非常小的数

打开 MATLAB(或 Linux 上的 Octave),并输入以下表达式: \(((1e-1+1e1)-1e1)/1e-1\)。 在按下回车之前,先在脑中计算: \(1e1\)\(-1e1\) 相互抵消, 剩下 \(\frac{1e-1}{1e-1}=1\)。 现在将 10 的指数替换为 19,再尝试: \(((1e-19+1e19)-1e19)/1e-19\)。 在纸面计算中,结果同样应为 \(1\)

然而,当让计算机计算时,结果将是 \(0\),而不是 \(1\)。 这是因为计算机以有限精度存储数字 (现代机器大约为 15–16 位十进制有效数字)。 当你将 \(1e-19\) 加到 \(1e19\) 上时, 较小的项在舍入中被丢失, 计算机看到的是 \(1.000000000000000e19\), 而不是 \(1.0000000000000000001e19\)。 随后减去 \(1e19\) 得到精确的零, \(1e-19\) 的贡献因此消失。

数值精度很重要

如果仿真参数跨越过多数量级, 求解器可能会失去精度。 尽量避免极端比例, 尤其是在迁移率或态密度中, 以确保稳定性。

无论计算机多么强大,都会受到这一限制的影响。 对于器件仿真而言,这意味着应避免 在同一矩阵中同时出现非常大的数和非常小的数。 例如,将 \(1e-19\) 的迁移率 与 \(1e5\) 并列, 会导致数值困难。 在模拟绝缘体时这一点尤为重要。

避免零值

零值会导致除零错误。 不要将迁移率、俘获截面、尾态斜率 或态密度设置为精确的零。 对于复合常数,使用零是可以的。

⚠️ 避免精确为零

用非常小的数值(例如 \(1e-30\)) 替代零,以防止数值不稳定, 同时仍然近似“几乎为零”。

带隙中的过大步长

带隙中的大能量步长会产生 极小或极大的载流子浓度, 这会直接导致 避免非常大的数和非常小的数 中描述的精度问题。 保持能量离散足够精细, 以避免非物理跳变。

🔍 检查您的网格

如果带隙离散过于粗糙, 可能会生成非物理的载流子浓度。 请细化网格, 使数值保持在数值稳定的范围内。