什麼是多伽瑪函數?
階數為 \(n\) 的多伽瑪函數,記作 \(\psi^{(n)}(a)\),定義為伽瑪函數自然對數的第 \((n+1)\) 階導數。依本計算器採用的索引方式:\(n=-1\) 時回傳對數伽瑪函數 \(\ln\Gamma(a)\) 本身;\(n=0\) 時回傳雙伽瑪函數 \(\psi(a)\);\(n=1\) 為三伽瑪函數;\(n=2\) 為四伽瑪函數,以此類推。這些特殊函數廣泛出現在機率論、統計學(伽瑪分布與貝塔分布的最大概似估計)、數論及漸近分析中。這是純粹數學,無論在哪裡計算結果都完全相同。
如何使用這個計算器
先從下拉選單選擇導數階數 \(n\)(-1、0、1、2、3 或 4),再輸入實數引數 \(a\),按下計算即可得到 \(\psi^{(n)}(a)\),精度約達 12 位有效數字。本計算器在 \(a>0\) 時完全有效;當 \(a\) 小於或等於 0 時,函數需透過反射公式處理,而對於非正整數(即伽瑪函數的極點),計算器會標示為「未定義」。
公式說明
當 \(n=-1\) 時,採用 Lanczos 近似法計算 \(\ln\Gamma\)。當 \(n=0\) 時,雙伽瑪函數先利用遞迴關係 \(\psi(x)=\psi(x+1)-\frac{1}{x}\) 將引數推升至 6 以上,再以漸近級數 \(\psi(x)\sim\ln x-\frac{1}{2x}-\frac{1}{12x^{2}}+\cdots\) 完成計算。當 \(n\ge1\) 時,遞迴關係 \(\psi^{(n)}(x)=\psi^{(n)}(x+1)+(-1)^{n+1}\dfrac{n!}{x^{n+1}}\) 會把引數推升至 10 以上,接著以伯努利數漸近級數收尾求值。
實例演算
以 \(n=1\)、\(a=5\) 為例(即三伽瑪函數在 5 的值)。運用恆等式 \(\psi^{(1)}(m)=\dfrac{\pi^{2}}{6}-\sum_{k=1}^{m-1}\dfrac{1}{k^{2}}\),可得 $$1.6449340668-\left(1+\frac{1}{4}+\frac{1}{9}+\frac{1}{16}\right)=1.6449340668-1.4236111111=0.2213229557.$$ 計算器回傳的結果約為 \(0.221322955737\)。
常見問答
為什麼 \(a=0\) 或負整數時為未定義?伽瑪函數在 0、-1、-2、… 處有極點,因此 \(\ln\Gamma\) 及所有多伽瑪函數在這些點上都會發散。
雙伽瑪與三伽瑪有什麼差別?雙伽瑪(\(n=0\))是 \(\ln\Gamma\) 的一階導數;三伽瑪(\(n=1\))是其二階導數,也就是雙伽瑪函數的導數。
計算結果有多準確?採用雙精度浮點運算搭配「位移+漸近」方法,在 \(a>0\) 時約可提供 12 至 15 位正確的有效數字。