戴麗珍
摘要:Matlab語言及其應用是目前大多數工科專業必修的專業基礎課程,在課程設計和畢業設計方面發揮著越來越重要的作用。本文結合實際授課情況及學生反饋信息,探討基于案例教學和分布、遞進式任務設計的教學改革方法,旨在提高學生的學習激情和參與積極性。實踐表明,該方法可以有效地提高教學質量。
關鍵詞:Matlab語言及其應用;工科專業;案例教學;分布、遞進式
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2018)21-0161-02
隨著計算機硬件及其相關技術的發展,數值計算、模擬仿真等相關技術在越來越多的領域發揮著重大作用,而作為三大數學軟件之一的Matlab因其在數值計算方面的優勢得到科技人員的廣泛關注。由于其涉及代數、幾何等基本數學知識,還可以與專業理論知識緊密結合,因此大多數工科專業都將以《Matlab語言及其應用》為基礎的相關課程列為必修專業基礎課程。不僅因此,若能熟練地掌握基于Matlab語言的程序編程及仿真應用,則可以幫助我們對專業知識的理解。然而,由于其不屬于計算機等級考試范疇,且大部分專業將其開設在本科學習的后半階段,因此,盡管市場上有大量的Matlab相關學習資料,若無法充分調動學生的學習積極性,將會導致課堂教學效果不理想。
為了激發學生興趣,培養學生分析問題和解決問題的實際能力,文獻[1]提出了“引導式面向對象教學法”,教學過程以“學生為主體、教師為引導”。文獻[2]在教學中設計基礎教學、專題教學和設計教學三層環節,通過遞進式的教學模式對Matlab課程進行教學改革探索。為提高學生對創新活動的積極性,提高科研創新能力,文獻[3]以數學建模及工程案例為教學素材,探討Matlab課程的教學模式。針對Matlab課程的教學,文獻[4]提出“一人為本”的教育理念,通過“實例式教學、對象式培養、互動式教學、實踐式訓練、深入式學習相結合的教學模式”,培養學生的實際能力。
為充分調動學生的學習熱情和積極性,提高教學質量,本文結合我院《Matlab語言及其應用》課程的實際教學情況,探討案例教學及分步、遞進式任務設計的教學改革。
一、案例教學
MATLAB是MATrix LABoratory的縮寫,是美國MathWorks公司開發的一種科學和工程計算的交互式程序語言。MATLAB具有強大的數值計算功能,且包含大量與各個學科專業知識緊密相關的函數可供調用,可以通過程序調用方便地實現數值運算、圖形繪制、模擬仿真等相關操作。在各個高校,MATLAB已成為線性代數、控制理論、信號處理、計算機仿真等相關課程的基本教學工具。
Matlab主要包括Matlab和Simulink兩個組成部分,其工作界面如圖1所示,主要包含Command Window、Editor、Workspace、Details、Current Folder、Command History等窗口,通過運行Editor內編寫的程序或在Command Window內輸入的相關代碼獲得運算結果。課程講授期間,若單純地介紹Matlab相關的數據及其運算、矩陣分析與處理、數值運算等基本知識,往往無法調動學生的積極性。實際研究表明,在具有一定編程基礎的計算機編程類相關課程中,先儲備相關知識而后應用于實際問題求解的效果遠遠沒有根據面對的實際問題尋求解決方案過程中學習相應基本知識的效果好。因此,在課程設計環節,可將相關基本內容分類歸納至一到多個綜合設計應用中,通過實際求解過程中的問題分析、基本知識、方案制定、編程實現、分析校正等環節,掌握相關知識,完成問題求解。
例如,在導課環節,可首先介紹如圖2所示的圖形。圓規是中學數學課程中的必備工具,借助圓規我們可以很容易地繪制如圖1所示的圖形,相信絕大多數學生都曾繪制過此類圖形。那么,在學習計算機編程及仿真技能的今天,能否方便地應用Matlab軟件進行計算機繪圖?應該如何繪制?如何完成相關符號標記及線型、顏色區分?要完成此圖的繪制,不僅可以很好地調動學生學習課程的興趣,也可以有針對性地學習基本知識模塊、鍛煉學生借助Matlab解決問題的能力。
二、分步、遞進式任務設計
上述看似簡單的圖形繪制問題卻涉及到眾多的Matlab基本知識。從表面上看主要是圓及圓弧的繪制,而實際上包含著如圓的方程(直角坐標系、極坐標系等)、plot繪圖、線的區分與標記(線型、顏色)、曲線交點求解、根據起止點繪制圓弧等。與此同時,也可以引申至流程圖繪制及實現等相關知識。
計算機程序語言設計通常包含順序、判斷、循環等基本結構,通過分布、遞進式的任務設計,該圖形繪制問題可以包含上述基本程序結構,并分層次地鍛煉學生的思考問題能力和動手解決問題能力。同時,也可以涉及與此相關的編程技能,如流程圖的設計等。流程圖是幫助我們理清思路、幫助編程的有效工具。那么,應該如何繪制流程圖可作為延伸知識點進行復習和強化。完成基本繪圖的步驟如下:
?藎Step 1:在坐標系內繪制圓心為(x,y)、半徑為r的基準圓;
?藎Step 2:隨機選取圓上1點(x0,y0)并以此為圓心繪制半徑為r且與基準圓相交的圓弧1;
?藎Step 3:分別以圓弧1與基準圓的兩個相交點為圓心繪制半徑為r且與基準圓相交的圓弧2和3;
?藎Step 4:分別以圓弧2和3與基準圓的交點為圓心繪制半徑為r且與基準圓相交的圓弧4和5;
?藎Step 5:以圓弧4和5與基準圓的共同交點為圓心繪制半徑為r且與基準圓相交的圓弧6。
根據此步驟進行的繪圖,簡單易懂,但是在實際編程過程中,除基本的畫圓知識外,存在“重復勞動”問題,即以交點為圓心的繪圖需要重復執行多次,容易出現錯誤。為解決上述問題,可以使用循環結構和(/或)判斷結構實現。因此,若在設計任務中加入“循環/判斷結構”的限制條件,如圖3所示流程圖為例,既可以引申至流程圖的相關知識,亦可以練習程序結構的編寫及應用。
三、結語
在實際的授課過程中,可以根據繪圖步驟、順序講解相關的基本模塊知識,通過多次課程的學習,使學生掌握Matlab基本知識、繪圖相關命令、程序結構等相關知識。再結合上機練習和課后習題,激發學生的積極性和參與性,提高教學質量,取得了較為理想的效果。
參考文獻:
[1]彭代慧,祝詩平,傘磊.“引導式面向對象”教學法在Matlab課程中的應用研究[J].中國電力教育,2013,(31):99-100.
[2]鄒國鋒,傅桂霞,李震梅,等.電信專業遞進式“Matlab”課程教學模式探索[J].電氣電子教學學報,2016,(05):84-86,89.
[3]余國先,王峻.面向科研創新的Matlab課程教學模式探索[J].西南師范大學學報(自然科學版),2018,43(1):164-168.
[4]王波,王軍.MATLAB課程的教學改革思考[J].中國電力教育,2012,(28):55-56.