資源描述:
《微分方程求解數值方法.doc》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、重慶三峽學院數值計算方法實驗課測驗微分方程求解的后退歐拉法(后退梯形法)、龍格庫塔法(三階、四階公式)院系數學與統(tǒng)計學院專業(yè)信息與計算科學姓名龐歡年級2009級學號200906014132指導教師劉學飛2011年6月17日數值計算方法實驗測試作業(yè)微分方程的后退歐拉法、龍格庫塔法(三階、四階方法)一、實驗目的1.學習matlab的使用方法。2.掌握常微分方程的幾種數值解法:后退歐拉法,龍格庫塔法三階方法,龍格庫塔法四階方法。3.比較各方法的數值解及誤差,了解各方法的優(yōu)缺點。二、實驗題目給定的初值問題:精確解計算公式:按(1)后退歐拉法,
2、步長h=0.025,h=0.1;(2)三階標準龍格—庫塔法,步長h=0.02;(3)四階標準龍格—庫塔法,步長h=0.02;求在各節(jié)點處的數值解及誤差,并比較各方法的優(yōu)缺點。三、實驗原理1.對于后退歐拉法:利用Yn+1=Yn+1/2*K1+1/2*K2①n=1,2,3……K1=hf(Xn,Yn)②K2=hf(Xn+h,Yn+K1)③三式可以完成計算需要將微分方程表達式和精度計算表達式作為兩個函數保存在m文件里并在程序中調用:①微分方程(pang_huan)functionz=pang_huan(x,y)z=x*x+x-y;end②精確
3、解計算(panghuanj_q)functionz=panghuanj_q(x)z=-exp(-x)+x*x-x+1end2、對于龍格庫塔三階解法:利用Yn+1=Yn+1/2*K1+1/2*K2①n=1,2,3……K1=hf(Xn,Yn)②K2=hf(Xn+h,Yn+K1)③三式可以完成計算3、對于四階龍格庫塔法:利用Yn+1=Yn+1/6(K1+2K2+2K3+K4)①K1=hf(Xn,Yn)②K2=hf(Xn+1/2*h,Yn+1/2*K1)③K3=hf(Xn+1/2*h,Yn+1/2*K2)④K4=hf(Xn+h,Yn+K3)⑤
4、五式可以完成計算四、實驗內容由上述實驗原理敘述的歐拉法,后退歐拉法,龍格—庫塔法三、四階常微分方程數值解法分別對已給定的初值問題進行求解,比較各方法的數值解及誤差,了解各方法的優(yōu)缺點。五、實驗結果1.對于后退歐拉法:h=0.025;y=0;x=0;fori=1:40;y=y+h*pang_huan(x,y)x=x+hvpa(y)z=panghuanj_q(x);t=abs(y-z);x0=x;plot(x0,z,'*',x0,y)A=[xyzt]end%x0=1:0.025:1%z0=panghuanj_q(x0)運行結果:A=0.0
5、25000.00030.0003A=0.05000.00060.00130.0006A=0.07500.00190.00290.0009A=0.10000.00390.00520.0013A=0.12500.00660.00810.0016A=0.15000.00990.01180.0019A=0.17500.01400.01620.0022A=0.20000.01880.02130.0025A=0.22500.02430.02710.0028A=0.25000.03060.03370.0031A=0.27500.03760.0411
6、0.0034A=0.30000.04550.04920.0037A=0.32500.05410.05810.0040A=0.35000.06350.06780.0043A=0.37500.07370.07830.0046A=0.40000.08480.08970.0049A=0.42500.09660.10190.0052A=0.45000.10940.11490.0055A=0.47500.12290.12870.0058A=0.50000.13740.14350.0062A=0.52500.15270.15910.0064A=0.
7、55000.16890.17560.0067A=0.57500.18600.19290.0069A=0.60000.20400.21120.0072A=0.62500.22290.23040.0075A=0.65000.24270.25050.0078A=0.67500.26340.27150.0080A=0.70000.28510.29340.0083A=0.72500.30770.31630.0086A=0.75000.33130.34010.0088A=0.77500.35580.36490.0091A=0.80000.3813
8、0.39070.0093A=0.82500.40780.41740.0096A=0.85000.43520.44510.0098A=0.87500.46370.47380.0101A=0.90000.49310.5034