史特靈公式是一條用來取 n 階乘近似值的數學公式。一般來說，當 n 很大的時候，n 階乘的計算量十分大，所以史特靈公式十分好用，而且，即使在 n 很小的時候，史特靈公式的取值已經十分準確。這個公式以的名字命名，雖然亞伯拉罕棣美弗早於史特靈提出了一個類似的公式，但結果較不精確。 see p 81 The result obtained using a formula originally proved by de Moivre but now called Stirlings formula occurs in his Doctrine of Chances of 1733 史特靈公式為： n approx sqrt 2pi n left frac nerightn 這就是說，對於足夠大的整數 n，這兩個數互為近似值。更加精確地： lim_n rightarrow infty frac nsqrt 2pi n left frac nerightn 1 或 lim_n rightarrow infty frac en nnn sqrt n sqrt 2 pi 歷史 這個公式是亞伯拉罕棣莫弗首先發現的，形式為： displaystyle n approx c nnfrac 12 en，其中 c 為常數。 證明了公式中 csqrt 2pi，約為。更加精確的形式是雅克比內發現的。 推導 方法一 這個公式，以及誤差的估計，可以推導如下。首先不直接估計 n，而是考慮它的自然對數： ln n ln 1 ln 2 cdots ln n 即 ln n frac ln n2 ln 1 ln 2 cdots ln n frac ln n2 這個方程的右面是積分 int_1n ln xdx n ln n n 1 的近似值（利用梯形法則），而它的誤差由尤拉 麥克勞林公式給出： ln n frac ln n2 ln 1 ln 2 cdots ln n1 frac ln n2 n ln n n 1 sum_k2m frac B_k 1kk k1 left frac 1nk1 1 right R_mn 其中 Bk 是伯努利數，Rmn 是尤拉 麥克勞林公式中的餘項。取極限，可得： lim_n to infty left ln n n ln n n frac ln n2 right 1 sum_k2m frac B_k 1kk k1 lim_n to infty R_mn 把這個極限記為 y。由於尤拉 麥克勞林公式中的餘項 Rmn 滿足： R_mn lim_n to infty R_mn O left frac 1n2m1 right 其中用到了大 O 符號，與以上的方程結合，便得出對數形式的近似公式： ln n n ln left frac ne right frac ln n2 y sum_k2m frac B_k 1kk k1 nk1 O left frac 1n2m1 right 兩邊取指數，並選擇任何正整數 m，便得到了一個含有未知數 ey 的公式。當 m1 時，公式為： n ey sqrt nleft frac ne rightn left 1 O left frac 1n right right 將上述表示式代入沃利斯乘積公式，並令 n 趨於無窮，便可以得出 ey（ey sqrt 2 pi）。因此，我們便得出斯特林公式： n sqrt 2 pi nleft frac ne rightn left 1 O left frac 1n right right 這個公式也可以反覆使用分部積分法來得出，首項可以透過最速下降法得到。把以下的和 ln n sum_j1n ln j 用積分近似代替，可以得出不含 sqrt 2 pi n 的因子的斯特林公式（這個因子通常在實際應用中無關）： sum_j1n ln j approx int_1n ln x dx nln n n 1 方法二 考慮如下近似關係： begin alignln nsum_k1nln kapproxint_1nln xmathrm dxnln nn1approx nln nnend align 以及階乘的積分形式（Γ 函式）： nint_0inftymathrm ex xnmathrm dx 其中被積函式取對數後求導結果可寫成： frac mathrm dmathrm dxln mathrm ex xnfrac mathrm dmathrm dxnln xxfrac nx1 因此被積函式只有在 xn 附近才趨於平穩，現令 xequiv nxi 且 xill n，並改寫成如下形式： ln xnmathrm exnln xxnln nxinxi 於是有： begin alignln nxilnleft nleft 1fracxi nrightrightln nlnleft 1fracxi nrightln nfracxi nfrac xi22n2cdotsend align 因此可以得到： begin alignln xnmathrm exnln nxinxinln nxifrac xi22nnxicdotsnln nnfrac xi22ncdotsend align 兩邊同時作指數函式運算，變成： begin align xnmathrm exapproxmathrm enln nmathrm enmathrm efrac xi22nnnmathrm enmathrm efrac xi22nend align 代入到階乘的積分表示形式，得到： begin align napproxint_ninfty nnmathrm enmathrm efrac xi22nmathrm dxiapprox nnmathrm enint_inftyinftymathrm efrac xi22nmathrm dxiend align 約等號後側得到的是高斯積分的形式，計算該積分得出斯特林公式： napprox nnmathrm ensqrt 2pi n 收斂速率和誤差估計 更加精確的近似公式為： n sqrt 2 pi n left frac nerightn elambda_n 其中： frac 112n1 lambda_n frac 112n 斯特林公式實際上是以下級數（現在稱為斯特林級數）的第一個近似值： nsqrt 2pi nleft nover erightn left 1 1over12n 1over288n2 139over51840n3 571over2488320n4 cdots right 當 n to infty 時，截斷級數的誤差等於第一個省略掉的項。這是漸近展開式的一個例子。它不是一個收斂級數；對於任何特殊值 n，級數的準確性只在取有限個項時達到最大，如果再取更多的項，則準確性將變得越來越差。 階乘的對數的漸近展開式也稱為斯特林級數： ln nnln n n 1over 2ln 2pi n 1over12n 1over360n3 1over1260n5 1over 1680n7 cdots 在這種情況下，級數的誤差總是與第一個省略掉的項異號，且最多同大小。 伽瑪函式的斯特林公式 對於所有正整數，有： n Pi n Gamma n1 然而，伽瑪函式與階乘不一樣，它對於所有複數都有定義。儘管如此，斯特林公式仍然適用。如果 Re z 0，那麼： ln Gamma z left zfrac12rightln z z frac ln 2 pi2 2 int_0infty frac arctan frac tzexp 2 pi t1 dt 反覆使用分部積分法，可得以下漸近展開式： ln Gamma z left zfrac12rightln z z frac ln 2 pi2 sum_n1infty frac 1n1 B_n2n 2n1 z2n1 其中 Bn 是第 n 個伯努利數。當 arg z pi epsilon，其中 ε 是正數時，這個公式對於絕對值足夠大的 z 是適用的，當使用了最初 m 個項時，誤差項為 Oleft zm frac 12right。對應的近似值可以寫為： Gamma z sqrt frac 2 pizleft frac ze rightz left 1 O left frac 1z right right 斯特林公式的收斂形式 欲得出斯特林公式的一個收斂形式，我們必須計算： int_0infty frac 2arctan frac tzexp 2 pi t1 dt lnGamma z left zfrac12 right ln z z frac12ln 2pi 一種方法是利用含有上升階乘冪的級數。如果 zoverline n z z1 cdots zn1，那麼： int_0infty frac 2arctan frac tzexp 2 pi t1 dt sum_n1infty frac c_nz1overline n 其中： c_n frac 1n int_01 xoverline n left xfrac12 right dx 從中可以得出斯特林級數的一個收斂形式： ln Gamma z left zfrac12 right ln z z frac ln 2 pi2 frac 112 z1 frac 112 z1z2 frac 59360 z1z2z3 frac 2960 z1z2z3z4 cdots 它在 Re z0 時收斂。 適用於計算器的形式 以下的近似值 Gamma z approx sqrt frac 2 piz left frac ze sqrt z sinh frac 1z frac 1810z6 rightz 或 2 ln Gamma z approx ln 2 pi ln z z left 2 ln z ln left z sinh frac 1z frac 1810z6 right 2 right 可以透過把斯特林公式整理，並注意到它的冪級數與雙曲正弦函式的泰勒級數展開式的相似性來得出。當 z 的實數部分大於 8 時，這個近似值精確到小數點後 8 位。2002 年，Robert H Windschitl 建議計算器用這個公式來計算伽瑪函式。 Gergő Nemes 在 2007 年提出了一個近似公式，它的精確度與 Windschitl 的公式相等，但更加簡單： Gamma z approx sqrt frac 2 piz left frac 1e left z frac 112z frac 110z right rightz 或 ln Gamma z approx frac 12 left ln 2 pi ln z right z left ln left z frac 112z frac 110z right1right 參考文獻 Abramowitz M and Stegun I Handbook of Mathematical Functions httpwwwmathhkbueduhksupportaandstochtm 夏慧異，章家順，史特靈公式在高等數學中的應用，httpordostsgorgcn1080KCMSdetaildetailaspxfilenameXUSJ200904014dbcodeCJFRdbname Paris R B and Kaminsky D Asymptotics and the MellinBarnes Integrals Cambridge University Press 2001 Whittaker E T and Watson G N A Course in Modern Analysis fourth edition Cambridge University Press 1963 ISBN 0521588073 modified 2006 Category 逼近 Category 漸近分析 Category 解析數論 Category 伽瑪及相關函式 Category 分析定理