林玉蕊 黃習培 龔志偉 滕忠銘




摘? 要:文章分析《數值分析》課程教學中存在的問題,嘗試從理論、實踐教學各個環節著手,通過算法實例運用MATLAB編程實現算法并嵌入本課程教學的全過程。
關鍵詞:數值分析;教學方法;教學改革
中圖分類號:G642 文獻標志碼:A 文章編號:2096-000X(2019)18-0118-03
Abstract: This paper analyzes the problems existing in the teaching of NumericalAnalysis course, tries to start with each link of theory and practice teaching, and implements the algorithm by using MATLAB programming and embedding it in the whole course of teaching.
Keywords: Numerical Analysis; teaching methods; teaching reform
一、傳統的數值分析課程教學中存在的主要問題
(一)教學內容多,課時偏少
《數值分析》課程一般都包括有插值法,函數逼近與計算,數值積分與數值微分,常微分方程數值解法,方程求根,解線性方程組的直接方法,解線性方程組的迭代法,矩陣的特征值和特征向量的計算[1-2]。知識點較多,教學課時相對較少[3],通常理論安排48學時,實驗10學時。
(二)傳統教學手段和現代先進的教學技術有機結合的不夠充分
由于數學的嚴謹性,重推理過程[4],數學課程使用多媒體相對滯后,一直沿用傳統的黑板教學方式[5]。同時,也未能充分利用網上豐富的教學資源與先進的教學技術。如:“超星”學術視頻,MOOC,翻轉課堂,云課堂、雨課堂等。[6-8]
(三)實踐教學不夠重視
傳統的教學模式注重數值計算的基本方法和基本原理的講授[9],算法的上機編程實驗的課時少,重視不夠,缺乏利用數學軟件解決實際問題的訓練。學生學完后覺得應用性、實用性不強。
二、教學方法改革的嘗試
(一)傳統教學手段和先進的教學技術有機結合
利用多媒體技術給學生展示出數值問題的近似解和誤差等直觀的結果,而文字、圖形、圖像、動畫、聲音相結合的教學,能把枯燥乏味的數學理論知識變得生動活潑,激發學生對理論的直觀認識。
(二)利用實踐教學,精心設計算法實例
《數值分析》所要講授的算法都可以設計成相應的上機實驗題目,讓學生上機運行操作。以問題為導向編制實驗指導書:運用MATLAB軟件編程、在計算機上進行實現、實現過程中會出現哪些問題、最后結果的準確度如何等。以MATLAB軟件為載體:對教學中的實例求解過程再進行演示,并引導學生嘗試進行一題多解,比較各種解法的誤差,加深學生對這部分理論知識的認識。在教學過程中遇到不同的算法問題可因材施教采取不同的解決方法。
(三)采用MATLAB編程嵌入《數值分析》課程教材
教材按基礎理論→簡單算法→算法改進→可用算法→應用示例的順序編排。采用嵌入式模式結合具體應用實例來組織教材結構。著重介紹數值算法的基本思想和算法的實現。書中給出了大部分算法在Matlab環境下可運行的代碼。小部分算法以偽代碼表示,實現過程一般留作課后習題。
(四)運用MATLAB編程實現算法并嵌入教學
1. MATLAB有利于提高數值分析理論教學的直觀性
MATLAB具有的強大圖形處理能力,可以數值分析中的重要概念和理論結果非常直觀、形象地演示出來,有利于加強學生對概念和理論結果的理解和掌握。
例如:在講解Lagrange插值法的算法時:先計算Lagrange插值奇函數在x點處的值,結合Matlab 程序進行講解并演示算法如下:
function=lagrange_Base(X,x)
n=length(X)
for k=1:n
A=1;
B=1;
for j=1:k-1
A=A*(x-X(j));
B=B*(X(k)-X(j));
end
for j=k+1:n
A=A*(x-X(j));
B=B*(X(k)-X(j));
end
y(k)=A/B;
end
有了以上算法容易得到Lagrange插值法的算法如下:
function y=lagrange_Interrpolation(X,Y,x)
L=Lagrange_Base(X,x)
y=0;
for k=1:length(Y)
y=y+L(K)*Y(K);
end
通過程序演示,一方面,可以幫助學生提高程序開發能力;另一方面,消除對數學公式推導的乏味性。
2. MATLAB是數值分析實驗課的最佳工具
由于MATLAB使用方便、命令簡單、易于編程、功能強大等特點,它是進行數值分析實驗課最佳的工具。數值分析實踐課中,引導學生利用“數值分析”方法處理實際中數據,如:氣溫數據、基因數據、股票數據等。插值、擬合、逼近等都是“數值分析”中的處理數據的方法。在數值分析實踐課程的教學過程中,運用數值方法分析處理現實生活中實際數據,能夠讓學生對“數值分析”課程產生濃厚的的學習興趣。例如:在某化學反應過程中,根據實驗所得生成物的質量分數與時間的關系如下表1所示,求質量分數y與時間t的擬合曲線y=F(t)。
解:做散點圖1,如圖中“*”所示。從圖上可以看到,質量分數開始時增加較快,后來逐漸減慢,到一定時間后基本穩定于一個水平上,即當t→∞時,y趨于某個常數,換句話說y=F(t)有一個水平漸近線。另外當t=0時,反應未開始,質量分數應該為零。根據這此分析我們可設想y=F(t)是雙曲線型。即
其法方程為
16a+3.38073b=1.83291×1033.38073a+1.584347b=0.528857×103
求解法方程得a=80.1742359,b=162.72291,從而所求的擬合曲線為
擬合結果,如圖1中a曲線所示
(五)教材的選用
選用基于Matlab編程的教材:《數值計算方法》。教材中的大部分算法在Matlab環境下可運行的代碼,可以很容易地將其修改為在其它語言環境可運行的代碼,小部分算法以偽代碼表示,實現過程一般留作課后習題。這樣,可以讓學生體會枯燥無味的理論如何被用于指導算法實現,有利于提高學生科學計算能力。
參考文獻:
[1]張瑞.“問題解決”教學法在數值分析教學中的應用研究[J].高教學刊,2018(24):127-129.
[2]王海軍,張瑞芳.數值分析課程教學改革與實踐研究[J].高師理科學刊,2018,38(10):58-60.
[3]武文華,曲忠憲,王春紅.數值分析課程教學改革的探索與研究[J].吉林農業科技學院學報,2018,27(3):100-102.
[4]張秋梅.數值分析課程教學改革的探索與實踐初探[J].科教文匯,2018(27):61-62.
[5]馮男,史大濤,邵新慧.數值分析實驗教學改革的實踐與思考[J].當代教育實踐與教學研究(電子版),2018(6):49-49.
[6]王建云,田智鯤,張發明,等.數學建模思想融入數值分析課程的改革與實踐[J].當代教育理論與實踐,2018,10(6):50-53.
[7]朱海龍,莊科俊.基于數學建模思想的《數值分析》教學改革研究[J].白城師范學院學報,2018(2):79-82.
[8]牛瀟萌.MATLAB軟件在數值分析課程中的應用[J].赤峰學院學報:自然科學版,2018,34(8):17-18.
[9]彭國晉.“MATLAB程序設計與應用”教學改革與實踐[J].科教導刊(電子版),2017(25):82-82.
[10]施俊,陳彥.基于VB的數值分析插值法圖形模擬[J].福建電腦,2008,24(12):163-164.