用python计算球体积,计算球的表面积和体积的程序Python
今天早上同学问我$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 _ 1d \ 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 _ 1d \ 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 _ 1d \ 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 _ 1d \ theta _ 2 \ dots d \ theta _ { n-1 } $ $
完成这个积分后,最终得到$n$维球体体积的公式。这个积分自然可以算出来(只是$n-1$一维积分的乘积)。但是这样的一步并不容易,需要做大量的工作来连接gamma函数。总的来说,这是一个不容易记住,也不那么美观的标准方法。
绝妙的主意#
有一个与拉长的鞋子整合的奇妙技巧,可以帮助我们直接将球的体积与伽玛函数联系起来。整个过程诡异,给人“仅此一家,别无分号”的感觉。据说这个技能是物理系学生都知道的。我是从百书馆看的,原始出处是《热力学与统计力学》 cdbd(德国)。例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 2x _ 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)$是半径为$r$的$n$维球面的曲面(这里不区分表面积,以免混淆)。但需要注意的是,被积函数只与$r$有关,所以对球的表面进行积分相当于原函数乘以球的表面积,所以$(2)$公式的结果为
$$g(n)=\int_{0}^{ \infty}dr\exp\left(-r^2\right)s_n(r)\tag{4}$$
虽然我们不知道$n$维球体的体积和表面积的公式,但是我们可以确定$n$维球体的体积一定和$ r n $成正比,也就是有
$ $ r)=v_n(1)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 } v_n(1)\int_{0}^{ \infty}(r^2)^{n/2-1}\exp\left(-r^2\right)d(r^2)\\
=\ frac { 1 } { 2 } 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 \右)}$$
最后
$$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 _ 1d \ theta _ 2 \ dots d \ theta _ { n-1 } $ $
简短评论#
这个手法相当漂亮简洁,其中拉长的鞋积分和球坐标变换是物理系学生比较熟悉的。只要简单的转一下,就能算出结果,就像只有物理系学生才能想出的绝妙主意一样!
更妙的是,我们发现这个想法太奇妙了,以至于我们想用它做更多的事情,但稍微研究一下,我们就会得出结论,我们不能再做更多的事情了!也就是说整个过程好像只是为了计算$n$维球体的体积而定制的!真的是“只此一家,别无分号”!精彩~ ~
更多详情,请咨询:《科学空间FAQ》
如果你有任何疑问或建议,请在下面的评论区继续讨论。
如果你觉得这篇文章不错,请分享/打赏。打赏不是从中获取利益,而是要知道科学空间受到了多少读者真诚的关注。当然,如果你忽略了,也不会影响你的阅读。再次表示欢迎和感谢!
报酬
微信打赏
支付宝奖励
因为网站后台没有打赏的记录,欢迎大家在打赏时留下评论。您也可以点击这里或在下面的评论区留言,告知您的建议或需求。
如果需要引用这篇文章,请参考:
ajdyx。(2014年12月23日)。《鬼斧神工:求n维球的体积》[博文]。从https://spaces.ac.cn/archives/3154取回
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。