Scratch編程:牛頓的蘋果——地心引力


牛頓的蘋果

同學們,你們知道牛頓的蘋果的故事嗎?

傳說1665年秋季,牛頓坐在自家院中的蘋果樹下苦思着行星繞日運動的原因。這時,一只蘋果恰巧落下來,它落在牛頓的腳邊。就是這個偶爾的瞬間,牛頓發現了蘋果下落的原因——地心引力的作用。

從此,這個蘋果被視為科學探索精神的象征。那么,同學們,我們也來探索一下,我們在Scratch中,如何模擬物體的下落?

就像牛頓發現了蘋果下落的道理一下,我們需要對於重力的效果進行模擬從而制作出來下落的過程。

牛頓的蘋果——地心引力

對於簡單的程序,可使用均速下降的方式。即每隔一段進行將Y坐標增加一個固定的值,就可以了。

對於一些要求比較高的程序,需要使用算法來進行比較准確的模擬。

 

在重力的作用下運動,一般稱為自由落體。根據物理學的知識,物體從0速度開始的自由落體,使用如下的公式進行描述:

牛頓的蘋果——地心引力

式中的t為時間,一般單位為秒; s為位移(或者說下降的距離)單位為米;u為速度,單位為米/秒; 其中的g為重力加速度,單位為米/秒^2,體現了重力對於自由落體的影響。在不同的星球上,重力加速度的數值是不同的。

在地球上,重力加速度的數值約為9.81米/秒^2,而在月球上,重力加速度的數值約為1.633米/秒^2。所以在月球上,自由落體的下落速度會比地球上慢得多。

我們再對上面的兩個公式進行一點深入的解釋。

第一個公式表示了自由落體下降速度隨時間的變化。也就是“速度=時間*加速度”,所以物體在自由下落的過程中,速度會越來越快,而如果加速度大,則相同時間下速度變化得更大。

速度與時間之間是直線的關系。

牛頓的蘋果——地心引力

位移與時間的關系則是一條拋物線,可以看到隨時間的增加,位移變化得越來越快。在1秒時,下降了4.9米,而在2秒時,已下降了19.6米。牛頓的蘋果——地心引力

在我們的程序中,應該如何對重力進行模擬呢?

下面我們在Scratch中模擬一個小球的下落,來檢查算法的正確性。

基本程序如下,放置一個小球。編寫如下的程序。

牛頓的蘋果——地心引力

當然,上面這個程序是勻速下降的,下面我們對自由落體的加速過程進行模擬。

方法1:直接使用位移公式

牛頓的蘋果——地心引力

結果如下,可以看到球運動得越來越快。如果改變時間的間隔,能夠使得位置變化的更平滑一些。如果改變加速度g,就可以看到下降的速度會增快或減慢。

牛頓的蘋果——地心引力

應該說明,這里直接使用下降的距離作為Y值的變化,即將一個像素當成了1米,可以看到10秒鍾下降了397米,即397個像素。

方法2  考慮速度的變化

上面這種方法對於一次下落是很好的,但如果涉及到反彈等的模擬,還是需要考慮速度的變化。

這時使用的公式實際上是在每個時間的間隔Δt時,速度都增加g*Δt,而在同時,位移基本上變化Δt*u。這樣就可以比較靈活地對拋物等進行模擬了。例如下面的程序就可以完成彈球的模擬。

牛頓的蘋果——地心引力

其中tstep為時間間隔,xSpeed為X方向運行的速度,0.95表示每次反彈,速度都降為原來的0.95倍(模擬損失了能量)。

效果如下:

牛頓的蘋果——地心引力

可以看到,模擬了自由落體的彈跳。

 

總結

 

 

 

結論:

 

1    模擬重力是很多程序中需要使用的功能。

2    根據自由落體的公式,給出了在SCRATCH中模擬自由落體的實現方式。

3    使用自由落體的算法,可以准確地模擬物體的下落過程及彈跳過程等。

4    數學和物理是進行程序模擬的基礎,為了更好地對自然界進行模擬,學好數學和物理是必須的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM