收藏 分享(赏)

实验八R-K方法.doc

上传人:精品资料 文档编号:10221367 上传时间:2019-10-21 格式:DOC 页数:2 大小:31.50KB
下载 相关 举报
实验八R-K方法.doc_第1页
第1页 / 共2页
实验八R-K方法.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、一、实验目的及要求实验目的(1) 掌握龙格库塔算法的本质,构造二阶,四阶龙格库塔方法的思想。(2) 用一门自己熟悉的语言实现此算法。实验要求:(1) 根据算法的特征写出算法流程图;(2) 测试给出的例子;二、实验内容用四阶的龙格库塔公式解初值问题:/(2.0)1dyx2.0.6,0.2xh三、实验步骤(该部分不够填写.请填写附页)一、实验目的及要求实验目的: (1) 掌握龙格库塔算法的本质,构造二阶,四阶龙格库塔方法的思想。(2) 用一门自己熟悉的语言实现此算法。实验要求:(1) 写出算法描述;(2) 测试给出的例子;二、实验内容用四阶的龙格库塔公式解初值问题:/(2.0)1dyx2.0.6,

2、0.2xh三、实验步骤(该部分不够填写.请填写附页)1.算法描述:对给定的 f(x,y),用四阶 Runge-Kutta 法求解常微分方程初值问题:y(n+1)=y(n)+(h*(k1+2*k2+2*k3+k4)/6k1=f(xn,yn)k2=f(xn+0.5*h,yn+0.5*h*k1)k3=f(xn+0.5*h,yn+0.5*h*k2)K4=f(xn+h,yn+h*k3)2.用 C 语言实现算法的程序代码#include#include#define f(x,y) (x/y)int main(void)int m;int i;double a,b,y0;double xn,yn,yn1;d

3、ouble k1,k2,k3,k4;double h;printf(“nInput the begin and end of x:“); /*输入区间*/scanf(“%lf,%lf“,printf(“Input the y value at %f:“,a); /*输入初始点的值*/scanf(“%lf“,printf(“Input m valuedivide(%f,%f):“,a,b); /*输入区间的个数*/scanf(“%d“,if(m=0)printf(“Please input a number larger than 1.n“);return 1;h=(b-a)/m; /*区间的间隔*/xn=a;yn=y0;for(i=1;i=m;i+)k1=f(xn,yn); /*四阶 Runge-Kutta 公式*/k2=f(xn+h/2),(yn+h*k1/2);k3=f(xn+h/2),(yn+h*k2/2);k4=f(xn+h),(yn+h*k3);yn1=yn+h/6*(k1+2*k2+2*k3+k4);xn+=h;printf(“x%d=%f,y%d=%fn“,i,xn,i,yn1); /*输出结果*/yn=yn1;return 0;注: 实验成绩等级分为(90-100 分)优,(80-89 分)良,(70-79 分) 中,(60-69 分) 及格,(59 分)不及格

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报