MATLAB在數(shù)學(xué)建模中的應(yīng)用_第1頁
MATLAB在數(shù)學(xué)建模中的應(yīng)用_第2頁
MATLAB在數(shù)學(xué)建模中的應(yīng)用_第3頁
MATLAB在數(shù)學(xué)建模中的應(yīng)用_第4頁
MATLAB在數(shù)學(xué)建模中的應(yīng)用_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

MATLAB在數(shù)學(xué)建模中的應(yīng)用摘要:通過對實(shí)際問題的抽象和簡化,引入一些數(shù)學(xué)符號、變量和參數(shù),運(yùn)用某些規(guī)律,用數(shù)學(xué)語言和數(shù)學(xué)方法建立變量、參數(shù)間的內(nèi)在聯(lián)系,得出一個(gè)數(shù)學(xué)結(jié)構(gòu),該數(shù)學(xué)結(jié)構(gòu)是實(shí)現(xiàn)的一個(gè)近似刻畫,稱之為數(shù)學(xué)模型。建立和求解數(shù)學(xué)模型的全過程就是數(shù)學(xué)建模,它包括模型的建立、求解、分析、檢驗(yàn)循環(huán)往返的全過程,MATLAB語言正是處理此類問題的很好工具,既能進(jìn)行數(shù)值求解,又能繪制有關(guān)曲線,非常方便實(shí)用。關(guān)鍵詞:MATLAB數(shù)學(xué)建模數(shù)學(xué)模型數(shù)學(xué)建模是通過對實(shí)際問題的抽象和簡化,引入一些數(shù)學(xué)符號、變量和參數(shù),用數(shù)學(xué)語言和方法建立變量參數(shù)間的內(nèi)在關(guān)系,得出一個(gè)可以近似刻畫實(shí)際問題的數(shù)學(xué)模型,進(jìn)而對其進(jìn)行求解、模擬、分析檢驗(yàn)的過程。在數(shù)學(xué)建模中MATLAB軟件發(fā)揮了重要的作用,借助于MATLAB的強(qiáng)據(jù)處理、圖形處理能力可以方便、快捷、高效的解決數(shù)學(xué)建模中各種問題。通過介紹計(jì)算機(jī)軟件MATLAB在數(shù)學(xué)建模中的應(yīng)用,以提高數(shù)學(xué)建模的質(zhì)量和效率,增強(qiáng)解決實(shí)際問題的能力。MATLAB既是一種語言,又是一種編程環(huán)境。MATLAB提供了很多方便用戶的工具,用于管理變量、輸入輸出數(shù)據(jù)以及生成和管理M文件。MATLAB中的M文件的語法與其他的高級語言類似,是一種程序化的編程語言,同時(shí)也是一種解釋性的編程語言,即逐行解釋運(yùn)行程序,程序更容易調(diào)試。它只是一個(gè)簡單的ASCII碼文本文件,語法比一般的高級語言都要簡單,與數(shù)學(xué)語言比較接近,更容易掌握和理解。MATLAB進(jìn)行數(shù)值計(jì)算的基本處理單位是復(fù)數(shù)數(shù)組(或稱陣列)。它擁有一流水平的數(shù)值計(jì)算函數(shù)庫,其所有數(shù)值計(jì)算算法都是國際公認(rèn)的、先進(jìn)的可靠算法;而執(zhí)行算法的指令形式非常簡單、易讀易用,應(yīng)用MATLAB進(jìn)行函數(shù)圖形繪制也非常方便。它也有簡單易用的程序語言,MATLAB是一個(gè)高級的矩陣語言,它包含控制語句、函數(shù)、數(shù)構(gòu)、輸入和輸出和面向?qū)ο缶幊烫攸c(diǎn)。支持命令和程序兩種工作方式。移植性好、可拓展性極強(qiáng)。它也有強(qiáng)大的科學(xué)計(jì)算數(shù)據(jù)處理能力,MATLAB包含了大量計(jì)算算法,擁有600多個(gè)丁程中用到的數(shù)可以方便地實(shí)現(xiàn)用戶所需的各種計(jì)算功能。它還有出色的圖形處理功能,MATLAB具有方便的數(shù)據(jù)可視化功能,以將向量和距陣用圖形表現(xiàn)出來。高層次的作圖包括二維和三維的可視化、圖象處理、動(dòng)畫和表達(dá)式作圖。可用于科學(xué)計(jì)算和工程繪圖。正因?yàn)镸ATLAB能夠能夠較好的解決眾多實(shí)際問題,因此受到學(xué)建模者的青睬。一:基本數(shù)學(xué)運(yùn)算在MATLAB下進(jìn)行基本數(shù)學(xué)運(yùn)算,只需將運(yùn)算式直接打在提示號>>后面,并按入Enter鍵即可。MATLAB將計(jì)算的結(jié)果以ans顯示?!纠壳蟮乃阈g(shù)運(yùn)算結(jié)果。(1)用鍵盤在MATLAB指令窗中輸入以下內(nèi)容>>(12+2*(7-4))/3^2(2)在上述表達(dá)式輸入完成后,按【Enter】鍵,該就指令被執(zhí)行。(3)在指令執(zhí)行后,MATLAB指令窗中將顯示以下結(jié)果。ans=2我們也可給運(yùn)算式的結(jié)果設(shè)定一個(gè)變量x:x=(5*2+1.3-0.8)*10^2/25x=42表達(dá)式MATLAB書寫表達(dá)式的規(guī)則與“手寫算式”差不多相同,但要求所有表達(dá)式都是以純文本形式輸入。如果一個(gè)指令過長可以在結(jié)尾加上...(代表此行指令與下一行連續(xù)),例如:>>1*2+3*4+5*6+7*8+9*10+11*12+...13*14+15*16ans=744若不想讓MATLAB每次都顯示運(yùn)算結(jié)果,只需在運(yùn)算式最後加上分號(;)即可。MATLAB會(huì)忽略所有在百分比符號(%)之後的文字,因此百分比之後的文字均可視為程式的注解(Comments)。例:計(jì)算圓面積Area=,半徑r=2,則可鍵入>>r=2;%圓半徑r=2,>>area=pi*r^2;%計(jì)算圓面積area>>area=12.5664MATLAB提供基本的算術(shù)運(yùn)算有:加(+)、減(-)、乘(*)、除(/)、冪次方(^)。陣列與矩陣A.矩陣的四則運(yùn)算在前面已經(jīng)講過,MATLAB是以(復(fù))矩陣為基本計(jì)算單元的,因此矩陣的四則運(yùn)算的格式與3.1節(jié)中講的數(shù)字的運(yùn)算是相同的,不過對具體的運(yùn)算還有一些具體的要求。此以乘法為例:矩陣的乘法使用算符“*”,要求相乘的矩陣線性代數(shù)中矩陣相乘的要求,A和B才可以相乘。a=[123;234;345];b=[111;222;333];e=a*de=141414302020204526262660B.矩陣與常數(shù)間運(yùn)算常數(shù)與矩陣的運(yùn)算即是同此矩陣各元素之間進(jìn)行運(yùn)算,如數(shù)加是指矩陣每個(gè)元素都加上此常數(shù),數(shù)乘是指矩陣每個(gè)元素都與此常數(shù)相乘。需要注意的是:當(dāng)進(jìn)行數(shù)除時(shí),數(shù)只能作除數(shù)。C.矩陣的逆運(yùn)算矩陣的逆運(yùn)算是矩陣運(yùn)算中很重要的一種運(yùn)算。它在線性代數(shù)及計(jì)算方法中都有很多的論述。而在MATLAB中,眾多的復(fù)雜理論只變成了一個(gè)簡單的命令——inv。求矩陣A=的逆。解A=[21-3-1;3107;-124-2;10-15];inv(A)ans=-0.04710.5882-0.2706-0.94120.3882-0.35290.48240.7647-0.22350.2941-0.0353-0.4706-0.0353-0.05880.04710.2941D.矩陣的行列式運(yùn)算矩陣的行列式的值可由det函數(shù)計(jì)算得出。det(A)ans=-85E.矩陣的冪運(yùn)算矩陣的冪運(yùn)算的形式同數(shù)字的冪運(yùn)算的形式相同,即用算符“^”來表示。矩陣的冪運(yùn)算在計(jì)算過程中與矩陣的某種分解有關(guān),計(jì)算所得值并非是矩陣每個(gè)元素的冪值。這一點(diǎn)是值得讀者注意的A^2ans=9-3-176164-1639-2921-38-1-1226注意:A.^2%指每個(gè)數(shù)分別平方四、多項(xiàng)式運(yùn)算A.求多項(xiàng)式的值求多項(xiàng)式的值可以有2種形式,對應(yīng)著2種算法。一種是將輸人變量值代入多項(xiàng)式,計(jì)算時(shí)以數(shù)組為單元,此時(shí)的計(jì)算函數(shù)為polyval;另一種則以矩陣為計(jì)算單元,進(jìn)行矩陣式運(yùn)算,以求得多項(xiàng)式的值,此時(shí)的函數(shù)為polvalm。這2種計(jì)算結(jié)果在數(shù)值上有很大的差別,這種差別來自于矩陣計(jì)算和數(shù)組運(yùn)算的差別。B.求多項(xiàng)式的根求多項(xiàng)式的根可以有2種辦法,一種是直接調(diào)用MATLAB的函數(shù)roots,求解多項(xiàng)式的所有根;另一種是通過建立多項(xiàng)式的伴隨矩陣再求其特征值的方法得到多項(xiàng)式的所有根。例、求解方程的所有根。解q=[1-351-1]q=1-351-1roots(q)ans=1.5399+1.7489i1.5399-1.7489i-0.47090.3911C.多項(xiàng)式的乘除法運(yùn)算多項(xiàng)式乘法由函數(shù)conv來實(shí)現(xiàn),此函數(shù)同于向量的卷積函數(shù);多項(xiàng)式的除法由函數(shù)deconv來實(shí)現(xiàn),同于向量的解卷函數(shù)。計(jì)算兩多項(xiàng)式的乘除法。p=[123456]p=123456poly2sym(p)ans=x^5+2*x^4+3*x^3+4*x^2+5*x+6d=[345]d=345pd=conv(p,d)pd=310223446584930poly2sym(pd)ans=3*x^7+10*x^6+22*x^5+34*x^4+46*x^3+58*x^2+49*x+30p1=deconv(pd,d)p1=1.00002.00003.00004.00005.00006.0000D.多項(xiàng)式微分多項(xiàng)式的微分函數(shù)polyder可以用來進(jìn)行多項(xiàng)式的微分運(yùn)算。D.對多項(xiàng)式進(jìn)行微分運(yùn)算p=[123456]poly2sym(p)p=123456ans=x^5+2*x^4+3*x^3+4*x^2+5*x+6dp=polyder(p)dp=58985poly2sym(dp)ans=5*x^4+8*x^3+9*x^2+8*x+5E.多項(xiàng)式擬合多項(xiàng)式擬合是多項(xiàng)式運(yùn)算的一個(gè)重要組成部分,在工程應(yīng)用及科研工作中都得到了廣泛的應(yīng)用。其實(shí)現(xiàn)一方面可以由矩陣的除法求解超定方程來進(jìn)行;另一方面在MATLAB中還提供了專用的擬合函數(shù)polyfit。其調(diào)用格式為:polyfit(x,y,n)其中x、y為擬合數(shù)據(jù),n為擬合多項(xiàng)式的次數(shù)。[p,s]=polyfit(x,y,n)其中p為擬合多項(xiàng)式系數(shù)向量,s為擬合多項(xiàng)式系數(shù)向量的結(jié)構(gòu)信息。用5階多項(xiàng)式對上的正弦函數(shù)值進(jìn)行最小二乘擬合。解x=0:pi/20:pi/2;y=sin(x);a=polyfit(x,y,5);x1=0:pi/30:pi*2;y1=sin(x1);y2=polyval(a,x1);plot(x1,y1,'b-',x1,y2,'r*')%作二維圖形曲線圖和點(diǎn)圖。legend('原曲線','擬合曲線')%顯示圖例axis([0,7,-1.2,4])%顯示坐標(biāo)軸的長度由于擬合是在上進(jìn)行的,故所得曲線在此區(qū)間內(nèi)與原曲線符合得很好。而在區(qū)間外,兩曲線差別較大??偨Y(jié)通過以上對“MATLAB在簡單數(shù)學(xué)建模中的應(yīng)用”的分析。我們可以認(rèn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論