四阶Runge-Kutta方法.docx

上传人:lao****ou 文档编号:1102352 上传时间:2024-11-05 格式:DOCX 页数:2 大小:16.75KB
下载 相关 举报
四阶Runge-Kutta方法.docx_第1页
第1页 / 共2页
四阶Runge-Kutta方法.docx_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《四阶Runge-Kutta方法.docx》由会员分享,可在线阅读,更多相关《四阶Runge-Kutta方法.docx(2页珍藏版)》请在第一文库网上搜索。

1、实验题目四阶Runge-Kutta方法班级:09医软一班小组成员:赵善飞09714057,翟增辉09714054负责算法编程实现局部马卫卫09714026负责数据输入输出程序和实验报告王燕09714040负责后期运行结果检验实验名称:利用四阶龙格-库塔方法求解微分方程的初值问题。实验目的:编写关于四阶龙格-库塔c+程序求解微分方程的初值问题。实验原理:一阶常微分方程初值问题的数值解法是近似计算中很重要的局部。常微分方程初值问题的数值解法是求方程6.1J的解在点列Z=XE+45=)上的近似值X,这里儿是ZT到工的步长,一般略去下标记为。常微分方程初值问题的数值解法一般分为两大类:1单步法:这类方

2、法在计算1时,只用到心十Z和方,即前一步的值。因此,在有了初值以后就可以逐步往下计算。典型方法如龙格-库塔(R-K)方法。(2J多步法:这类方法在计算以”时,除用到、乙和”以外,还要用=12,&;Q0),即前面卜步的值。典型方法如Adams方法。经典的R-K方法是一个四阶的方法,它的计算公式是:h=(1+2(+2K3+K4)6叫=UpH)hh2=(xh-y+/K|)6.2K3=Un+pyri+g2)K4=f(1t+h,yn+h3)经过修改正的可用c+算法R-K四阶算法:开始程序设计流程Xa=O,xb=1,y=1C+程序如下:#inc1udec1assRKXprivate:输入步长m值doub1

3、ek1,k2,k3,k4;b=xb;a=xa;u=y;doub1ef=u-2*tu;doub1eh,b,u,a;pub1ic:voidseth(doub1c1=0)h=1;)设步长voidsetf(doub1exa=0,doub1exb=0,doub1ey=0)设初值和范围(xa,xb)(b=xb;a=xa;u=y;1doub1ef(doub1et,doub1eU)函数值,可根据你所求的不同的方程进行修改函数设定doub1ef=-u*(1+t*u);returnf;)voiddork()/R-K主函数(for(intcount=0;count(b-a)/h;count+)k1=f(acount*h,u);k2=f(a+count*h+h2,u+h*k1/2);k3=f(a+count*h+h2,u+h*k22);k4=f(a+count*h+h,u+h*k3);u=u+h*(kI+2*k2+2*k3+k4)6;cout,count,次迭代;coutu=,u,k1=k1,k2=k2,k3=k3,k4=k4end1;voidmain()(RKmy;doub1em;COUtV请输入步长值:m;my.seth(m);my.setf(O,1,1);my.dork();当步长为0.2时,u的值与例题中y的值相等,故程序正确。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服