李光云+李嬌芬
摘要:數(shù)值分析是大學(xué)本科數(shù)學(xué)和工科專業(yè)的重要課程,實(shí)驗(yàn)是數(shù)值分析課程的重要組成部分,本文通過(guò)數(shù)值分析的插值實(shí)驗(yàn)的教學(xué)案例,分析了如何在實(shí)驗(yàn)中引入比較法,讓學(xué)生在做實(shí)驗(yàn)的過(guò)程中獲得理論知識(shí)的鞏固的方法。
關(guān)鍵詞:數(shù)值分析;實(shí)驗(yàn);插值
中圖分類號(hào):G642.4 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1674-9324(2015)06-0233-02
一、引言
數(shù)值分析是一門與計(jì)算機(jī)使用緊密結(jié)合的實(shí)用性很強(qiáng)的數(shù)學(xué)課程,它不僅是信息與計(jì)算科學(xué)專業(yè)、應(yīng)用數(shù)學(xué)專業(yè)的一門專業(yè)基礎(chǔ)課,也是很多工科專業(yè)的一門很重要的課程。數(shù)值分析包含了大量嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)理論,也有很強(qiáng)的實(shí)用價(jià)值。
如今的課堂教學(xué)往往非常注重講授數(shù)值方法的原理,而數(shù)值分析的理論覆蓋面很廣,從數(shù)值逼近、積分微分到常微分方程、高等代數(shù)等,這就需要學(xué)生有良好的基礎(chǔ)和知識(shí)積累,才能在理論學(xué)習(xí)中游刃有余。教師一般在課堂上都是由實(shí)際出發(fā),由現(xiàn)實(shí)的例子作為背景引入具體理論,然后對(duì)理論進(jìn)行詳細(xì)講解,最后再回到實(shí)例當(dāng)中解決問(wèn)題。
筆者認(rèn)為,若是只在課堂上講授理論,盡管有多媒體手段的加入,各種圖形、程序可以用ppt展示給學(xué)生看,學(xué)生是聽(tīng)懂了,看會(huì)了,可是到實(shí)際使用中還是不知道如何下手。數(shù)值分析是一門注重做的課程,再?gòu)?fù)雜的理論,都需要學(xué)生學(xué)會(huì)如何在現(xiàn)實(shí)工作中用出來(lái)。所以實(shí)驗(yàn)教學(xué)在數(shù)值分析整個(gè)教學(xué)過(guò)程中的地位是非常重要的,在實(shí)驗(yàn)中,學(xué)生通過(guò)軟件編程實(shí)現(xiàn)已有算法,繪制圖形圖像的過(guò)程中可以加深對(duì)算法的理解,直觀感受算法理論的精妙,提高學(xué)習(xí)興趣。在運(yùn)用自己的程序解決問(wèn)題的過(guò)程中,能在不同的問(wèn)題中掌握算法的使用注意事項(xiàng),在實(shí)驗(yàn)中累積算法經(jīng)驗(yàn)從而讓學(xué)生可以在實(shí)際中能熟練應(yīng)用課本上的理論。
二、函數(shù)插值實(shí)驗(yàn)教學(xué)設(shè)計(jì)
函數(shù)插值理論在數(shù)值分析中是非常重要的一個(gè)知識(shí)點(diǎn),也是離散函數(shù)逼近的重要方法。其原理是利用插值法,可在離散數(shù)據(jù)的基礎(chǔ)上得到一條連續(xù)函數(shù)通過(guò)全部已知數(shù)據(jù)點(diǎn),進(jìn)而可以估算出其他節(jié)點(diǎn)處的近似值。插值方法主要有拉格朗日插值、牛頓插值、分段線性插值、樣條插值等,其理論煩瑣,但是又非常重要,它是數(shù)值積分理論的重要理論基礎(chǔ)。插值方法很多,如何在理論和實(shí)驗(yàn)教學(xué)中讓學(xué)生掌握各個(gè)方法的原理,以及每個(gè)插值方法使用的注意事項(xiàng),是擺在教師面前的難題。
課堂注重理論,實(shí)驗(yàn)注重做法,在實(shí)驗(yàn)教學(xué)中,筆者認(rèn)為應(yīng)該在加強(qiáng)課堂理論學(xué)習(xí)的基礎(chǔ)上,實(shí)驗(yàn)要注重如何讓學(xué)生鞏固課堂學(xué)習(xí)的成果,把插值的原理和特點(diǎn)通過(guò)設(shè)計(jì)的算例讓學(xué)生自己描繪出來(lái)。學(xué)生通過(guò)實(shí)驗(yàn)全面認(rèn)識(shí)各個(gè)插值理論的優(yōu)缺點(diǎn),為以后數(shù)值積分的學(xué)習(xí)打下基礎(chǔ)。為此,在插值實(shí)驗(yàn)這一節(jié),我們?yōu)閷W(xué)生設(shè)計(jì)了一個(gè)比較實(shí)驗(yàn),通過(guò)每一對(duì)有特點(diǎn)的算例的比較,讓學(xué)生在比較中獲得各個(gè)插值方法的使用注意事項(xiàng)和具體的操作方法,知道什么可以做什么不能做,并且獲得對(duì)插值的全新認(rèn)識(shí)。
實(shí)驗(yàn)的首要任務(wù)是編程,利用MATLAB數(shù)學(xué)軟件結(jié)合課堂學(xué)到的理論公式編寫拉格朗日插值和牛頓插值的程序。盡管MATLAB有內(nèi)置的命令實(shí)現(xiàn)拉格朗日插值,但是學(xué)生無(wú)法通過(guò)內(nèi)置命令掌握拉格朗日插值理論公式,并且由于通過(guò)MATLAB編程實(shí)現(xiàn)拉格朗日插值和牛頓插值比較容易,所以還是要求學(xué)生通過(guò)理論公式獨(dú)立編程,以加深對(duì)理論公式的記憶和理解。在編程的基礎(chǔ)上,要求學(xué)生利用編寫的程序完成以下對(duì)比實(shí)驗(yàn)。
1.從函數(shù)y=sin(x),x∈(-2π,2π)中等距離取5個(gè)點(diǎn),要求學(xué)生分別利用拉格朗日插值和牛頓插值進(jìn)行求插值函數(shù)的操作,觀察利用兩個(gè)插值原理求出來(lái)的插值函數(shù)有何異同。
2.從多項(xiàng)式y(tǒng)=x4+x3+x2+x+1中等距離取5個(gè)點(diǎn),要求學(xué)生利用拉格朗日插值方法進(jìn)行插值操作,觀察獲得的插值函數(shù)和原函數(shù)有何異同。
3.提示學(xué)生對(duì)函數(shù)y=sin(x),x∈(-2π,2π)的5點(diǎn)拉格朗日插值效果不好,若要提高插值效果,將節(jié)點(diǎn)個(gè)數(shù)增加到11個(gè),將插值效果進(jìn)行比較。
4.在上例的基礎(chǔ)上,讓學(xué)生通過(guò)畫圖比較函數(shù)f(x)=■,x∈(-1,1)的5點(diǎn)拉格朗日插值和11點(diǎn)拉格朗日插值效果。提示學(xué)生可以進(jìn)一步增加節(jié)點(diǎn)個(gè)數(shù),觀察得出的圖形。
5.利用分段插值的方法,對(duì)函數(shù)f(x)=■,x∈(-1,1)進(jìn)行11點(diǎn)插值,與11點(diǎn)拉格朗日插值的插值效果比較。
6.保留拉格朗日插值方法,取消等距節(jié)點(diǎn),提示學(xué)生利用[-1,1]上的切比雪夫多項(xiàng)式的零點(diǎn)(切比雪夫點(diǎn))xk=cos■,k=1,2,…,n+1對(duì)以上兩個(gè)函數(shù)進(jìn)行拉格朗日插值,與等距節(jié)點(diǎn)的插值效果進(jìn)行比較。
我們希望學(xué)生做完以上案例后不但能順利完成結(jié)果的獲得,而且還能利用課堂學(xué)到的理論知識(shí)分析得到的結(jié)果,這些結(jié)果都是課堂上講解的理論知識(shí)的數(shù)值例子,能做出來(lái),會(huì)分析,這是對(duì)學(xué)生的鍛煉,也能提高學(xué)生的動(dòng)手能力和學(xué)習(xí)積極性。以下我們對(duì)以上案例進(jìn)行分析。
1.通過(guò)案例1,學(xué)生得到結(jié)果后能了解到,在相同的節(jié)點(diǎn)條件下,利用拉格朗日插值和牛頓插值得到的插值多項(xiàng)式是一樣的,這與課堂的理論分析完全一致。這個(gè)結(jié)果是學(xué)生自己完成實(shí)驗(yàn)后得到的,與課堂理論分析結(jié)合,學(xué)生更能理解兩種插值的相同之處。而通過(guò)編寫兩個(gè)插值方法的MATLAB程序,學(xué)生既可以學(xué)習(xí)編程,還可以掌握兩者達(dá)到同一目的的不同之處。
2.通過(guò)上例可得出拉格朗日插值和牛頓插值結(jié)果一樣的結(jié)論,所以對(duì)四次多項(xiàng)式y(tǒng)=x4+x3+x2+x+1進(jìn)行5點(diǎn)插值只需利用拉格朗日插值即可。學(xué)生可通過(guò)得到的結(jié)果和圖形知道,其實(shí)得到的插值多項(xiàng)式就是原來(lái)的四次多項(xiàng)式本身,原函數(shù)和插值多項(xiàng)式兩者的誤差為零。這個(gè)結(jié)論可以提示學(xué)生通過(guò)拉格朗日插值理論的誤差公式解釋和分析,從而復(fù)習(xí)和掌握拉格朗日插值誤差公式。
3.通過(guò)案例1得到的插值多項(xiàng)式的圖形對(duì)比原函數(shù)圖形可知,一般來(lái)說(shuō)函數(shù)的5點(diǎn)插值的逼近效果還是不理想的,誤差比較大。若要提高逼近效果,首先讓學(xué)生通過(guò)實(shí)驗(yàn)觀察提高節(jié)點(diǎn)個(gè)數(shù)對(duì)插值的逼近效果的影響。所以設(shè)計(jì)了一個(gè)對(duì)比實(shí)驗(yàn)讓學(xué)生對(duì)兩個(gè)函數(shù)進(jìn)行高次插值。通過(guò)實(shí)驗(yàn)結(jié)果的觀察可知,對(duì)于函數(shù)y=sin(x),x∈(-2π,2π),11點(diǎn)的插值逼近效果在整個(gè)區(qū)間上都比5點(diǎn)插值效果好,幾乎和原函數(shù)重合了提高插值次數(shù)達(dá)到了良好的效果。而對(duì)于龍格函數(shù)f(x)=■,x∈(-1,1),高次插值出現(xiàn)了龍格現(xiàn)象,即區(qū)間中間部分逼近效果非常好,而區(qū)間兩邊出現(xiàn)非常大的震蕩。通過(guò)這兩個(gè)案例的比較分析,讓學(xué)生自己總結(jié)出光靠增加節(jié)點(diǎn)個(gè)數(shù)提高插值的逼近效果不可行,需要另找辦法。龍格現(xiàn)象是插值理論的重要知識(shí)點(diǎn),在課堂教學(xué)中學(xué)生對(duì)該現(xiàn)象只停留在理論上,通過(guò)該實(shí)驗(yàn)案例的分析,學(xué)生在自己做出龍格現(xiàn)象圖形的時(shí)候,能加深對(duì)龍格現(xiàn)象和拉格朗日插值的缺點(diǎn)的理解。而對(duì)于學(xué)生普遍會(huì)存在疑問(wèn),龍格現(xiàn)象只是龍格函數(shù)的特有現(xiàn)象嗎?y=sin(x),x∈(-2π,2π)不會(huì)出現(xiàn)龍格現(xiàn)象嗎?可提示學(xué)生繼續(xù)對(duì)沒(méi)有出現(xiàn)龍格現(xiàn)象的函數(shù)增加插值節(jié)點(diǎn),觀察龍格現(xiàn)象是否是所有函數(shù)的共有特點(diǎn),并且這可以留作實(shí)驗(yàn)作業(yè)讓學(xué)生課后自己完成。
4.此案例提供一個(gè)提高逼近效果的方法,就是分段插值,利用分段插值,可以在增加節(jié)點(diǎn)個(gè)數(shù)的情況下,保持插值次數(shù)不增加,從而保證的插值效果。學(xué)生通過(guò)此案例可以理解為什么介紹完整體插值后還需要講解分段插值,老師在以后介紹數(shù)值積分中的復(fù)化積分公式的時(shí)候,進(jìn)行比較講解。
5.通過(guò)切比雪夫點(diǎn)的插值案例,提示學(xué)生分段插值不是提高逼近效果的唯一方法,通過(guò)改變節(jié)點(diǎn)的選取,把原來(lái)的等距節(jié)點(diǎn)變?yōu)閰^(qū)間上正交多項(xiàng)式的零點(diǎn),可以在增加節(jié)點(diǎn)個(gè)數(shù),讓拉格朗日插值的逼近效果也相應(yīng)提高而不會(huì)出現(xiàn)龍格現(xiàn)象。這個(gè)案例可以和以后數(shù)值積分中的高斯求積公式配合,讓學(xué)生了解正交多項(xiàng)式的零點(diǎn)在函數(shù)逼近方面的重要應(yīng)用。并且在介紹完[-1,1]上的切比雪夫點(diǎn)插值后,可以預(yù)留作業(yè),讓學(xué)生在其他區(qū)間上尋找正交多項(xiàng)式零點(diǎn)進(jìn)行拉格朗日插值,讓學(xué)生對(duì)正交多項(xiàng)式理論加深印象,為以后數(shù)值積分的高斯求積公式的介紹鋪墊。
三、結(jié)束語(yǔ)
本文介紹了在數(shù)值分析實(shí)驗(yàn)教學(xué)中引入比較教學(xué)法,通過(guò)在函數(shù)插值實(shí)驗(yàn)中設(shè)計(jì)的幾對(duì)比較案例,讓學(xué)生在完成實(shí)驗(yàn)過(guò)程中經(jīng)比較加深理解和掌握理論課上介紹的知識(shí)。課堂理論教學(xué)讓學(xué)生聽(tīng)與看獲得理論知識(shí),實(shí)驗(yàn)教學(xué)強(qiáng)調(diào)學(xué)生做,讓學(xué)生在做的過(guò)程中獲得比在課堂聽(tīng)更多的知識(shí)和操作方法,也是把學(xué)到的知識(shí)用到實(shí)際中關(guān)鍵的一步。通過(guò)在學(xué)生中進(jìn)行的教學(xué)試驗(yàn),學(xué)生在一個(gè)綜合設(shè)計(jì)性實(shí)驗(yàn)(4課時(shí))中,在有MATLAB基礎(chǔ)的前提下,完全能從編寫程序,學(xué)會(huì)程序的操作開(kāi)始,獨(dú)立完成以上比較實(shí)驗(yàn),并且能針對(duì)每個(gè)比較實(shí)驗(yàn)的案例,給出合理的理論分析,達(dá)到良好的教學(xué)效果。
參考文獻(xiàn):
[1]趙景軍,吳勃英.關(guān)于數(shù)值分析教學(xué)的幾點(diǎn)探討[J].大學(xué)數(shù)學(xué),2005,21(3):28-30.
[2]李慶楊,王能超,易大義.數(shù)值分析[M].武漢:華中科技大學(xué)出版社,2001.
[3][美]夏普若,唐玲艷,田尊華.工程與科學(xué)數(shù)值方法的MATLAB實(shí)現(xiàn)[M].北京:清華大學(xué)出版社,2009.endprint