【问题标题】:Upper Incomplete Gamma Function of order 0 in scipyscipy中0阶的上不完全伽玛函数
【发布时间】:2018-11-05 03:15:25
【问题描述】:

我正在尝试在 Python 中实现零阶上不完全 gamma 函数。通常我们使用gammaincc 函数,但根据docs,它只定义为正a。对于 a=0 的情况,有没有办法在 python 中实现它?谢谢。

【问题讨论】:

  • 不,因为 Gamma(0) 发散。有充分的理由只为积极的a 定义它。
  • 我不是试图实现正则化的上不完全伽马函数,而是标准函数,它不是通过将其除以 Gamma(a) 来缩放的。它肯定存在。见wolframalpha.com/input/?i=Gamma%5B0,+0.1%5D

标签: python scipy gamma-function


【解决方案1】:

SciPy 实现了 regularized 不完全 gamma 函数,即除以 Gamma(a) 的函数。当 a=0 时,这种划分没有意义,但非正则化的上 gamma 仍然有意义。不幸的是,在 SciPy 中没有像 regularized=False 这样的标志。

但是,在特殊情况下a=0 上不完全 gamma 函数与 SciPy 中可用的指数积分 exp1 一致:

>>> from scipy.special import exp1
>>> exp1(1.3)
0.13545095784912914

(与Wolfram Alpha 相比)。

另外,mpmath 库默认计算非正则化不完全伽马。

>>> import mpmath
>>> mpmath.gammainc(0, 1.3)
mpf('0.13545095784912914')

【讨论】:

  • 如果使用两次减号看起来很麻烦,也可以使用“expn(x)”!
  • @Prav001,我想你的意思是expn(1, x)exp1(x)
猜你喜欢
  • 1970-01-01
  • 2017-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-31
  • 1970-01-01
  • 2018-07-22
  • 1970-01-01
相关资源
最近更新 更多