曹 盼
(安塞縣高級中學,陜西 安塞 717400)
小氣球在空氣中豎直下落在生活中很常見,涉及變化阻力問題.高中一般只要求定性分析速度和加速度的變化以及計算收尾速度.再進一步,位移、速度和加速度隨時間變化的具體規(guī)律是什么?
模擬的思路很簡單:在“足夠短的時間內”可以認為小氣球的加速度(或速度)不變,只需把小氣球的運動分成幾百小段進行計算,這就需要計算機工具.像功能強大(有點傻瓜式)的Matlab和Scilab,還有比較繁瑣的Excel都可以做到,本文采用更自由的C/C++和Win32API的繪圖功能[2].
筆者對Win32API框架和繪圖功能進行了封裝,這樣便于將重點放在物理分析上,繪圖時只需包含#include"./lib/core.h"和實現(xiàn)voiddraw(const HDC hDC)即可.程序一共有1個函數(shù)和2個過程,下面結合源代碼做簡單的分析:
(3)實現(xiàn)繪圖過程,這是筆者簡化的Win32API程序框架實現(xiàn)的“入口”,并調用封裝的基本繪圖類PDrawWidget,在常用的坐標系下思考.繪圖時先將坐標區(qū)域設置為x軸0~1,y軸0~1.2,然后將時間和速度對用直線連接起來,注釋掉的行可以顯示鼠標在圖像上的對應值,可以對相關物理量進行估計.
(1)速度.先做加速度減小的加速運動,約0.4s達到收尾速度(通過鼠標位置觀察到)1.04m/s.當a=0時計算得1.05m/s,與理論相符合,如圖1.
圖1
圖2
(2)加速度.加速度先快速減小再緩慢減小,最終變?yōu)榱?,如圖2.(算法簡介:增加變量a1,a2,aData直接計算每一步的加速度)
圖3
(3)位移.開始有一小段加速然后勻速,2s內的位移約為2m.拿該氣球舉過頭頂約2m高度從靜止釋放,使用電子停表計時,落地時間和模擬計算結果符合的很好,如圖3.(算法簡介:增加變量s1,s2,sData然后根據(jù)s2=s1+v1*dt或s2=s1+v2*dt[3]計算每一步的位移,每一步當成勻速直線運動).(4)如果以2m/s的初速度將小氣球向上拋出,約0.116s到達最高點,此時的加速度為-9.8m/s2與理論分析一致,如圖4和圖5.(算法簡介:只需修改加速度的表達式即可)
圖4
圖5
Dirac曾說,在理解一個方程時,“如果我沒有實際解一個方程而對其解的特性已有一種估計辦法,那我就懂得了該方程的意義.”因此,若我們無需實際解那個方程而對在給定情況下會發(fā)生什么便已有一種了解的辦法,則我們便算“理解”了應用到這些情況上的那個方程了.
在高中的水平上理解復雜問題的物理本質,不僅有利于應用物理概念和規(guī)律,還有利于與生活進行聯(lián)系.數(shù)學是理解物理的工具,計算機也是.隨著物理問題研究的深入和計算機的普及,計算物理已經(jīng)和理論物理、實驗物理一起成為重要的研究領域.數(shù)值計算的核心是算法設計,一般情況“足夠短時間”越小越好,但考慮到機械能守恒等限制,有些問題必須設計更適當?shù)乃惴ǎ?].本文介紹的方法對于常(偏)微分方程的教學策略也有參考意義,學生先獲得解的直觀概念比一開始就來數(shù)學推導要有效,參見《F e y n ma n物理學講義(第1卷)》關于天體運動軌跡的做法.
1 趙凱華.定性與半定量物理學(2版).北京:高等教育出版社,2008.
2 (美)Charles Petzold著,方敏等譯.Windows程序設計(5版).北京:清華大學出版社,2010.9.
3 Nicholas J.Giordano,Hisao Nakanishi.Computational Physics(2rd ed).北京:清華大學出版社(影?。?007.12.
4 鄧宏偉.用Excel軟件計算大擺角單擺的周期.物理教師,2013,(5):62