使用scipy.integrate计算函数值时的ValueError

时间:2014-04-28 13:06:31

标签: python python-2.7 numpy scipy

我正在尝试为变量n的不同值评估函数,我为此可变创建了一个np.linspace并将其插入函数Q

def Q(z_i, z_min,f_gamma, mDM, sigma_v,n, with_ucmh):
    dQdz_z = lambda z : dQdz(f_gamma, mDM, sigma_v, z,n, with_ucmh)
    integrand = lambda z: ((1/((1+z)*H_z(z)))* (dQdz_z(z)) * np.exp(-tau(z)))
    second_part = const.C*const.B*integrate.romberg(integrand,z_min,z_i)
    return second_part

z_i = 2.0e6
z_min = 5.0e4
sigma_v = 3.0e-27 
f_gamma = 1.
mDM = 10. 
with_ucmh = True
n = np.linspace(1.,1.3,100)
mu = Q(z_i, z_min,f_gamma, mDM, sigma_v,n, with_ucmh)

我得到ValueError: setting an array element with a sequence指向我使用scipy的integrate.romberg方法的行,但我不明白为什么我会遇到这种错误...

0 个答案:

没有答案