課程設(shè)計(jì)報(bào)告-四階Runge-Kutta方法_第1頁(yè)
課程設(shè)計(jì)報(bào)告-四階Runge-Kutta方法_第2頁(yè)
課程設(shè)計(jì)報(bào)告-四階Runge-Kutta方法_第3頁(yè)
課程設(shè)計(jì)報(bào)告-四階Runge-Kutta方法_第4頁(yè)
課程設(shè)計(jì)報(bào)告-四階Runge-Kutta方法_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余6頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、計(jì)算機(jī)數(shù)值方法課程設(shè)計(jì)報(bào)告題目四階Runge-Kutta方法學(xué)生姓名班級(jí)計(jì)科12學(xué)號(hào)成績(jī)指導(dǎo)教師延安大學(xué)計(jì)算機(jī)學(xué)院2014年9月1日-*、摘要5二、問(wèn)題重述5三、方法原理及實(shí)現(xiàn)5四、計(jì)算公式或算法5五、Matlab程序6六、測(cè)試數(shù)據(jù)及結(jié)果6七、結(jié)果分析10八、方法改進(jìn)10九、心得體會(huì)10十、參考文獻(xiàn)10一、摘要本課程設(shè)計(jì)主要內(nèi)容是用四階Runge-Kutta方法解決常微分方程組初值問(wèn)題的數(shù)值解法,首先分析題目?jī)?nèi)容和要求,然后使用Matlab編寫(xiě)程序計(jì)算結(jié)果并繪圖,最后對(duì)計(jì)算結(jié)果進(jìn)行分析并得出結(jié)論。二、問(wèn)題描述在計(jì)算機(jī)上實(shí)現(xiàn)用四階Runge-Kutta求一階常微分方程初值問(wèn)題;y'(x)

2、=f(x,y)xwb,b】J(a)=y1的數(shù)值解,并利用最后繪制的圖形直觀分析近似解與準(zhǔn)確解之間的比較。三、方法原理及實(shí)現(xiàn)龍格-庫(kù)塔(Runge-Kutta)方法是一種在工程上應(yīng)用廣泛的高精度單步算法。由于此算法精度高,采取措施對(duì)誤差進(jìn)行抑制,所以其實(shí)現(xiàn)原理也較復(fù)雜。該算法是構(gòu)建在數(shù)學(xué)支持的基礎(chǔ)之上的。龍格庫(kù)塔方法的理論基礎(chǔ)來(lái)源于泰勒公式和使用斜率近似表達(dá)微分,它在積分區(qū)間多預(yù)計(jì)算出幾個(gè)點(diǎn)的斜率,然后進(jìn)行加權(quán)平均,用做下一點(diǎn)的依據(jù),從而構(gòu)造出了精度更高的數(shù)值積分計(jì)算方法。如果預(yù)先求兩個(gè)點(diǎn)的斜率就是二階龍格庫(kù)塔法,如果預(yù)先取四個(gè)點(diǎn)就是四階龍格庫(kù)塔法。經(jīng)典的R-K方法是一個(gè)四階的方法,它的計(jì)算公式

