桑海風 劉畔畔 陳月
【摘要】針對目前計算方法課程的特點與現狀,利用Matlab語言在數值計算方面和作圖方面的優勢,將Matlab作為計算方法的輔助教學,探討了計算方法課程建設的兩個方案.
【關鍵詞】 Matlab; 龍格現象; 計算方法
一、引言
在工程技術與自然科學里,許多現象的定量分析往往可以抽象地歸納為求解特定的數學問題.一般說來,這些數學問題不容易甚至無法求出它們的準確解,需要求助于計算方法得到問題的數值解.計算方法研究的主要內容是研究在電子數字計算機上用于求得數學問題的數值近似解的方法與過程.這門課程不但使高等代數和數學分析課程的原理得以應用,方法得以實現,而且為數學建模課程中問題的求解提供方法,是很多高校理工科專業的本科生及研究生的必修課程.
Matlab(Matrix Laboratory的縮寫)是一種功能強、效率高、簡單易學的科學計算語言.自1984年由美國MathWorks公司推向市場以來,得到廣泛的應用和發展.在歐美各高等院校Matlab已經成為線性代數、自動控制理論、數字信號處理、時間序列分析、圖像處理等諸多課程的基本教學工具,成為大學生、碩士生以及博士生必須掌握的基本技能.
因此如何合理地利用Matlab軟件進行計算方法有效的教與學是值得大家深入探討的一個課題.
二、計算方法課程的特點與現狀
1.課程內容多而教學時數少
由于計算方法的研究對象涉及數學學科較多,內容十分廣泛,使得該課程具有知識結構分散、知識面跨度大、知識要點繁多、公式冗長、推導煩瑣等特點.再加上教學時數少,所以在運用傳統教學方法講授這些知識時,很多內容難以說清楚,教學效果并不理想.
2.重理論而輕實踐
傳統教學注重講解算法的理論推導及證明,課堂教學占去整個教學過程的絕大部分時間甚至全部實踐,學生基本沒有時間來體會和實現教材中的算法,更無法分析各種算法的優缺點.
3.直觀性差
如在講授分段低次插值時,許多學生誤認為在用多項式插值方法逼近一個函數時,使用的節點越多,插值的精度越好.如何生動地表述這種現象,只靠理論的公式推導顯然不能讓學生直觀理解.
4.計算過程煩瑣
如在講授利用牛頓迭代法求解非線性方程時,迭代方法的原理比較好懂,只是要達到一定的精度需要很大的計算量.但是手動計算迭代結果代價太大,而且會令學生感到枯燥無味.
三、計算方法課程建設方案
1.利用繪圖功能,加強直觀認識
多項式插值是計算方法中的一個重要內容.許多學生錯誤地認為:在用多項式插值方法逼近一個函數時,使用的節點越多,插值的精度越好.事實上,隨著插值節點的增多,多項式次數的增加,插值函數在整個區間上不一定更加逼近給定的函數.講授時我們給出一個“龍格”現象的例子.考慮函數
四、結束語
教學實踐表明,借助于 Matlab輔助教學,計算方法的教與學不再枯燥呆板,而且開闊了學生思路,拓展了解決問題的方法,同時對增強教學效果,提高教育質量,促進教學改革等方面都是大有裨益.