scipy.special.loggamma#
- scipy.special.loggamma(z, out=None) = <ufunc 'loggamma'>#
伽瑪函數對數的主分支。
定義為 \(\log(\Gamma(x))\),適用於 \(x > 0\),並通過解析延拓擴展到複數平面。該函數在負實軸上具有單個分支切割。
在版本 0.18.0 中新增。
- 參數:
- zarray_like
在複數平面中計算
loggamma
的值- outndarray,可選
用於計算
loggamma
值的輸出陣列
- 返回:
- loggamma純量或 ndarray
z 處的
loggamma
值。
註釋
雖然函數的實部確實一致,但 \(\log\Gamma(z) = \log(\Gamma(z))\) 通常不是真的。 不將
loggamma
定義為 \(\log(\Gamma(z))\) 的好處是,後者函數具有複雜的分支切割結構,而loggamma
除了在負實軸上之外是解析的。恆等式
\[\begin{split}\exp(\log\Gamma(z)) &= \Gamma(z) \\ \log\Gamma(z + 1) &= \log(z) + \log\Gamma(z)\end{split}\]使
loggamma
可用於在複數對數空間中工作。在實數線上,
loggamma
通過exp(loggamma(x + 0j)) = gammasgn(x)*exp(gammaln(x))
與gammaln
相關,直到捨入誤差。此處的實作基於 [hare1997]。
參考文獻
[hare1997]D.E.G. Hare, Computing the Principal Branch of log-Gamma,《Journal of Algorithms》,第 25 卷,第 2 期,1997 年 11 月,第 221-236 頁。