Matlab求解微分方程組及偏微分方程組.doc

Matlab求解微分方程組及偏微分方程組.doc

ID:57432732

大?。?68.50 KB

頁數(shù):14頁

時(shí)間:2020-08-18

Matlab求解微分方程組及偏微分方程組.doc_第1頁
Matlab求解微分方程組及偏微分方程組.doc_第2頁
Matlab求解微分方程組及偏微分方程組.doc_第3頁
Matlab求解微分方程組及偏微分方程組.doc_第4頁
Matlab求解微分方程組及偏微分方程組.doc_第5頁
資源描述:

《Matlab求解微分方程組及偏微分方程組.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、Matlab求解微分方程(組)及偏微分方程(組)————————————————————————————————作者:————————————————————————————————日期:第四講Matlab求解微分方程(組)理論介紹:Matlab求解微分方程(組)命令求解實(shí)例:Matlab求解微分方程(組)實(shí)例實(shí)際應(yīng)用問題通過數(shù)學(xué)建模所歸納得到的方程,絕大多數(shù)都是微分方程,真正能得到代數(shù)方程的機(jī)會(huì)很少.另一方面,能夠求解的微分方程也是十分有限的,特別是高階方程和偏微分方程(組).這就要求我們必須研究微分方程(組)的解法:解析解法和數(shù)值解法.一.相關(guān)函數(shù)、命令及簡介1.在Matl

2、ab中,用大寫字母D表示導(dǎo)數(shù),Dy表示y關(guān)于自變量的一階導(dǎo)數(shù),D2y表示y關(guān)于自變量的二階導(dǎo)數(shù),依此類推.函數(shù)dsolve用來解決常微分方程(組)的求解問題,調(diào)用格式為:X=dsolve(‘eqn1’,’eqn2’,…)函數(shù)dsolve用來解符號(hào)常微分方程、方程組,如果沒有初始條件,則求出通解,如果有初始條件,則求出特解.注意,系統(tǒng)缺省的自變量為t2.函數(shù)dsolve求解的是常微分方程的精確解法,也稱為常微分方程的符號(hào)解.但是,有大量的常微分方程雖然從理論上講,其解是存在的,但我們卻無法求出其解析解,此時(shí),我們需要尋求方程的數(shù)值解,在求常微分方程數(shù)值解方面,MATLAB具有豐富

3、的函數(shù),我們將其統(tǒng)稱為solver,其一般格式為:[T,Y]=solver(odefun,tspan,y0)說明:(1)solver為命令ode45、ode23、ode113、ode15s、ode23s、ode23t、ode23tb、ode15i之一.(2)odefun是顯示微分方程在積分區(qū)間tspan上從到用初始條件求解.(3)如果要獲得微分方程問題在其他指定時(shí)間點(diǎn)上的解,則令tspan(要求是單調(diào)的).(4)因?yàn)闆]有一種算法可以有效的解決所有的ODE問題,為此,Matlab提供了多種求解器solver,對(duì)于不同的ODE問題,采用不同的solver.表1Matlab中文本文件

4、讀寫函數(shù)求解器ODE類型特點(diǎn)說明ode45非剛性單步算法:4、5階Runge-Kutta方程;累計(jì)截?cái)嗾`差大部分場合的首選算法ode23非剛性單步算法:2、3階Runge-Kutta方程;累計(jì)截?cái)嗾`差使用于精度較低的情形ode113非剛性多步法:Adams算法;高低精度可達(dá)計(jì)算時(shí)間比ode45短ode23t適度剛性采用梯形算法適度剛性情形ode15s剛性多步法:Gear’s反向數(shù)值微分;精度中等若ode45失效時(shí),可嘗試使用ode23s剛性單步法:2階Rosebrock算法;低精度當(dāng)精度較低時(shí),計(jì)算時(shí)間比ode15s短ode23tb剛性梯形算法;低精度當(dāng)精度較低時(shí),計(jì)算時(shí)間比o

5、de15s短說明:ode23、ode45是極其常用的用來求解非剛性的標(biāo)準(zhǔn)形式的一階微分方程(組)的初值問題的解的Matlab常用程序,其中:ode23采用龍格-庫塔2階算法,用3階公式作誤差估計(jì)來調(diào)節(jié)步長,具有低等的精度.ode45則采用龍格-庫塔4階算法,用5階公式作誤差估計(jì)來調(diào)節(jié)步長,具有中等的精度.3.在matlab命令窗口、程序或函數(shù)中創(chuàng)建局部函數(shù)時(shí),可用內(nèi)聯(lián)函數(shù)inline,inline函數(shù)形式相當(dāng)于編寫M函數(shù)文件,但不需編寫M-文件就可以描述出某種數(shù)學(xué)關(guān)系.調(diào)用inline函數(shù),只能由一個(gè)matlab表達(dá)式組成,并且只能返回一個(gè)變量,不允許[u,v]這種向量形式.因

6、而,任何要求邏輯運(yùn)算或乘法運(yùn)算以求得最終結(jié)果的場合,都不能應(yīng)用inline函數(shù),inline函數(shù)的一般形式為:FunctionName=inline(‘函數(shù)內(nèi)容’,‘所有自變量列表’)例如:(求解F(x)=x^2*cos(a*x)-b,a,b是標(biāo)量;x是向量)在命令窗口輸入:Fofx=inline(‘x.^2*cos(a*x)-b’,‘x’,’a’,’b’);g=Fofx([pi/3pi/3.5],4,1)系統(tǒng)輸出為:g=-1.5483-1.7259注意:由于使用內(nèi)聯(lián)對(duì)象函數(shù)inline不需要另外建立m文件,所有使用比較方便,另外在使用ode45函數(shù)的時(shí)候,定義函數(shù)往往需要編輯

7、一個(gè)m文件來單獨(dú)定義,這樣不便于管理文件,這里可以使用inline來定義函數(shù).二.實(shí)例介紹1.幾個(gè)可以直接用Matlab求微分方程精確解的實(shí)例例1求解微分方程程序:symsxy;y=dsolve(‘Dy+2*x*y=x*exp(-x^2)’,’x’)例2求微分方程在初始條件下的特解并畫出解函數(shù)的圖形.程序:symsxy;y=dsolve(‘x*Dy+y-exp(1)=0’,’y(1)=2*exp(1)’,’x’);ezplot(y)例3求解微分方程組在初始條件下的特解并畫出解函數(shù)的圖形.程序

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。