鄧宇龍
(湖南科技學(xué)院數(shù)學(xué)與計算科學(xué)系計算數(shù)學(xué)研究所,湖南永州425199)
數(shù)學(xué)分析是數(shù)學(xué)與計算科學(xué)系各專業(yè)的一門必修的重要的專業(yè)基礎(chǔ)課程.由于數(shù)學(xué)分析中的一些數(shù)學(xué)概念十分抽象,長期以來對于該課程的學(xué)習(xí),學(xué)生普遍感到非常困難.極限概念貫穿數(shù)學(xué)分析課程的始終,學(xué)生對于極限概念的理解直接影響到數(shù)學(xué)分析課程的學(xué)習(xí)和掌握.從以往的教學(xué)實踐當(dāng)中發(fā)現(xiàn),學(xué)生對于極限概念的ε語言理解模糊,難于把握.因此,在數(shù)學(xué)分析教學(xué)中加強極限概念的教學(xué)尤為重要.
在數(shù)學(xué)分析課程里使用Matlab可以很容易的實現(xiàn)和驗證所講述的內(nèi)容,這對于學(xué)生深刻理解和應(yīng)用數(shù)學(xué)知識有著巨大的促進(jìn)作用[1].Matlab有強大的圖形圖像功能,對于那些數(shù)學(xué)分析中難于理解的概念,采用Matlab的輔助教學(xué),通過形象的幾何解釋,可化難為易,使數(shù)學(xué)分析的教學(xué)更生動和直觀,引發(fā)學(xué)生的學(xué)習(xí)興趣.本文結(jié)合Matlab語言和數(shù)學(xué)分析極限概念的特點,闡明Matlab在數(shù)學(xué)分析極限概念教學(xué)中的3種實踐.
在Matlab打開figure(1)圖形窗口,在命令窗口輸入程序:
n=1:100;
an=n./(n+1);%數(shù)列
for i=1:100
plot(n(i),an(i),′rd′)%作數(shù)列圖像
hold on%圖形保持
pause %等待鍵盤輸入操作
end
通過空格鍵或者回車鍵的鍵盤輸入操作,可以再現(xiàn)數(shù)列an隨著n變化所生成的點列的圖形變化形式.圖1是figure(1)圖形窗口中an的最終極限形式.從圖1可以看出1的任何鄰域中都包含an的無窮多個點,因此an以1為極限.
如果用程序bn=(-1).^n.*an代替an,在圖形窗口figure(2)中可以再現(xiàn)數(shù)列bn的生成過程,并且可以發(fā)現(xiàn)數(shù)列bn中的點在-1和1波動,因此bn的極限不存在.
圖1 數(shù)列an的圖像 圖2 數(shù)列bn的圖像
例1給出的程序中,只需要對an的表達(dá)式作相應(yīng)修改,我們可以通過這種方法求出一系列的數(shù)列的極限或者利用它來判斷數(shù)列極限的不存在.值得注意的是,數(shù)列an中n的冪次不能太高,一般不超過3次,否則超過Matlab所能容許的操作.
設(shè)函數(shù)f(x)的定義域為D,考察函數(shù)f(x)的極限就是考察自變量x在定義域D內(nèi)變化時,相應(yīng)的函數(shù)值f(x)的變化趨勢.在高等數(shù)學(xué)所選用的教材中,函數(shù)極限概念普遍采用了定性描述的方式,即“若當(dāng)x無限接近于x0∈D(x≠x0)時,函數(shù)f(x)無限逼近于某一個常數(shù)A,則稱A為f(x)當(dāng)x→x0時的極限.”這種定義有“只可意會不可言傳”之感,因而難以理解[2].而數(shù)學(xué)分析采用定量的ε-δ語言更具有嚴(yán)密的邏輯性和高度的抽象性,學(xué)生更難于接受.對于一元函數(shù)求極限問題,利用Matlab提供的符號計算功能可以直接求解.由于數(shù)列可以看作定義域為自然數(shù)集的一類特殊的函數(shù),因此我們也可以利用Matlab的符號計算功能求極限.雖然Matlab提供的符號計算功能可以調(diào)用庫函數(shù)limit( )很方便地求出一元函數(shù)的極限,但是一元函數(shù)的極限概念從數(shù)值計算中根本無法理解.
根據(jù)數(shù)學(xué)分析中嚴(yán)格的函數(shù)極限ε-δ定義,對任給的ε>0,總存在與ε相應(yīng)的δ(ε)>0,使得x進(jìn)入x0的δ去心鄰域時,f(x)的圖像全部落在以直線y=A為中心線,寬為2ε的橫帶內(nèi).函數(shù)圖像能直觀形象的反映函數(shù)的變化趨勢,通過函數(shù)圖像,能夠很好的體現(xiàn)抽象的一元函數(shù)極限概念.一些簡單的易于理解的函數(shù)圖像,學(xué)生很容易能作出,但一些復(fù)雜的抽象的圖形,往往難于準(zhǔn)確作出,也無法解釋的清楚.這時,利用Matlab的作圖功能,只需幾行簡單的命令,就能畫出直觀準(zhǔn)確的函數(shù)圖像,從而使函數(shù)在x趨于x0的變化趨勢一目了然.
在Matlab命令窗口輸入程序:
syms x%說明x是符號變量
fx=x/(x-1)-1/(x^2-x);%函數(shù)
ezplot(fx,[-5,5])%函數(shù)作圖
grid on%作網(wǎng)格線
hold on; plot(1,2,′rd′)
xlabel(′圖3 f(x)的圖像′)
從圖3可知,當(dāng)x→1時,函數(shù)f(x)以2為極限.而當(dāng)x→0時,由f(x)的圖形知x→0+時,f(x)→+∞;x→0-時,f(x)→-∞.故f(x)當(dāng)x→0時極限不存在.
圖3 f(x)的圖像 圖4 g(x)的圖像
函數(shù)整體的作圖可以從函數(shù)圖像變化趨勢觀察函數(shù)極限的情況,但是不能演示函數(shù)極限的生成過程.為了演示函數(shù)極限的變化情況,可以通過Matlab動畫來展示.
在Matlab命令窗口輸入程序,畫出g(x)在[-1,1]上的圖形:
for x=-1:0.01:0;%循環(huán)改變橫坐標(biāo)取值
g1=x.*sin(1./x);%函數(shù)g(x)
drawnow%截取圖形
hold on%圖形保持
plot(x,g1, ′r+′)%作g(x)在x=0的左極限
pause(0.1)%停留0.1秒
end%循環(huán)結(jié)束
hold on
for t=1:-0.01:0;%循環(huán)再次改變橫坐標(biāo)取值
g2=t.*sin(1./t);%函數(shù)g(x)
drawnow%截取圖形
hold on
plot(t,g2, ′bd′)%作g(x)在x=0的右極限
pause(0.1)
end
hold on
plot(0,0, ′g.′)
title (′g(x)=xsin(1/x)′)%加圖名
xlabel(′圖4 g(x)的圖像′)
圖4演示了函數(shù)g(x)當(dāng)x→0時的極限生成過程.可以看出g(x)隨著x的減小,雖然頻率越來越高作無限次振蕩,但振幅越來越小趨近與0,因而函數(shù)g(x)當(dāng)x→0時的極限為0.利用這種方法可以對任一函數(shù)的極限進(jìn)行動畫演示.對于極限不存在的情況,也可以通過動畫演示來觀察其變化情況[2].
與一元函數(shù)極限概念類似,二元函數(shù)的極限也是反映函數(shù)值隨自變量變化而變化的趨勢.設(shè)函數(shù)f(P)的定義域是平面區(qū)域D,P0∈D,當(dāng)P∈D且無限趨于P0時,f(P)無限趨于常數(shù)A,則稱A為f(P)當(dāng)P趨于P0時的極限.注意到P在區(qū)域D內(nèi)沿著任意的路徑趨于定點P0時,f(P)都要以A為極限.雖然利用Matlab作圖功能,可以作出三維圖形,但是根據(jù)函數(shù)圖形卻不能如一元函數(shù)一樣直觀的看出自變量趨于某定值時函數(shù)的變化趨勢.
二元函數(shù)的極限知識還涉及到重極限、累次極限等概念,而重極限的存在是一個比較復(fù)雜的問題.一般不能通過累次極限來確定重極限,但是數(shù)學(xué)分析關(guān)于重極限和累次極限之間有這樣的聯(lián)系:如果二元函數(shù)f(x,y)的重極限和兩個累次極限都存在,則三者必相等.換句話說,這個聯(lián)系給出了一個判斷累次極限交換順序的充分而非必要條件,或者也可以說給出了一個判斷重極限不存在的方法.
Matlab在求二元函數(shù)的極限時,用的是limit函數(shù)的嵌套來完成的.但是通過在Matlab中輸入help limit命令,我們可以看到程序的說明并不可以用來求多元函數(shù)的極限.雖然有時確實能用limit函數(shù)嵌套碰巧得到真實的結(jié)果,但從實質(zhì)上來說,多元函數(shù)極限的求法并不是一系列的一元函數(shù)分別求極限的問題.因此,我們在考慮多元函數(shù)極限問題時,一定要考慮重極限和累次極限的關(guān)系,注意驗證結(jié)果.
將Matlab引入到數(shù)學(xué)分析極限概念的教學(xué)中,不僅有利于克服傳統(tǒng)教學(xué)中講解內(nèi)容抽象、概念理解困難的不足,也有利于培養(yǎng)學(xué)生學(xué)數(shù)學(xué)、用數(shù)學(xué)的意識.在學(xué)習(xí)數(shù)學(xué)課程中,明白理解數(shù)學(xué)概念的重要性.值得注意的是,Matlab函數(shù)作圖的功能盡管很強大,但是對于多元函數(shù)的極限問題,我們不能如一元函數(shù)一樣,通過Matlab函數(shù)作圖來清楚極限過程,對于函數(shù)列求極限問題,也沒有找到適當(dāng)?shù)姆椒▉砻枋鰳O限函數(shù).另外,數(shù)學(xué)分析課程主要講授的還是數(shù)學(xué)的經(jīng)典知識,即以極限概念為基礎(chǔ)的微積分知識,Matlab在極限概念理解中的應(yīng)用僅僅是起到輔助教學(xué)的作用,而不能喧賓奪主,淡化了學(xué)生對極限概念的理解和掌握,沖淡了學(xué)生對數(shù)學(xué)經(jīng)典知識的學(xué)習(xí).
[參 考 文 獻(xiàn)]
[1] 張志涌.精通Matlab6.5版教程[M].北京:北京航空航天大學(xué)出版社,2003.
[2] 楊志明.Matlab動畫在函數(shù)極限教學(xué)中的應(yīng)用[J].數(shù)學(xué)教學(xué)研究,2010,29(7):45-48.
[3] 華東師范大學(xué)數(shù)學(xué)系.數(shù)學(xué)分析[M].北京:高等教育出版社,2009.