Python 中的 E1/3 函数?

问题描述 投票:0回答:1

我正在使用 python 分析一些实验室结果,我需要将数据拟合到包含广义指数积分 E1/3 的分布。 除了自己计算积分(非常慢)之外,我能找到的最接近的东西是

scipy.special.expn(n, x)
,但它只支持n的整数值,而我需要
n=1/3

有人知道是否有这样的功能吗?

python scipy data-analysis physics
1个回答
0
投票

你好,我认为你需要定义函数来计算这个

import numpy as np
from scipy.integrate import quad

def integrand(x):
    return np.exp(-x) / x**(1/3)

result, error = quad(integrand, 0, np.inf)
print(result)

但它适用于学术用途,我的导师推荐了一个Python库“mpmath”参考:官方mpmath网站,它比上面的函数要快得多。所以修改后的代码片段将是这样的:

import mpmath

def integrand(x):
    return mpmath.exp(-x) / x**(1/3)

result = mpmath.quad(integrand, [0, mpmath.inf])
print(result)
© www.soinside.com 2019 - 2024. All rights reserved.