馬俊杰+劉惠籃+何清龍
摘 要:《數值分析》是介紹科學計算方法的基礎性課程,對培養學生的科學計算素質起關鍵性作用。針對《數值分析》課程教學的幾個問題,本文在新古典主義數值分析角度下探討了本課程的改革措施。
關鍵詞:數值分析 教學改革 教學內容 教學方法
中圖分類號:G642 文獻標識碼:A 文章編號:1672-1578(2017)06-0023-02
1 引言
《數值分析》是計算數學方向的基礎課程,是教授針對實際問題設計數值算法的一門課程。這門課程主要研究數值逼近問題、數值積分問題、微分方程數值解問題以及線性方程組數值解問題等,是數學與應用數學專業、信息與計算科學專業的專業基礎課,也是統計學專業必修的專業課之一。《數值分析》課程具有集數學理論與程序設計于一身的特點。在實際教學中,教師既需要以嚴謹的科學性傳遞給學生基本數學知識,又要教授學生在計算機上實現算法的能力。
2 課程發展現狀
我國電子計算機的應用始于上世紀50年代,為了滿足其對高素質科學計算人才的需求,國內大學相繼開設了數值計算方法、程序設計等課程。1977年10月的教材會議上,計算數學的專業基礎課被劃分為三個方向,即數值逼近、數值代數以及微分方程數值解。分別采用李岳生和黃友謙編寫的《數值逼
近》[1],黃志浩、張玉德和李瑞遐編寫的《矩陣計算與方程求根》[2]以及李榮華和馮果忱編寫的《微分方程數值解法》[3]作為教材。之后,計算數學專業經歷了兩次改名,分別是1987年更名為計算數學及其應用軟件專業,1998年更名為目前的信息與計算科學專業。從這兩次的更名可以看出計算數學的專家學者已經深刻意識到,計算數學既是一門數學科學又是一門語言科學。在更名為信息與計算數學專業后,計算方法課程在原先三門課的基礎上更名為《數值分析》。其內容包括之前的數值逼近、數值代數以及微分方程數值解三個部分。
當代學者一般認為,《數值分析》課程存在課程教學內容多、教學學時少,教學過程中重視理論、忽視應用,教學過程中缺少“可視化”過程,課程考核方式不合理等問題[4]。針對這些問題,現有文獻給出了許多改革建議。例如,李小林認為本課程的實踐教學環節可分為兩方面的內容[5]。一方面讓學生對典型的算法進行學習,另一方面在課程結束后,讓學生分組完成一些綜合性課題。針對地質工程數值法的教學問題,黃雨和劉鋮瑋提出目前教材的教學內容更新慢,且過于繁瑣。在實際教學中,應該注重因材施教,靈活調整教學重點[6]。劉秀娟,李久會和徐美進指出本課程的考核方式應趨于科學化、合理化。總評成績應包含平時成績、上機成績和期末成績。其中平時成績主要考核學生的學習態度,上機成績主要考察學生上機解決問題的能力,而期末成績主要考查學生對基礎知識的理解[7]。下面,我們將以Chebfun系統為基礎,探討《數值分析》課程改革的新方向。
3 教學改革建議
Chebfun系統是牛津大學的Nick Trefethen教授在Matlab環境下開發出的可供計算數學科研人員與教學人員使用的工具箱。
3.1 課程內容多,教學課時少
由于本課程涵蓋的內容廣泛,包括微積分、線性代數、常微分方程、泛函分析等,學生必須在具有牢固的基礎上才能學好本課程。為了解決這一問題,授課教師可以根據學生的實際情況選擇合適的教材,或者自行編寫適合本學校的教材。這不僅可以提高教學效率,而且可以提高學生對本課程的興趣。Nick Trefethen教授在開發Chebfun系統的同時編著了相關指導書《Approximation Theory and Approximation Practice》[8]。全書并無一處復雜的數學推導,卻將計算數學中的基礎知識點講的清清楚楚,是這種教學方式的成功典范。
3.2 教學過程重視理論、忽視應用
計算數學是一門來源于現實問題的學問,在其教學過程忽視學生實際動手能力的培養無疑是一種舍本逐末的教學方式。但是,由于實際問題的復雜性,高校教師很難將這些問題改造為可供本科生操作的問題。這一矛盾可以借助Chebfun系統提供的簡潔算例得到解決。下面的代碼給出了Bernstein多項式的構造方法:
function BernsteinPolys()
LW = 'linewidth'; lw = 1.6;
s = chebfun('s',[0 1]);
f = min(abs(s-.3),2*abs(s-.7));
f = s + max(0,1-5*f);
hold off, plot(f,LW,lw)
function Bn = Bn(f,n)
warning off
x = chebpts(n+1,[0 1]);
Bndata = zeros(size(x));
for k = 0:n
Bndata=Bndata+f(k/n)*nchoosek(n,k).*x.^k.*(1-x).^(n-k);
end
Bn = chebfun(Bndata,[0 1]);
warning on
end
end
通過講解這段代碼,可以在將最佳一致逼近問題教授給學生的同時,也可以使學生熟悉Matlab語言,進一步加強實際動手能力。在實際教學過程中,我們發現這種教學方式提高了學生的主觀能動性,激發了學生的學習興趣,對教學效果的提升有很大幫助。
3.3 教學過程中缺少“可視化”過程
使用計算機解決實際問題的一般過程包括:實際問題、數學建模、算法設計、算法實現、數值結果。如果只讓學生被動的記憶這個過程,無疑會對教學效果產生負面效果。因此,在整個過程中,通過引入圖像的方式加強學生對數值分析基本定理的理解是十分重要的教學手段。在Chebfun系統中,開發者基于新古典主義數值逼近的新進展設計了許多此類算例。考慮整函數的Chebyshev插值問題。對于[-1,1]上的函數f,其n次插值多項式pn的逼近精度以O(ρ-n)的速度收斂,這里的ρ函數f的解析半徑。以指數函數f(x)=ex為例, 在Matlab環境下可以計算其解析半徑如下圖:
通過數值結果,學生可以很明確的看到Chebyshev插值多項式的指數收斂性質。
4 結語
《數值分析》是高等學校信息與計算科學專業的基礎課程。本文以新古典主義數值分析的角度,通過分析本課程面臨的一些問題,提出了《數值分析》課程教學的新方式。但是,值得注意的是教學改革是一項長期任務。在以后的教學過程中,我們仍需要在新視角下選擇合適的教學內容,創新教學手段,總結教學經驗,不斷提高教學水平。
參考文獻:
[1] 李岳生,黃友謙.數值逼近[M].北京:人民教育出版社,1978.
[2] 黃志浩,張玉德,李瑞遐.矩陣計算與方程求根[M].北京: 人民教育出版社, 1979.
[3] 李榮華,馮果忱. 微分方程數值解法[M].北京: 高等教育出版社,1980.
[4] 杜廷松.關于《數值分析》課程教學改革研究的綜述和思考[J]. 大學數學,2007; 23(2):8-15.
[5] 李小林.關于數值計算方法課程教學改革的探討[J].重慶文理學院學報(自然科學版),2010; 29(2):85-87.
[6] 黃雨,劉鋮瑋.工程數值法教學改革研究—以“地質工程數值法”為例[J].高等建筑教育,2013; 22(4):81-84.
[7] 劉秀娟,李久會,徐美進.信息與計算科學專業數值分析課程實踐教學改革[J].遼寧工業大學學報(社會科學版),2014,16(4):83-86.
[8] N.Trefethen. Approximation Theory and Approximation Practice [M]. Philadelphia: SIAM, 2013.
作者簡介:馬俊杰(1986-),貴州貴陽人,男,博士,貴州大學數學與統計學院講師,研究方向:計算數學。
劉惠籃(1988-),貴州貴陽人,女,博士,貴州大學數學與統計學院講師,研究方向:統計建模。
何清龍(1987-),貴州貴陽人,男,博士,貴州大學數學與統計學院講師,研究方向:計算數學。