scipy.special.

multigammaln#

scipy.special.multigammaln(a, d)[source]#

返回多變量伽瑪函數的對數值,有時也稱為廣義伽瑪函數。

參數:
andarray

將為 a 的每個項目計算多變量伽瑪函數。

dint

積分空間的維度。

返回:
resndarray

在給定點 a 處多變量伽瑪函數的對數值。

註解

對於實數 a,維度 d 的多變量伽瑪函數的正式定義為

\[\Gamma_d(a) = \int_{A>0} e^{-tr(A)} |A|^{a - (d+1)/2} dA\]

條件為 \(a > (d-1)/2\),且 \(A > 0\) 為維度 d 的所有正定矩陣的集合。 請注意,a 是一個純量:只有被積分函數是多變量的,參數不是(此函數定義在實數集合的子集上)。

這可以被證明等於更友好的方程式

\[\Gamma_d(a) = \pi^{d(d-1)/4} \prod_{i=1}^{d} \Gamma(a - (i-1)/2).\]

參考文獻

R. J. Muirhead, Aspects of multivariate statistical theory (Wiley Series in probability and mathematical statistics).

範例

>>> import numpy as np
>>> from scipy.special import multigammaln, gammaln
>>> a = 23.5
>>> d = 10
>>> multigammaln(a, d)
454.1488605074416

驗證結果是否與上面顯示的方程式的對數一致

>>> d*(d-1)/4*np.log(np.pi) + gammaln(a - 0.5*np.arange(0, d)).sum()
454.1488605074416