龙格库塔法求微分方程matlab.doc

龙格库塔法求微分方程matlab.doc

ID:58644907

大小:55.50 KB

页数:4页

时间:2020-10-16

龙格库塔法求微分方程matlab.doc_第1页
龙格库塔法求微分方程matlab.doc_第2页
龙格库塔法求微分方程matlab.doc_第3页
龙格库塔法求微分方程matlab.doc_第4页
资源描述:

《龙格库塔法求微分方程matlab.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、龙格—库塔方法求解微分方程初值问题(数学1201++陈晓云)初值问题:,四阶龙格-库塔公式:程序:1)建立四阶龙格-库塔函数function[x,y]=nark4(dyfun,xspan,y0,h)%dyfun为一阶微分方程的函数;y0为初始条件;xspan表示x的区间;h为区间的步长;x=xspan(1):h:xspan(2);y(1)=y0;forn=1:length(x)-1k1=feval(dyfun,x(n),y(n));k2=feval(dyfun,x(n)+h/2,y(n)+h/2*k1);k3=feva

2、l(dyfun,x(n)+h/2,y(n)+h/2*k2);k4=feval(dyfun,x(n+1),y(n)+h*k3);y(n+1)=y(n)+h*(k1+k2*2+2*k3+k4)/6;endx=x;y=y;2)执行程序(m文件)dyfun=inline('x^2+x-y');[x,y1]=nark4(dyfun,[0,1],1,0.1);x=0:0.1:1;Formatlongy2=x.^2-x+1R4=y2-y1[x',y1',y2',R4']y2=dsolve('Dy=x^2+x-y','y(0)=1',

3、'x')plot(x,y1,'b*-')holdony3=inline('x^2-x+1')fplot(y3,[0,1],'ro-')legend('R-K4','解析解')3)执行结果ans=XRK4近似值解析值01.00001.00000.00000.33330.00000.00000.11460.00000.00000.00840.00000.00000.72550.00000.00000.73150.00000.00000.79260.00000.00000.37460.00000.00000.90830.00

4、000.00000.93520.00001.00001.14331.0000误差0-0.3333-0.1146-0.0084-0.7255-0.7315-0.7926-0.3746-0.9083-0.9352-0.1433y2=x^2-x+1结果分析:初值问题的解析解为Y=x^2-x+1由图看出龙格库塔方法误差很小,具有很高的精度。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。