Python 2.7 辛普森&x27;s规则评估德拜';PYTHON中的s公式

Python 2.7 辛普森&x27;s规则评估德拜';PYTHON中的s公式,python-2.7,Python 2.7,问题是,我有德拜公式,需要使用辛普森规则来写一个函数cv(T),它计算给定温度下的cv。 因此Cv=9*Vpk_B*(T/theta_D)3(从0到theta_D/T的积分)x4*ex/(ex-1)**2 那么,对于这个积分,我该如何用辛普森的方法建立一个函数来计算积分呢?公式中的积分为0到θD/T 这是我到目前为止所拥有的 from __future__ import division, print_function from math import e import numpy as np

问题是,我有德拜公式,需要使用辛普森规则来写一个函数cv(T),它计算给定温度下的cv。 因此Cv=9*Vpk_B*(T/theta_D)3(从0到theta_D/T的积分)x4*ex/(ex-1)**2 那么,对于这个积分,我该如何用辛普森的方法建立一个函数来计算积分呢?公式中的积分为0到θD/T

这是我到目前为止所拥有的

from __future__ import division, print_function
from math import e
import numpy as np

# constants
V = 1000                # cm**3 of solid aluminum
p = 6.022*10**28        # number density in m**-3
k_b = 1.380*10**-23     # Boltzmann's constant in J*K**-1
theta_D = 428           # Debye temperature in K
N = 50                  # sample points

def cV(T):    
        return  9*V*p*k_b*(T / theta_D)**3 * (x**4 * e**x / (e**x - 1)**2)

def debye(T, a, b, N):

如果这是一个家庭作业问题,您应该将其标记为这样,并为您的函数提供您尝试的代码
debye
。如果这是真实的生活,您可能会更好地使用,而不是滚动您自己的:

from scipy.integrate import quad
def debye(T, a, b):
    return quad(cV, a, b)[0]
无需给出正交点的数量:
quad
为您处理此问题。请注意,您应该将被积函数
cV
定义为
x
的函数,而不是
T