湯朝紅 肖發(fā)新
Excel不僅是制表軟件,而且是一種功能強(qiáng)大的數(shù)據(jù)統(tǒng)計(jì)和分析工具,能進(jìn)行復(fù)雜的公式運(yùn)算。對(duì)于物理中的極值問(wèn)題,我們既可以通過(guò)Excel所繪制的函數(shù)圖像直接讀出,也可以利用“規(guī)劃求解”功能快速、準(zhǔn)確地加以解決。我們以一個(gè)常見(jiàn)的拋體問(wèn)題為例,說(shuō)明如何使用Excel通過(guò)兩種不同的方法解決物理極值問(wèn)題。
我們知道,在忽略空氣阻力的情況下,從水平面斜向上拋出的物體,其水平射程在拋射角 =45°時(shí)最遠(yuǎn)。更為常見(jiàn)的情形是從距地面一定高度的地方斜向上拋出,此時(shí)最佳拋射角與拋射速度和拋射高度這兩個(gè)初始條件的大小有關(guān)。在這種情況下,拋射角取多少時(shí)水平射程最大呢?我們列出水平和豎直兩個(gè)方向上的運(yùn)動(dòng)方程:
如果我們將水平射程理解為兩部分水平位移之和,即由和組成(圖1)。第一部分表示=0時(shí)的水平射程。第二部分表示從高度為的地方斜向下拋向地面所產(chǎn)生的水平位移。當(dāng)拋射角=45°時(shí),取得最大值,但此時(shí)進(jìn)行斜下拋時(shí)具有較大的豎直速度,無(wú)法取得最大值;如果為了增大而取一個(gè)小于45°的,又無(wú)法取得最大值,因此應(yīng)介于0°和45°之間。對(duì)于給定的和,我們可以利用(3)式求出最佳的拋射角和的最大值。
以=15.0m/s,=25.0m為例,我們將利用Excel的繪圖功能和“規(guī)劃求解”功能,使用兩種不同的方法求解上述條件下的最佳拋射角和水平射程 的最大值。
一、圖像求解法
1.在A1單元格中輸入“ ”, A2、A3單元格分別輸入“0”、“1”,用鼠標(biāo)選中A2和A3單元格,將鼠標(biāo)移到A3的右下角,當(dāng)鼠標(biāo)的符號(hào)變?yōu)椤?”時(shí),按住鼠標(biāo)向下拖,Excel會(huì)自動(dòng)地以公差為1的等差數(shù)列來(lái)填充,直到A47,此時(shí)A47單元格中的數(shù)值為45。
2.在B1單元格中輸入“ ”,在B2單元格中依據(jù)上文(3)式輸入公式“=15*15/(2*9.8)*(sin(2*A2/180*3.14)+SQRT(sin(2*A2/180*3.14)^2+8*9.8*25/(15*15)*cos(A2/180*3.14)^2))”,回車確定。選中B2單元格,將鼠標(biāo)移到B2的右下角,當(dāng)鼠標(biāo)的符號(hào)變?yōu)椤?”時(shí),按住鼠標(biāo)一直向下拖到B47單元格內(nèi),Excel自動(dòng)計(jì)算出了每一個(gè)對(duì)應(yīng)的值。
3.選取A、B兩列數(shù)據(jù),依次點(diǎn)擊菜單[插入]—[圖表],即出現(xiàn)[圖表向?qū)窗口,在[圖表類型]中選擇[X、Y散點(diǎn)圖],在[子圖表類型]中選擇[無(wú)數(shù)據(jù)點(diǎn)平滑線散點(diǎn)圖],點(diǎn)擊[下一步],在相應(yīng)位置輸入圖表名稱、坐標(biāo)軸名稱,點(diǎn)擊[完成]。接下來(lái),我們可以對(duì)圖表的繪圖區(qū)、坐標(biāo)軸和網(wǎng)格線等部分進(jìn)行相應(yīng)的修改,直至如圖2所示。
觀察圖2,我們可以發(fā)現(xiàn)在28ο~30ο之間有最大值,可以用Excel的查找功能在數(shù)據(jù)區(qū)域找到精確值?;蛘咴趫D像中直接用鼠標(biāo)指向曲線的最頂端,此時(shí)在鼠標(biāo)的右下方會(huì)顯示相應(yīng)的精確值。結(jié)果表明當(dāng)=29°時(shí),有最大值40.927m。
二、“規(guī)劃求解”法
用上面的圖像法求得的=29°和Xmax其實(shí)是一個(gè)近似解,利用Excel提供的“規(guī)劃求解”功能則可以求出拋射角的精確解。Excel的“規(guī)劃求解”允許我們根據(jù)目標(biāo)函數(shù)及其約束條件自動(dòng)調(diào)整多個(gè)變動(dòng)因素,以期找到問(wèn)題的最優(yōu)解,從而方便地解決許多物理極值問(wèn)題。下面仍以=15.0m/s,=25.0m為例,方法如下:
在A1單元格中輸入變量“ ”,在B1單元格中輸入上文(3)式的表達(dá)式:“=15*15/(2*9.8)*(sin(2*A1/180*3.14)+SQRT(sin(2*1/180*3.14)^2+8*9.8*25/(15*15)*cos(1/180*3.14)^2))”,回車確定。
“規(guī)劃求解”功能在默認(rèn)情況下是沒(méi)有安裝的,我們首先必須進(jìn)行安裝。選擇[工具]菜單中[加載宏]選項(xiàng),在安裝提示下裝入[規(guī)劃求解](注意要插入安裝盤)。也可以將安裝盤中[Pfiles]—[Office]—[Library]下的[Solver]文件夾及其目錄下的Solver.xla、Solvr32.dll復(fù)制到Office安裝目錄[Office]—[Library]下,然后加載即可。
在[工具]菜單中選擇[規(guī)劃求解],在彈出的[規(guī)劃求解參數(shù)]對(duì)話框中通過(guò)點(diǎn)擊B1單元格,使[目標(biāo)單元格]出現(xiàn)$B$1的絕對(duì)引址。鑒于我們要求解的是最大值,于是在[等于]中選擇[最大值]。在[可變單元格]中通過(guò)點(diǎn)擊A1單元格,使之在框內(nèi)出現(xiàn)$A$1的絕對(duì)引址。在[約束]處按[添加],在隨后出現(xiàn)的[添加約束]對(duì)話框中的[單元格引用位置]處點(diǎn)擊A1單元格使之出現(xiàn)$A$1,在后面的框內(nèi)選“<=”,“約束值”填入45,最后得到“$A$1<=45”。與之類似,添加約束條件“$A$1>=0”(圖3)。
最后,點(diǎn)擊[求解]按鈕,選[保存規(guī)劃求解結(jié)果],按[確定]。我們?cè)贏1和B1單元格得到了29.306和40.928兩個(gè)精確解,即當(dāng)=29.306°時(shí), 有最大值40.928m。