由鐵塊碰撞出來(lái)的圓周率計(jì)算方法

作者:亞馬遜的蝴蝶(Butterfly_of_Amazon)



果殼上有一篇文章《這一切要從碰撞的滑塊和量子搜索講起》,指出圓周率π與滑塊碰撞次數(shù)有種奇妙的關(guān)系。今天給大家說(shuō)說(shuō)為什么會(huì)有這樣的奇妙關(guān)系。

一、奇妙的關(guān)系

在光滑的平面上放著兩個(gè)1 kg的滑塊,在它們的左側(cè)有一面堅(jiān)固且不可移動(dòng)的墻。兩個(gè)滑塊一個(gè)離墻近一些,一個(gè)遠(yuǎn)一些,而且后者正在向前者滑去??梢韵胂螅酉聛?lái)將會(huì)產(chǎn)生許多次碰撞。假設(shè)每次碰撞時(shí)都沒(méi)有動(dòng)能損失,整個(gè)過(guò)程將像下面圖中展示的那樣:

圖1

右側(cè)的滑塊碰撞左側(cè)的滑塊,并將全部動(dòng)量轉(zhuǎn)移給左側(cè)滑塊,左側(cè)滑塊碰到墻反彈回來(lái),再與右側(cè)滑塊發(fā)生碰撞并將動(dòng)量全部轉(zhuǎn)移過(guò)去。期間左側(cè)滑塊一共發(fā)生了3次碰撞。如果我們?cè)龃笥覀?cè)滑塊的質(zhì)量,會(huì)發(fā)現(xiàn)有趣的事情:將右側(cè)滑塊質(zhì)量換成100 kg,那每次碰撞時(shí)只會(huì)有一小部分動(dòng)量發(fā)生轉(zhuǎn)移,將會(huì)碰撞31次;如果將右側(cè)滑塊質(zhì)量換成10000kg,那整個(gè)過(guò)程將發(fā)生314次碰撞。

不斷100倍100倍地增加右側(cè)滑塊質(zhì)量,你會(huì)發(fā)現(xiàn)神奇的現(xiàn)象:總碰撞次數(shù)與π每一位的數(shù)字越來(lái)越接近。

圖2

二、這是真的嗎

是不是很神奇?我通過(guò)計(jì)算,驗(yàn)證100kg、10000kg和1000000kg的情況,發(fā)現(xiàn)都與這個(gè)結(jié)論相符。驗(yàn)證過(guò)程如下:

圖3

設(shè)滑塊a和滑塊b的質(zhì)量分別為ma和mb,速度為va和vb。速度隨著碰撞而改變,設(shè)兩個(gè)滑塊間發(fā)生第n次碰撞后的速度分別為va,n和vb,n。

由于碰撞過(guò)程中沒(méi)有動(dòng)能損失,因此滑塊a碰撞左側(cè)墻壁后,速度將大小不變,方向相反。結(jié)合動(dòng)量守恒定律,可列下式:

-mava,n-1 + mbvb,n-1 = mava,n + mbvb,n ........①

因?yàn)榕鲎策^(guò)程中總動(dòng)能不變,可列下式:

mav2a,n-1 + mbv2b,n-1 = mav2a,n + mbv2b,n ...②

設(shè)mb = K·ma(圖2中K為1000000,圖3中K為100),由式①、②計(jì)算可得:

式③
式④

當(dāng)vb,n為負(fù),且|va,n|<=|vb,n|時(shí),兩個(gè)滑塊將不再發(fā)生碰撞,此時(shí)如果va,n>0,則滑塊a還將與墻壁碰撞一次。將式③、④寫(xiě)成Excel表格中公式,設(shè)vb初始速度為1,通過(guò)拖拽可方便地得到下表(表中以K=100為例):

以表1中vb為縱坐標(biāo),va為橫坐標(biāo),可得下面半圓圖形:

圖4

細(xì)心的你可能已經(jīng)看出:上圖并不是真正的半圓,因?yàn)閳D中橫坐標(biāo)最大值是10,而縱坐標(biāo)最大值是1,需要把縱坐標(biāo)乘以10才是真正的半圓。為了方便描述,姑且把它稱為半圓。

三、為什么會(huì)這樣

為什么圓周率π與滑塊碰撞次數(shù)之間有這樣奇妙的關(guān)系?計(jì)算告訴你答案。

先問(wèn)一個(gè)問(wèn)題:根據(jù)表1中的數(shù)據(jù),如何估算圖4半圓的上半部分(也就是四分之一個(gè)圓)的面積S?

可能你已經(jīng)想到了:可以把這四分之一個(gè)圓近似看成由8(約為n的最大值的一半)個(gè)豎長(zhǎng)條組成,每個(gè)豎條的寬是相鄰兩點(diǎn)間的橫坐標(biāo)距離,也就是相鄰兩次碰撞后滑塊a的速度差,高是這兩點(diǎn)縱坐標(biāo)的平均值,也就是相鄰兩次碰撞后滑塊b的平均速度。將這8個(gè)豎條的面積之和當(dāng)作S的近似值,雖然與真實(shí)值存在偏差,但通過(guò)增加圓上點(diǎn)的數(shù)量,也就是增加碰撞數(shù)量,從而增加豎條數(shù)量,可以減小偏差。

設(shè)碰撞次數(shù)的最大值為N,可列下式:

式⑤

再換個(gè)角度:把S近似為8個(gè)橫條的面積之和,每個(gè)橫條的高是相鄰兩點(diǎn)間的縱坐標(biāo)距離,寬是這兩點(diǎn)橫坐標(biāo)的平均值??闪邢率剑?/p>

式⑥

⑤+⑥,得:

式⑦

將③、④代入⑦,得:

式⑧

因?yàn)槭舰?、mb=K×ma、vb初始值=1,所以

式⑨

故,式⑧ =>
式⑩

由式⑨可知,所有坐標(biāo)為 (va,√K·vb) 的點(diǎn)位于一個(gè)半徑為 √K 的圓上,此圓的面積為 K×π ;而S為此圓縱坐標(biāo)被壓扁到 1/√K 后面積的四分之一,因此有:

將⑩代入S,并考慮到在K非常大時(shí),K/(K+1)≈1,可得:

N是兩個(gè)滑塊在前半程中相互碰撞的次數(shù),后半程兩個(gè)滑塊相互碰撞次數(shù)也為N,滑塊a與墻壁碰撞的次數(shù)為2N,故4N的整數(shù)部分即為總碰撞次數(shù)。這就是為什么圓周率π與滑塊碰撞次數(shù)之間有這樣的奇妙關(guān)系!

前面出現(xiàn)的式⑤提供了一個(gè)迭代計(jì)算圓周率π的方法。我通過(guò)迭代計(jì)算785次矩形面積,將圓周率精確到了小數(shù)點(diǎn)后5位(3.14159),計(jì)算過(guò)程中借助了Excel表格,有興趣的朋友可以試試。


看完說(shuō)點(diǎn)兒什么吧,要不點(diǎn)一下贊或踩一腳也行。您的任何一點(diǎn)兒反饋都能給我?guī)椭?,謝謝!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容