网站大量收购独家精品文档,联系QQ:2885784924

工程常用算法作业五-45组.doc

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
工程常用算法作业五-45组

《工程常用算法》综合实践作业五 作业名称:常微分方程数值解法 完成日期: 2015年 07 月07 日 班级 学号 姓名 主要工作说明 自评成绩 编写程序及调试 A 45组 总结 绘制流程图及排版 题目: 常微分初值问题如下: 请用四阶经典Runge-Kutta格式、四阶Adams显示方法和隐式方法求解,比较三种方法的计算结果。 要求:任选一种方法,但希望得到“优秀”成绩的小组必须完成最后一种求解方法。二、程序流程图 三、完整的程序及简要的注释 /**********隐式Adams法**************/ #include #include void kongge void //子函数,用来输出空格 int i; for i 0;i 12;i++ printf ; double f double x,double y ;//子函数声明 double yy double x ;//子函数声明 double f double x,double y //子函数定义f x,y double a; a y-2*x/y; return a; double yy double x //子函数定义y函数 double a; a sqrt 2*x+1 ; return a; void main double k1,k2,k3,k4,h 0.1,x0 0,x1,y0 1,y1,y11,ff[11],y[11]; int i,j; y[0] 1; for i 1;i 4;i++ //龙格-库塔法算y1,y2,y3 k1 f x0,y0 ; k2 f x0+h/2,y0+k1*h/2 ; k3 f x0+h/2,y0+h*k2/2 ; k4 f x0+h,y0+h*k3 ; y1 y0+h* k1+2*k2+2*k3+k4 /6; y[i] y1; y0 y1; x0 i*h; for i 0;i 4;i++ //计算f1,f2,f3 x0 i*h; ff[i] f x0,y[i] ; for i 4;i 10;i++ //Adams方法计算 y0 y[i-1]+h* -9*ff[i-4]+37*ff[i-3]-59*ff[i-2]+55*ff[i-1] /24;//预测值 y[i] y[i-1]+h* ff[i-3]-5*ff[i-2]+19*ff[i-1]+9*f i*h,y0 /24;//校正值 ff[i] f i*h,y[i] ; printf 隐式Adams:\n ; printf 计算值 ; kongge ; printf 准确值 ; kongge ; printf 误差\n ; for i 0;i 11;i++ //输出计算结果 printf x %.1f y[%d] %-13.10f y %d %-13.10f e %-13.10f\n,i*h,i,y[i],i,yy h*i ,fabs y[i]-yy h*i ; getchar ; 四、程序运行结果 五、对不同实现方法的运行结果进行比较 六、问题与总结

您可能关注的文档

文档评论(0)

zilaiye + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档