四阶龙格库塔法matlab实现.docx

四阶龙格库塔法matlab实现.docx

ID:50976698

大小:23.31 KB

页数:2页

时间:2020-03-16

四阶龙格库塔法matlab实现.docx_第1页
四阶龙格库塔法matlab实现.docx_第2页
资源描述:

《四阶龙格库塔法matlab实现.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、%废话不多说,直接复制就可以运行,文章底部有参考例子,不明白就看看function[yy]=R_K_4(f,y0,x0,xn,hh)%f是inlinefunction的句柄%y0是初始值%[x0xn]是计算范围%hh是步长%%===输入判断===if(4==nargin)%==当没有给步长的时候使用默认步长==h=0.1;elseif(5==nargin)h=hh;end%%===参数初始化(可以修改,可从网上找相关参数的值),以下是通用参数===c=[1/61/31/31/6];r=[0.50.51];u=

2、[0.500.5001];%%===x=x0:h:xn;%==计算节点==y=y0;N=length(x);%==节点数==fork=1:N-1%==以下就直接按书本公式写的,应该容易理解==kk(1)=f(x(k),y(k));kk(2)=f(x(k)+r(1)*h,y(k)+u(1)*h*kk(1));kk(3)=f(x(k)+r(2)*h,y(k)+u(2)*h*kk(1)+u(3)*h*kk(2));kk(4)=f(x(k)+r(3)*h,y(k)+u(4)*h*kk(1)+u(5)*h*kk(2)+

3、u(6)*h*kk(3));y(k+1)=y(k)+h*(c(1)*kk(1)+c(2)*kk(2)+c(3)*kk(3)+c(4)*kk(4));end%%===输出处理===if(0==nargout)fork=1:Nfprintf('x:%fty:%f',x(k),y(k));endelseif(1==nargout)yy=y;elsedisp('error:pleasecheckyourinput');return;endend%%===例子=======%%===input=========%

4、f=inline('x+y','x','y');%R_K_4(f,1,0,1,0.2)%%===output========%x:0.000000y:1.000000%x:0.200000y:1.242800%x:0.400000y:1.583636%x:0.600000y:2.044213%x:0.800000y:2.651042%x:1.000000y:3.436502

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

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

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