3、是:yn+=yn+h(Ki+2K2十2(十七)6Ki=f(xn,yn)一hh*K2=fM+,yn+3Ki)K3=f(Xnh,2Kh-2十ynK4-f(xnh,ynhKa)四、計(jì)算公式或算法Vo=yX01.輸入a,b,n,y0,f(x,y)(編寫(xiě)或調(diào)用計(jì)算f(x,y)的函數(shù)文件F(x,y»,X0二a,Xn二bxi1-xoi-1hhKi=fXi工手K2=fXihi,xhiKiK3=fhi,yhiK2K4=fXyh,xhK3hyi=yiKi2K22K3K46End4.輸出y1,y2yn.五、Matlab程序x=a:h:b;y(i)=yi;n=(b-a)/h+i;fori=2:nfki=f(

4、x(i-i),y(i-i);fk2=f(x(i-i)+h/2,y(i-i)+fki*h/2);fk3=f(x(i-i)+h/2,y(i-i)+fk2*h/2);fk4=f(x(i-i)+h,y(i-i)+fk3*h);y(i)=y(i-i)+h*(fki+2*fk2+2*fk3+fk4)/6;endy六、測(cè)試數(shù)據(jù)及結(jié)果用調(diào)試好的程序解決如下問(wèn)題:應(yīng)用經(jīng)典的四階Runge-Kutta方法解初值問(wèn)題iny=-(y2y)1MtM3yt(yy),3,取h=0.5y(i)=-2,(i)步驟一:編寫(xiě)函數(shù)具體程序1 .求解解析解程序:dsolve('Dy=(yA2+y)/t','y(

5、1)=-2','t')結(jié)果:ans=2 .綜合編寫(xiě)程序如下:a=1;b=3;h=0.5;y(i)=-2;x(1)=a;n=(b-a)/h+1;yy(1)=-2;fori=2:nk1=(y(i-1)A2+y(i-1)/x(i-1);k2=(y(i-1)+h*k1/2)A2+(y(i-1)+h*k1/2)/(x(i-1)+h/2);k3=(y(i-1)+h*k2/2)A2+(y(i-1)+h*k2/2)/(x(i-1)+h/2);k4=(y(i-1)+h*k3)A2+(y(i-1)+h*k3)/(x(i-1)+h);y(i)=y(i-1)+h*(k1+2*k2+2*k3+k

6、4)/6;%四階Runge-Kutta公式解x(i)=x(i-1)+h;%有解區(qū)間的值yy(i)=-x(i)/(x(i)-1/2);%解析解s(i)=abs(y(i)-yy(i);%誤差項(xiàng)endx'y'yy's'(2)步驟二:執(zhí)行上述Runge-Kutta算法,計(jì)算結(jié)果為X1.00001.50002.00002.50003.0000V-2.0000-1.4954-1.3306-1.2480-1.1985y(x)-2.0000-1.5000-1.3333-1.2500-1.2000s00.00460.00280.00200.00151.0000一2.0000-2.

7、000001.5000-L4954一1500G00462.odoo-L330S-L3333口.00282,5000-1.2480-1,25000.00203.0000-L1985-1.2000D.0015(3)使用Matlab繪圖函數(shù)“plot(x,y)”繪制問(wèn)題數(shù)值解和解析解的圖形。數(shù)值解的圖形:Plot(x,y)解析解的圖形Plot(x,yy)(4)使用Matlab中的ode45求解,并繪圖編寫(xiě)函數(shù)如下:%ode.mfunctiondy=ode(x,y)dy=(yA2+y)/x;T,Y=ode45('ode',13,-2);plot(T,Y)運(yùn)行結(jié)果如下:七、結(jié)果分析由圖可

8、知此方法與精確解的契合度非常好,基本上與精度解保持一致,由此可見(jiàn)四階Runge-Kutta方法是一種高精度的單步方法。八、方法改進(jìn)同時(shí),由于誤差的存在,我們總想盡可能的是誤差趨近于零,常用的就是傳統(tǒng)的增加取值的個(gè)數(shù)。最后,我們通過(guò)改變步長(zhǎng)來(lái)進(jìn)行改進(jìn)。具體實(shí)現(xiàn):(1)h=0.1a=1;b=3;h=0.1;y(i)=-2;x(1)=a;n=(b-a)/h+1;yy(1)=-2;fori=2:nk1=(y(i-1)A2+y(i-1)/x(i-1);k2=(y(i-1)+h*k1/242+(y(i-1)+h*k1/2)/(x(i-1)+h/2);k3=(y(i-1)+h*k2/2)A2+(y(i-1)

9、+h*k2/2)/(x(i-1)+h/2);k4=(y(i-1)+h*k3)A2+(y(i-1)+h*k3)/(x(i-1)+h);y(i)=y(i-1)+h*(k1+2*k2+2*k3+k4)/6;%四階Runge-Kutta公式解x(i)=x(i-1)+h;%有解區(qū)間的值yy(i)=-x(i)/(x(i)-1/2);%解析解s(i)=abs(y(i)-yy(i);%誤差項(xiàng)endx'y'yy's'結(jié)果:1.0000-2,0000-2.0000Q1.1000-LS333-1.83330.00001.2000-L71437.71430.00001.3000-k62

10、50-1.62500.00001.4D00-L5556-1.55560.00001.5000-1.5000-1,50000.00001.6000-1.4545-L45450.00001.7000-L4167-1.41670,00001.8000-1.3846-L38460,00001.9000-1.3571-L3E710.00002.0000-1.3333-1.33330.00002.10OQ-1.3125-1.31250.00002.2000-1.2941-1.29410.00002.3000-1.2778-1.27780,00002.4000-1.2632-1.26320.00002.50

11、00-1.2500-1.25000.00002.6000-1.2381-1.23810.00002.7100-1.2273-1.22730.00002.8000-L2174-1.21740.00002.9000-L2083-L20830.00003.0000-L2000-1.20000.0000h=0.2a=1;b=3;h=0.2;y(i)=-2;x(1)=a;n=(b-a)/h+1;yy(i)=-2;fori=2:nk1=(y(i-1)A2+y(i-1)/x(i-1);k2=(y(i-1)+h*k1/242+(y(i-1)+h*k1/2)/(x(i-1)+h/2);k3=(y(i-1)+h*

12、k2/2)A2+(y(i-1)+h*k2/2)/(x(i-1)+h/2);k4=(y(i-1)+h*k3)A2+(y(i-1)+h*k3)/(x(i-1)+h);y(i)=y(i-1)+h*(k1+2*k2+2*k3+k4)/6;%四階Runge-Kutta公式解x(i)=x(i-1)+h;%有解區(qū)間的值解析解誤差項(xiàng)yy(i)=-x(i)/(x(i)-1/2);%s(i)=abs(y(i)-yy(i);%endx'y'yy's'結(jié)果:ans=0100OQ.oooo0.00000.00000.00000.00000.00000.00000.00000,00001.

13、0000-2.0000-2.00001.20007.7142-1.71431.4000-L5E55-1.55561.6OCO-1.4545-1.45451.8000-1.3846-1.38462.0000-1.3333-1.33332,2000-1,2941-1.29412,4000-1.2631-1.26322.6000-L2381-1.23812.BODO-L21M-1.21743.0000-1,2000-1.2000(3)h=0.4a=1;b=3;h=0.4;y(1)=-2;x(1)=a;n=(b-a)/h+1;yy(1)=-2;fori=2:nk1=(y(i-1)A2+y(i-1)/x

14、(i-1);k2=(y(i-1)+h*k1/242+(y(i-1)+h*k1/2)/(x(i-1)+h/2);k3=(y(i-1)+h*k2/2)A2+(y(i-1)+h*k2/2)/(x(i-1)+h/2);k4=(y(i-1)+h*k3)A2+(y(i-1)+h*k3)/(x(i-1)+h);四階Runge-Kutta公式解y(i)=y(i-1)+h*(k1+2*k2+2*k3+k4)/6;%x(i)=x(i-1)+h;%有解區(qū)間的值yy(i)=-x(i)/(x(i)-1/2);%解析解s(i)=abs(y(i)-yy(i);%誤差項(xiàng)endx'y'yy's'結(jié)果:ans=1.0000-2.0000-2.000001.4000-L5640-1.55560.00161.8000-L3836-1.38460.00102,2000-1.2934-1.29410.0007Z6000-1.2375-1.23810.00063.0000-L1995-1.20000.0005通過(guò)上述的一些結(jié)果得出,四階的Runge-Kutta方法的誤差取決于步長(zhǎng)的選取,因此,在實(shí)驗(yàn)的時(shí)候我們需要慎重的選取。一方面:我們要減少誤差,另一方面:我們也需要盡可能的減少計(jì)算次數(shù)。九、心得體會(huì)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論