电-热仿真教程(B部分):热网格、边界条件与实验拟合
1. 引言:Part B 的范围与重点
在 Part A 中,你运行了一个 电-热仿真,识别了主要的热产生机制 (载流子输运加热、复合加热和寄生损耗), 并学习了如何提取随外加偏压变化的晶格温度输出。 第一部分主要关注器件中产生了什么热以及热出现在何处。而在这个 Part B 中,我们关注问题的另一半: 热量如何从器件中传导出去。 这由热网格以及至关重要的 热边界条件来控制。 边界条件刻画了器件在实际中如何安装、冷却或连接到散热体, 并且它们通常对最终的温升具有一阶影响。 两个具有相同电学行为和相同热产生项的仿真, 仅仅由于热边界假设不同, 就可能产生非常不同的温度分布。
因此,你将看到为什么电-热仿真通常采用一个 大于电学求解区域的热学区域, 如何使用等效边界条件来表示宏观散热体, 而无需显式地对其进行网格划分, 以及为什么温度相关的材料量需要在离散温度网格上进行预计算。本教程继续使用一个有机二极管示例,因为它具有实验依据, 并且包含可测量的自发热效应,但整个工作流程是完全通用的。 相同概念同样适用于无机半导体、薄膜器件、 功率电子、光探测器,以及任何电功耗会通过温度 反馈到输运中的结构。
完成 Part B 后,你应当理解:
- 为什么热网格不同于电学网格,
- 热边界条件如何控制散热,
- 为了提高效率,内部如何使用温度离散化,以及
- 为什么有时必须包含自发热才能匹配实验数据。
2. 热网格与边界条件
从主仿真窗口开始,切换到 Thermal 功能区。这与 Part A 中介绍的是同一个功能区: 它包含热源开关和核心配置控件(热参数、热网格和边界条件)。 该功能区如 ?? 所示。
2.1 热网格以及它为什么不是电学网格
点击 Thermal mesh 打开热网格编辑器。乍一看,它和你在 OghmaNano 中见过的其他网格编辑器类似, 但它求解的是不同的物理问题:热扩散。关键点在于,电-热仿真使用两套网格,因为电学和热学问题通常位于 根本不同的长度尺度上:
- 电学网格用于求解输运(drift–diffusion + Poisson + 复合/陷阱)。它通常聚焦于 电学活动最强的区域:活性层及其附近界面,在这些区域中,电场和载流子密度变化很快。 这些变化可能发生在纳米到微米尺度上。
- 热网格用于求解晶格热方程。热并不会止步于活性层:它会扩散到整个器件堆栈中, 并进入接触、电极、基底、封装以及任何负责移除热量的部件。这些热传导路径通常位于 毫米到厘米尺度上。
这就是为什么使用单一“共享网格”通常是错误抽象的原因。电学问题在活性区需要高分辨率; 热学问题则需要足够大的区域来表示热流路径。 例如:
- 一个薄膜二极管的活性层厚度可能只有 100–300 nm,但其基底可能有 0.5–1 mm 厚(例如玻璃),而安装块或平台可能达到厘米量级。
- 一个金属接触在电学上可能只有几十纳米厚,但在热学上它可能是主要的横向热扩散体, 因为与有机层或氧化物层相比,它的热导率很高。
在这个示例中,你可以看到热学区域的 Y 高度 跨越了整个器件堆栈厚度, 而不是仅限于电活性区域。这是典型情况:热传导涉及所有导热层,而不仅仅是 电流流动的那些层。接下来,我们通过边界条件来配置热如何离开这个热区域。网格定义了 热可以扩散的区域;边界条件定义了在该区域边缘发生什么。
2.2 边界条件:绝热边界与等效散热体
打开边界条件编辑器,如 ?? 所示。 在这个示例中,大多数边界都设置为 Neumann(通常显示为 “Neumann (==0)”)。 从物理上看,Neumann 边界条件规定的是边界上的法向热流。 当它被设为零时,其约束为:
\[ -k \nabla T \cdot \hat{n} = 0 \]
即没有热量通过该边界。这些边界被视为热绝缘边界。 这并不意味着整个器件是热绝缘的;它只是告诉热求解器,这些 边界不是预期的散热路径的一部分。这里的例外是 ymax 面, 它被设置为 Heatsink。 该边界规定了一个位于 ymax 处的器件温度(本例中约为 300 K), 同时还包括一个等效的散热体热导率和散热体长度 (在本例中大约是毫米量级)。
从概念上讲,这是一种等效散热模型。它允许热量从 模拟的器件堆栈流出,进入一个未显式网格化的散热体, 而无需让热网格包含一个宏观物体。这一点很重要,因为真实的散热体通常比 薄膜器件大好几个数量级:如果以亚微米分辨率显式网格化一个毫米到厘米尺度的散热体, 将在计算上非常低效,而且在物理上也没有必要。需要特别强调的是,在热学问题中, 边界条件在很大程度上决定了器件会变得多热。 差的散热路径会导致温度迅速升高,而高效散热路径则可能在明显功耗下 仍使温度保持接近环境温度。
一个有用的类比是把器件想象成一个正在放水的浴缸。 热产生项相当于水龙头:它们不断向系统注入能量。 热边界条件则相当于下水口:
- 如果下水口完全畅通(优良散热),水位保持较低。
- 如果下水口部分堵塞(散热受限),水位会上升。
- 如果下水口关闭(无散热),浴缸最终会溢出。
在这个类比中,水位就是晶格温度。 因此,热边界条件并不是装饰性的或次要的: 它们编码了物理环境,而正是这个环境最终决定器件是保持低温、 略微升温,还是灾难性过热。
2.3 温度“网格点”(为什么温度需要离散化)
热网格编辑器还显示了一个温度范围和若干温度点。这并不是空间热网格: 它是用于预计算的温度网格。电-热模型的许多部分都需要在耦合求解过程中 反复评估温度相关量,而在每一个中间温度点都从头计算这些量在计算上代价很高。例如,根据所选择的统计模型和态密度模型, 求解器可能需要载流子密度、准热力学函数以及相关查找量的温度依赖关系。 OghmaNano 并不是在耦合循环每次更新 \(T_L\) 时都“实时”求解它们, 而是先在有限个温度点上预计算背景表, 然后在运行过程中在这些点之间进行插值。 在这个示例中,表格是在 290 K 到 350 K 之间 的 7 个点上生成的。
这使得温度范围本身成为一个建模选择:它应当能够舒适地覆盖自发热过程中 预期出现的温度。如果器件温度高于上限温度, 你就有可能遇到外推伪影(或根据设置发生钳位), 而这通常并不是你想要的。一个实用原则是:选择一个 带有适当裕量、能够覆盖预期工作温度的范围。
3. 热参数(热导率与驰豫时间)
在电-热仿真中,边界条件定义了热量如何离开器件, 而材料参数则定义了热量在堆栈内部如何传播。 实际上,控制温升和热点形成的最重要量之一就是 热导率 \(k\)(有时也写作 \(\kappa\))。
要查看或编辑这些参数,请打开 Thermal 功能区并点击 Thermal parameters (标有 \(k\) / \(\kappa\) 的按钮)。这会打开 ?? 所示的逐层热参数编辑器。
编辑器为每一层显示三个关键参数:
- 热导率 \(k\):控制热量在该层中扩散的效率。 低 \(k\) 层会成为热瓶颈,并可能显著增加预测的晶格温升。
- 电子驰豫时间 和 空穴驰豫时间:这些只在使用 hydrodynamic / energy-transport 模型时才需要,在该模型中载流子温度可以偏离晶格温度。 在标准晶格热模型中不需要它们,因为载流子温度被锁定为 \(T_L\)。
在大多数工作流程中,热导率取自已发表文献值(如果有的话也可使用实测值), 只有在存在明确实验依据时才会进一步微调。 与边界条件一起,\(k\) 是决定器件绝对温度及热点空间分布的主要因素之一。
4. 耦合电-热求解器如何工作(以及为什么它更慢)
OghmaNano 中的电-热仿真由两个耦合求解器组成:
- 一个完全耦合的电学求解器(drift–diffusion 和 Poisson,包括 启用时的复合与陷阱),以及
- 一个热学求解器,它对晶格温度场 \(T_L\) 的热扩散方程进行求解, 所使用的热源项来自电学解。
在给定外加电压下,求解器并不是按顺序只运行这两个阶段一次。 相反,它执行一个自洽的外层循环:
- 使用当前温度场求解电学输运问题,
- 计算热源项(输运、复合、寄生以及可选的光学热源),
- 求解热扩散问题以更新 \(T_L\),以及
- 重复上述过程,直到电学和热学残差均收敛。
这种迭代耦合就是电-热仿真比纯电学仿真更慢的原因: 对于每一个偏置点,在耦合系统稳定之前, 电学 Newton 求解和热学求解都可能需要运行多次。 其结果是一个真正自洽的多物理场解, 而不是在电学计算后进行温度后处理。
这种耦合是必要的,因为电学和热学问题通常位于 非常不同的物理长度尺度上。 电学输运主要由活性区控制,在该区域中电场、载流子密度 和复合速率变化迅速。 热输运则必须考虑完整的热流路径,包括接触、 基底、封装和散热体。 这就是 OghmaNano 要为热网格 和热边界条件提供独立控制的原因。
同样重要的是要认识到,电-热框架天然涉及 多个温度。 一般来说,该模型区分晶格温度 \(T_l\), 它描述原子晶格的温度,以及电子温度 \(T_e\) 和空穴温度 \(T_h\)。
电子和空穴是可移动的载流子群体, 原则上,它们可以拥有各自的局部能量, 就像它们拥有各自的准费米能级一样。 在这里使用的标准电-热模型中,电子和空穴温度 被锁定到晶格温度, 因此所有子系统共享同一个温度场。
在极端工作区间下,OghmaNano 也支持hydrodynamic transport model, 在该模型中,电子和空穴温度可以偏离晶格温度。 这种高级模型在其他地方有更详细的描述, 并且只在特殊情况下才需要。 对于绝大多数器件仿真,包括本教程在内, 基于晶格的电-热模型已经是合适且足够的。
5. 自发热与实验比较
这个示例器件已经通过电-热模型与实验数据进行了比较。 本教程中不会执行任何拟合。 相反,这里使用已有的比较结果来说明 自发热如何改变器件的电学响应, 以及为什么在较高工作电流下需要耦合的电-热处理。
比较工作流程通过 Automation 工具栏访问,如 ?? 所示。 打开 fit-to-experiment 工具后, 会显示该器件的实验 JV 数据,如 ?? 所示。 这条曲线代表器件在偏压下的实测行为。
运行一次迭代。在单次电-热求解之后, 仿真的 JV 曲线会叠加到实验数据上,如 ?? 所示。 在这个例子中,两者符合得较好, 表明该模型捕捉到了器件主导性的输运和热学物理。
自发热的作用可以通过在关闭热模型后重复相同的比较来清楚看出:
- 返回 Thermal 功能区。
- 禁用热模型。
- 再次运行一次迭代进行比较。
得到的 JV 曲线将不再与实验数据匹配,如 ?? 所示。 这种偏差在较高偏压下最为明显, 因为此时电流密度较大, 由载流子输运引起的自发热开始变得显著。
这一比较展示了电-热建模的一个核心结论: 一旦器件工作在高电流密度区间, 电功耗就会通过温升反馈到输运中。 固定温度的电学仿真无法捕捉这种效应, 而耦合电-热模型则可以。