问题
当使用 FiPy 模拟热扩散方程时,使用体积特性是否正确?
语境
我正在用显式源项求解瞬态热扩散方程。
在哪里:
- T 是温度[K]
- C 是体积热容量 [J/m³ K]
- k 是电导率 [W/m·K]
- S 是体积热源 [W/m³]
我在 FiPy 中将其表示如下:
eq = TransientTerm(C) == DiffusionTerm(k) + source
研究
- 首先,上述偏微分方程中的单位都一致。瞬态项的单位为 [J/m³ s],简化为 [W/m³]。扩散项中 k 与 T 的乘积单位为 [W/m],应用这两个纳布拉公式后,将其除以 [m] 两次。因此,扩散项的单位为 [W/m³]。源项的单位为 [W/m³]。
- diffuse.mesh1D示例展示了如何在 FiPy 中求解此偏微分方程。它们使用 ρCp 作为过渡系数。我假设它们的 Cp 表示比热容(重量热容),因此 ρCp(即比热容与密度的乘积)是体积热容。
- 大约一百万年前的这个帖子提到了使用体积源项会导致热扩散误差。一开始这让我很困惑,但我认为这是因为作者用热扩散率来写他们的偏微分方程,而不是分别使用瞬态系数和扩散系数。
如果术语之间的单位一致,那么 FiPy 就不会关心。
是的,在 [
examples.diffusion.mesh1D
]( https://pages.nist.gov/fipy/en/latest/generated/examples.diffusion.mesh1D.html#module-examples.diffusion.mesh1D )中,Cp 是比热容,rho 是质量密度。