• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      數(shù)值分析課程的MATLAB輔助教學(xué)系統(tǒng)設(shè)計

      2011-12-20 06:29:50李軍成楊滌塵
      關(guān)鍵詞:插值法教學(xué)系統(tǒng)插值

      李軍成,楊滌塵,楊 煉,李 兵

      (湖南人文科技學(xué)院數(shù)學(xué)與應(yīng)用數(shù)學(xué)系,湖南婁底417001)

      數(shù)值分析課程的MATLAB輔助教學(xué)系統(tǒng)設(shè)計

      李軍成,楊滌塵,楊 煉,李 兵

      (湖南人文科技學(xué)院數(shù)學(xué)與應(yīng)用數(shù)學(xué)系,湖南婁底417001)

      為有效地輔助數(shù)值分析課程的教學(xué),以MATLAB作為工作語言和開發(fā)環(huán)境,設(shè)計了一個數(shù)值分析課程的輔助教學(xué)系統(tǒng)。以數(shù)值分析中插值法的教學(xué)為例,給出了設(shè)計GUI界面的技術(shù)實現(xiàn)過程,該界面可以更為直觀地顯示不同插值方法的結(jié)果,以激發(fā)學(xué)生的學(xué)習(xí)興趣。教學(xué)實踐表明,該系統(tǒng)使用效果良好。

      數(shù)值分析;MATLAB;輔助教學(xué);數(shù)據(jù)插值

      數(shù)值分析不僅是大學(xué)數(shù)學(xué)系應(yīng)用數(shù)學(xué)專業(yè)、信息與計算科學(xué)專業(yè)的一門主要專業(yè)課基礎(chǔ)課程,而且很多理工科專業(yè)也開設(shè)了該門課程。數(shù)值分析主要研究求解數(shù)學(xué)模型的算法及有關(guān)理論,是求解數(shù)學(xué)模型的不可缺少的途徑和手段,它伴隨計算機(jī)的發(fā)展而發(fā)展。在信息科學(xué)和計算機(jī)技術(shù)飛速發(fā)展的今天,這門課程中學(xué)習(xí)的數(shù)值方法更顯得極其重要。與其它數(shù)學(xué)課程的最明顯的區(qū)別在于,數(shù)值分析是一門更注重應(yīng)用的科學(xué),特別注意在方法的精確性和計算的效率之間的平衡。傳統(tǒng)的教學(xué)模式只注重講授數(shù)值方法的原理,算法的理論推導(dǎo)占據(jù)了整個教學(xué)過程的大部分時間,再加上缺乏實踐環(huán)節(jié)的教學(xué),就使得學(xué)生不能很好的運(yùn)用所學(xué)的理論去解決實際問題[1]。另外,由于這門課在檢驗算法精度、比較算法優(yōu)劣時常常涉及到大量的數(shù)值計算和各種結(jié)果的繪圖,師生在計算和繪圖上需要花很多的時間和精力,影響到對算法的掌握。因而該課程授課難度較大,學(xué)生學(xué)習(xí)效果往往不能令人滿意。用計算機(jī)完成復(fù)雜的計算和繪圖,授課時引導(dǎo)學(xué)生把精力放在概念的理解和方法的掌握上,應(yīng)是該課程的教學(xué)發(fā)展方向[2]。

      為有效地輔助數(shù)值分析課程的教學(xué),基于MATLAB中的圖形用戶界面(GUI),并以數(shù)值分析中數(shù)據(jù)插值方法為例,設(shè)計了一個數(shù)據(jù)插值方法的教學(xué)系統(tǒng),學(xué)生可以利用此系統(tǒng)進(jìn)行數(shù)據(jù)插值方法的學(xué)習(xí),加深對數(shù)據(jù)插值算法的理解,從而更好地把算法應(yīng)用于實際。

      1 MATLAB 中的 GUI設(shè)計簡介[2-3]

      MATLAB 6.1推出了全新的圖形用戶開發(fā)環(huán)境(GUI Development Environment,簡稱GUIDE),它有4類基本的圖形對象:坐標(biāo)軸(Axes)、控件(Uicontrol)、菜單(Uimenu)和對象菜單(Uicontextmenu)。具體設(shè)計過程如下:

      1)在MATLAB命令窗口中,直接輸入guide(或利用菜單選擇:File→New→GUI),即可啟動圖形用戶界面的布局編輯器。利用guide filename可以編輯文件名為filename的圖形用戶界面。

      2)啟動菜單編輯器(Menu Editor)可以添加本課件的主菜單及子菜單。

      3)利用窗口左側(cè)的控件選擇板,把控制對象拖拉到布局區(qū)(Layout Area)生成該對象。再利用幾何位置排列工具(Align Object s)來調(diào)節(jié)各控件對象之間的相對位置。

      4)創(chuàng)建完控件對象后,雙擊該對象就會顯示它的屬性編輯器(Property Inspector),通過對相關(guān)屬性進(jìn)行設(shè)置(如控件名稱、背景顏色、字體大小等)而得到滿意的GUI。

      5)在圖形窗口選擇:File→Save Figure,把該圖形保存起來,系統(tǒng)會自動生成同名的M文件和fig文件。

      2 數(shù)值分析課程輔助教學(xué)系統(tǒng)的框架設(shè)計

      數(shù)值分析課程的教學(xué)內(nèi)容主要包括數(shù)據(jù)插值與擬合、數(shù)值微分與積分、線性方程組的數(shù)值求解、非線性方程求根、常微方程數(shù)值解等幾個部分。按照上述5個部分的教學(xué)內(nèi)容,設(shè)計出一個基于MATLAB的輔助教學(xué)系統(tǒng),本系統(tǒng)的框架如圖1所示。

      圖1 數(shù)值分析課程輔助教學(xué)系統(tǒng)框架圖

      該教學(xué)系統(tǒng)主要由6個教學(xué)GUI子界面構(gòu)成,通過單擊主界面上相應(yīng)的按鈕即可彈出相應(yīng)的子界面。下面以數(shù)據(jù)插值法為例,給出其教學(xué)GUI界面的技術(shù)實現(xiàn)。

      3 插值法教學(xué)GUI界面的技術(shù)實現(xiàn)

      3.1 建立數(shù)據(jù)插值方法的MATLAB函數(shù)文件

      在插值函數(shù)中,以多項式函數(shù)應(yīng)用最廣。常用的多項式插值有Lagrange插值、Newton插值、Hermite插值及三次樣條插值[4]等。其中Newton插值法是一種利用均差構(gòu)造插值多項式的方法,n次的Newton插值多項式與n次的Lagrange插值多項式是恒等關(guān)系,只是表現(xiàn)的形式不同而已。Hermite插值法是一種帶導(dǎo)數(shù)信息的插值方法,常用的有兩點(diǎn)三次Hermite插值,即考慮兩個插值結(jié)點(diǎn)的情形。三次樣條插值法是一種分段插值法,由于在插值結(jié)點(diǎn)處具有二階導(dǎo)數(shù)連續(xù),從而具有更好的光滑性。

      由于MATLAB軟件運(yùn)行于windows環(huán)境,因此基于MATLAB設(shè)計的GUI界面具有美觀和簡潔的特點(diǎn),教師和學(xué)生不需要掌握MATLAB軟件即可輕松使用。為方便GUI界面的設(shè)計,首先可以建立三種插值方法的MATLAB函數(shù)文件,然后在GUI界面的設(shè)計中調(diào)用這些函數(shù)文件。由于三次樣條插值可以直接調(diào)用MATLAB函數(shù)庫中的函數(shù),故不需另外建立函數(shù)文件,下面分別給出n次Lagrange插值與Hermite插值的函數(shù)文件。

      1)n次Lagrange插值的函數(shù)文件(lagrange.m)

      %該函數(shù)用于求解lagrange插值

      %使用格式為y=lagrange(X,Y,x)

      %其中X為插值節(jié)點(diǎn),Y為插值節(jié)點(diǎn)的函數(shù)值,x為所求點(diǎn)

      function y=lagrange(X,Y,x)

      n=length(X);

      m=length(x);

      for i=1:m

      z=x(i);s=0.0;

      for k=1:n p=1.0;

      for j=1:n

      if j~=k

      p=p*(z-X(j))/(X(k)-X(j));

      end

      end

      s=p*Y(k)+s;

      end

      y(i)=s;

      end

      2)Hermite插值的函數(shù)文件

      %該方法用于求解hermite插值(hermite.m)

      %使用格式為 y=hermite(X,Y,Y1,x)

      %其中X為插值節(jié)點(diǎn),Y為插值節(jié)點(diǎn)的函數(shù)值,Y1為在該點(diǎn)的一階導(dǎo)數(shù),x為所求點(diǎn)

      function y=hermite(X,Y,Y1,x)

      n=length(X);

      m=length(x);

      for i=1:m

      y0=0;

      for j=1:n

      h=1;a=0;

      for k=1:n

      if k~=j

      h=h*((x(i)-X(k))/(X(j)-X(k)))^2;

      a=1/(X(j)-X(k))+a;

      end

      end

      y0=y0+h*(((X(j)-x(i))*(2*a*Y(j)-Y1(j))+Y(j)));

      end

      3.2 插值法教學(xué)的GUI界面設(shè)計

      為了讓學(xué)生更加直觀的理解不同的插值方法,分別設(shè)計了三個單選按鈕,即n次Lagrange插值、Hermite插值與三次樣條插值。分別單擊各個按鈕時,會出現(xiàn)不同方法的插值曲線圖。另外,為了使學(xué)生了解插值曲線的由來,設(shè)計了一個靜態(tài)文本窗口,用來顯示繪制插值曲線的MATLAB程序。插值法教學(xué)的GUI界面的設(shè)計過程具體如下:

      Step1:啟動圖形用戶界面的布局編輯器。

      Step2:設(shè)置靜態(tài)文本窗口,用來顯示不同插值法的MATLAB執(zhí)行程序;設(shè)置三個單擊按鈕,分別用來繪制Lagrange插值、Hermite插值與三次樣條插值的曲線圖。

      Step3:保存并自動生成M文件和fig文件。

      篇幅有限,這里略去設(shè)計該GUI界面的源代碼。運(yùn)行保存的M文件即可生成相應(yīng)的GUI界面。圖2為以sin(x)為例做不同插值的教學(xué)系統(tǒng)界面。圖3至圖5分別為單擊三個不同按鈕后所得到的插值曲線圖。

      圖2 數(shù)據(jù)插值法的教學(xué)系統(tǒng)界面

      4 結(jié)束語

      本文基于MATLAB軟件設(shè)計了一個數(shù)值分析課程的輔助教學(xué)系統(tǒng),并以插值法的教學(xué)為例,給出了設(shè)計插值法教學(xué)的GUI界面的技術(shù)實現(xiàn)過程。由于可以利用MATLAB提供的GUI設(shè)計及豐富的函數(shù)庫,因此比其它語言開發(fā)類似的軟件編程工作量較小。本系統(tǒng)可以較好地激發(fā)學(xué)生的學(xué)習(xí)積極性和學(xué)習(xí)興趣,提高了學(xué)習(xí)效率,在教學(xué)的實際應(yīng)用中取到了較好的教學(xué)效果。另外,也可參照插值法的GUI界面去設(shè)計數(shù)值分析中其它教學(xué)內(nèi)容的GUI教學(xué)界面,有興趣的讀者可以嘗試。

      [1]趙景軍,吳勃英.關(guān)于《數(shù)值分析》教學(xué)的幾點(diǎn)探討[J].大學(xué)數(shù)學(xué),2005,21(3):28-30.

      [2]王強(qiáng),金珩.MATLAB環(huán)境下的數(shù)值分析教學(xué)軟件開發(fā)[J].內(nèi)蒙古民族大學(xué)學(xué)報:自然科學(xué)版,2004,19(2):176-179.

      [3]劉衛(wèi)國.MATLAB程序設(shè)計與應(yīng)用:第三版[M].北京:高等教育出版社,2006:76.

      [4]鐘爾杰,黃廷祝.數(shù)值分析[M].北京:高等教育出版社,2004:48.

      Design on Aided Teaching System of Numeric Analysis Using MATLAB

      LI Jun-cheng,YANG Di-chen,YANG Lian,LI Bing
      (Department of Mathematics and Application Mathernatics,Hunan Institute of Humanities,Science and Technology,Loudi 417001,China)

      Aiding effectively the teaching of numeric analysis,an aided teaching system is developed for numeric analysis with MATLAB as a working language and developing environment.As an example,the technical process of GUI design for interpolation methods in numeric analysis is given.This GUI could more intuitively show the results of different interpolation methods,which could stimulate the learning interest of students.The practice shows that the system works well.

      numerical analysis;MATLAB;aided teaching;data interpolation

      (責(zé)任編校:光明)

      TP311.5

      A

      1673-0712(2011)02-0084-03

      2010-11-28.

      湖南人文科技學(xué)院教學(xué)改革研究項目(RKJGY0948).

      李軍成(1982—),男,湖北漢川人,湖南人文科技學(xué)院數(shù)學(xué)與應(yīng)用數(shù)學(xué)系講師,在讀博士,研究方向:計算機(jī)輔助幾何設(shè)計、數(shù)值計算。

      猜你喜歡
      插值法教學(xué)系統(tǒng)插值
      基于Unity的計算機(jī)硬件組裝仿真教學(xué)系統(tǒng)設(shè)計
      《計算方法》關(guān)于插值法的教學(xué)方法研討
      智富時代(2019年7期)2019-08-16 06:56:54
      基于Sinc插值與相關(guān)譜的縱橫波速度比掃描方法
      多地遠(yuǎn)程互動同步教學(xué)系統(tǒng)的設(shè)計與實現(xiàn)
      基于交互式雙板教學(xué)系統(tǒng)的高中地理教學(xué)研究
      一種改進(jìn)FFT多譜線插值諧波分析方法
      基于四項最低旁瓣Nuttall窗的插值FFT諧波分析
      汽車配件營銷實踐教學(xué)系統(tǒng)開發(fā)
      基于二次插值法的布谷鳥搜索算法研究
      Newton插值法在光伏發(fā)電最大功率跟蹤中的應(yīng)用
      饶平县| 鸡泽县| 二连浩特市| 通江县| 新泰市| 如皋市| 宁海县| 宿松县| 沂水县| 恩平市| 青海省| 团风县| 昌吉市| 溆浦县| 邯郸县| 汉川市| 共和县| 故城县| 黔东| 许昌市| 日喀则市| 义乌市| 全椒县| 阳泉市| 宁陕县| 抚宁县| 丰镇市| 中超| 洛浦县| 勃利县| 九龙县| 宁海县| 南木林县| 西林县| 微山县| 界首市| 砚山县| 彝良县| 巴中市| 辰溪县| 射阳县|