首页 > 解决方案 > 尝试计算玻尔兹曼方程并将其绘制在图表上时出现溢出错误

问题描述

在 Second_factor 上,它显示了一个溢出错误。有人可以提出替代方案。

import matplotlib.pyplot as plt
n = []
NnN1 = []
n2i = 2
K = 1.38 * (10 ** -23)

for i in range(1, 101):
    n.append(i)
T = 100
for i in n:
    DE = -13.6 * (1 / (n[i] ** 2) - 1 / n2i)
    gn = 2 * (n[i] ** 2)
    Dg = gn / n2i
    Second_factor  =  pow(2.71828 , DE/(K*T))
    Nn = Dg * Second_factor
    NnN1.append(Nn)

print(NnN1)

标签: pythonpython-3.x

解决方案


复制的片段,不错!

您的问题不在于代码,而在于您的数学,检查错误。如果添加打印语句,您会看到 的值为DE/(K*T)2.4e+25。因此,您将 2.71 提高到 24000000000000000000000000 的幂,因此溢出。


推荐阅读