今天早上同学问了我有关伽马函数和n维空间的球体积之间的关系,我记得我以前想要研究,但是并没有落实。既然她提问了,那么就完成这未完成的计划吧。

标准思路 #

简单来说,n维球体积就是如下n重积分
V_n(r)=\int_{x_1^2+x_2^2+\dots+x_n^2\leq r^2}dx_1 dx_2\dots dx_n
用更加几何的思路,我们通过一组平行面(n-1维的平行面)分割,使得n维球分解为一系列近似小柱体,因此,可以得到递推公式
V_n (r)=\int_{-r}^r V_{n-1} \left(\sqrt{r^2-t^2}\right)dt
t=r\sin\theta_1,就有
V_n (r)=r\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}} V_{n-1} \left(r\cos\theta_1\right)\cos\theta_1 d\theta_1
迭代一次就有
V_n (r)=r^2\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}}\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}} V_{n-2} \left(r\cos\theta_1\cos\theta_2\right)\cos\theta_1\cos^2\theta_2 d\theta_1 d\theta_2
迭代n-1
\begin{aligned}V_n (r)=&r^{n-1}\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}}\dots\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}}\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}} V_1\left(r\cos\theta_1\cos\theta_2\dots \cos\theta_{n-1}\right)\times\\ &\cos\theta_1\cos^2\theta_2\dots\cos^{n-1}\theta_{n-1} d\theta_1 d\theta_2\dots d\theta_{n-1}\end{aligned}
其中V_1 (r)=2r,即两倍半径长的线段。从而
V_n (r)=2r^{n}\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}}\dots\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}}\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}} \cos^2\theta_1\cos^3\theta_2\dots\cos^{n}\theta_{n-1} d\theta_1 d\theta_2\dots d\theta_{n-1}
完成这个积分,最终就得到n维球体积的公式,这个积分自然是可以求出来的(只是n-1个一维积分的乘积)。但是这样的步骤太不容易了,为了将其跟伽马函数联系起来,还要做很多工作。总的来说,这是一个不容易记忆、也不怎么漂亮的标准方法。

绝妙思路 #

有一个利用高斯积分的绝妙技巧,能够帮助我们直接将球体积跟伽马函数联系起来,整个过程堪称鬼斧神工,而且给人“仅此一家,别无分号”的感觉。据说这个技巧为物理系学生所知晓,我是从百读文库看到的,原始来源则是《热力学与统计力学》顾莱纳(德),例5.2 理想气体的熵的统计计算。

这一绝妙的思路,始于我们用两种不同的思路计算高斯积分
G(n)=\int_{-\infty}^{+\infty}\dots\int_{-\infty}^{+\infty}\int_{-\infty}^{+\infty} \exp\left(-x_1^2-x_2^2-\dots-x_n^2\right)dx_1 dx_2 \dots dx_n\tag{1}
一方面,将(1)当作n次累次积分,因为我们已经算得(可以参考这里
\int_{-\infty}^{+\infty}\exp(-t^2)dt=\sqrt{\pi}
(1)只不过是这样的n个积分的乘积,因此
G(n)=\pi^{n/2}\tag{2}
另一方面,将(1)当作n重积分,由于积分变量只是跟径向长度r=\sqrt{x_1^2+x_2^2+\dots+x_n^2}有关的变量,因此很容易联想到球坐标,在n维空间中,可以称为“超球坐标”,不需要将超球坐标完整写出来,只需要注意到,球内的积分,可以化为先对“球壳”进行积分,然后再对球半径进行积分。
G(n)=\int_{0}^{+\infty}dr\int_{S_n(r)}\exp\left(-r^2\right)dS_n\tag{3}
这里的S_n(r)是半径为rn维球体表面(以及表面积,在不至于混淆的情况下,这里不作区分)。但是注意到,被积函数只跟r有关,因此对球表面进行积分,等价于原函数乘以球的表面积而已,因此(2)式的结果为
G(n)=\int_{0}^{+\infty}dr\exp\left(-r^2\right)S_n(r)\tag{4}
虽然我们不知道n维球的体积和表面积公式,但是我们可以肯定,n维球的体积一定正比于r^n,即有
V_n (r)=V_n(1)r^n
球的表面积,就是球体积的一阶导数(考虑球壳分割),那么
S_n (r)=n V_n(1)r^{n-1}
代入(4),得到
\begin{aligned}G(n)=&n V_n(1)\int_{0}^{+\infty}r^{n-1}\exp\left(-r^2\right)dr\\ =&\frac{1}{2}n V_n(1)\int_{0}^{+\infty}(r^2)^{n/2-1}\exp\left(-r^2\right)d(r^2)\\ =&\frac{1}{2}n V_n(1)\int_{0}^{+\infty}z^{n/2-1}\exp\left(-z\right)dz\quad\left(z=r^2\right)\\ =&\frac{1}{2}n V_n(1)\Gamma\left(\frac{n}{2}\right)\end{aligned}\tag{5}
结合(2)
\pi^{n/2}=G(n)=\frac{1}{2}n V_n(1)\Gamma\left(\frac{n}{2}\right)
从而
V_n(1)=\frac{\pi^{n/2}}{\frac{1}{2}n\Gamma\left(\frac{n}{2}\right)}=\frac{\pi^{n/2}}{\Gamma\left(\frac{n}{2}+1\right)}
最后
V_n(r)=\frac{\pi^{n/2}}{\Gamma\left(\frac{n}{2}+1\right)}r^n
就这样得到了n维球体积公式!!对r求导得到n维球表面积公式
S_n(r)=\frac{2\pi^{n/2}}{\Gamma\left(\frac{n}{2}\right)}r^{n-1}
结合前后两个方法,就得到
\frac{\pi^{n/2}}{\Gamma\left(\frac{n}{2}+1\right)}=2\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}}\dots\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}}\int_{-\frac{\pi}{2}}^{\frac{\pi}{2}} \cos^2\theta_1\cos^3\theta_2\dots\cos^{n}\theta_{n-1} d\theta_1 d\theta_2\dots d\theta_{n-1}

简单评述 #

该技巧相当漂亮、简洁,其中高斯积分、球坐标变换这些都是物理系学生很熟悉的,只需简单峰回路转,就把结果给算了出来,这俨然就是只有物理系学生才能想出来的绝妙思路!

更妙的是,我们发现这一思路如此奇妙,以至于我们想用它来做更多的事情,但是稍微研究之后就会得到结论:不能再做什么了!也就是说,整个过程似乎就只为计算n维球体积而订制的!真的是“只此一家,别无分号”!妙哉~~

转载到请包括本文地址:https://spaces.ac.cn/archives/3154

更详细的转载事宜请参考:《科学空间FAQ》

如果您还有什么疑惑或建议,欢迎在下方评论区继续讨论。

如果您觉得本文还不错,欢迎分享/打赏本文。打赏并非要从中获得收益,而是希望知道科学空间获得了多少读者的真心关注。当然,如果你无视它,也不会影响你的阅读。再次表示欢迎和感谢!

如果您需要引用本文,请参考:

苏剑林. (Dec. 23, 2014). 《鬼斧神工:求n维球的体积 》[Blog post]. Retrieved from https://spaces.ac.cn/archives/3154

@online{kexuefm-3154,
        title={鬼斧神工:求n维球的体积},
        author={苏剑林},
        year={2014},
        month={Dec},
        url={\url{https://spaces.ac.cn/archives/3154}},
}