首页 Newton-Cotes积分++Romberg积分实验报告含源码

Newton-Cotes积分++Romberg积分实验报告含源码

举报
开通vip

Newton-Cotes积分++Romberg积分实验报告含源码课程实验报告 课程实验报告 课程名称 数值分析 班级 实验日期 2008年9月30日 姓名 学号 实验成绩 实验名称 实验二 数值积分 实 验 目 的 及 要 求 一、 Newton-Cotes积分 实验目的:掌握Newton-Cotes算法程序设计 实验要求: 1、数值求积的Newton-Cotes算法程序设计。 2、要求程序不断加密对积分区间的等分,自动地控制Newton-Cotes算法中的加速收敛过程,直到定积分近似值的误差不超过 为止,输出求得的定积分近似值 二、Romberg积分 实验目的:掌握数值求积的...

Newton-Cotes积分++Romberg积分实验报告含源码
课程 实验报告 化学实验报告单总流体力学实验报告观察种子结构实验报告观察种子结构实验报告单观察种子的结构实验报告单 课程实验 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 课程名称 数值分析 班级 实验日期 2008年9月30日 姓名 学号 实验成绩 实验名称 实验二 数值积分 实 验 目 的 及 要 求 一、 Newton-Cotes积分 实验目的:掌握Newton-Cotes算法程序设计 实验要求: 1、数值求积的Newton-Cotes算法程序设计。 2、要求程序不断加密对积分区间的等分,自动地控制Newton-Cotes算法中的加速收敛过程,直到定积分近似值的误差不超过 为止,输出求得的定积分近似值 二、Romberg积分 实验目的:掌握数值求积的Romberg算法程序设计 实验要求: 要求程序不断加密对积分区间的等分,自动地控制Romberg算法中的加速收敛过程,直到定积分近似值的误差不超过 为止,输出求得的定积分近似值 实 验 环 境 Windows xp操作系统 VC++6.0 实 验 内 容 一、 Newton-Cotes积分 计算实例求定积分 x 1.8 2.0 2.2 2.4 2.6 f(x) 3.12041 4.42569 6.04241 8.03014 10.46675 计算 二、Romberg积分 (1)、数值求积的Romberg算法程序设计。 (2)、要求程序不断加密对积分区间的等分,自动地控制Romberg算法中的加速收敛过程,直到定积分近似值的误差不超过 为止,输出求得的定积分近似值 (3)、计算实例求定积分 梯形求积公式: Romberg求积的递推化公式: 其中 为定积分近似值, 决定着Romberg求积公式的阶数,例如 为一阶Romberg求积公式(即梯形求积公式),一般地, 是 阶Romberg求积公式的计算结果; 决定着等分数, 是在 等分情况下的 阶复化Romberg求积公式的计算结果。 算 法 描 述 及 实 验 步 骤 一、 Newton-Cotes积分 1、​ Newton-Cotes积分程序设计。 2、​ 计算实例 3、​ 撰写实验报告。 二、Romberg积分 1、​ 设计数值求积的Romberg算法程序; 2、​ 计算实例: 3、​ 撰写实验报告 调 试 过 程 及 实 验 结 果 1、​ 实验1的运行结果如图 图一 2、​ 实验2的运行结果如图: 图二 总 结 通过这次实验,我掌握了数值积分Newton-Cotes算法和Romberg算法,加深了对其基本原理及其应用的理解,实验也得出了正确的积分结果 ,而且使我进一步理解并掌握了Romberg算法基本推导过程,并且能够根据计算过程设计出合适的数值求积程序,计算积分。因为这两种算法都是最基本最常用的积分 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 ,有很多实际问题常常需要计算积分才能求解,掌握这两种方法对我们来说是至关重要的。经过我认真仔细的修改,程序最终运行,并输出正确的结果,使我对我能顺利的完成后面的实验充满了信心。 附 录 源程序清单 1.Newton-Cotes算法 #include #include #include using namespace std; typedef struct data { float x; float y; }Data;//包含自变量x和函数值y的结构体 Data d[10]; float Cotes(Data d[10],float h); void main() { float h,result; float x,y; int count; char A; do { cout<<"请输入已知数据的组数(不得超过10组):"; //要求用户输入数据组数 cin>>count; if(count>=10) break;//检查输入的是否合法 //获得各组数据 for(int i=0;i>d[i].x; cout<<"请输入第"<>d[i].y; cout<<"即有f("<>A; }while(A=='Y'||A=='y'); } float Cotes(Data d[10],float h) { float a=h/90,sum; sum=a*(7*d[0].y+32*d[1].y+12*d[2].y+32*d[3].y+7*d[4].y); return sum; } 2、Romberg积分 #include #include #include using namespace std; double Tixing(double a,double b); double Simpson(double T1,double T2); double Cotes(double S1,double S2); double Romberg(double C1,double C2); void main() { int i; double a,b; double t[4],s[3],c[2],r; char A; do{ cout<<"请输入a的值:"; cin>>a; cout<<"请输入b的值:"; cin>>b; cout<<"梯形公式: "; for(i=0;i<4;i++) { t[i]=Tixing(a,b); printf("%9.8f ",t[i]); } cout<<"\n辛普森公式: "; for(i=0;i<3;i++) { s[i]=Simpson(t[i],t[i+1]); printf("%9.8f ",s[i]); } cout<<"\nCotes公式: "; for(i=0;i<2;i++) { c[i]=Cotes(s[i],s[i+1]); printf("%9.8f ",c[i]); } cout<<"\n利用Romberg积分算法进行计算求得:"<>A; }while(A=='Y'||A=='y'); } double Tixing(double a,double b) { static double e=0; static int k=0; int i; double h=b-a,sum=0; if(k==0) { sum=h/2*(sqrt(a)+sqrt(b)); e=sum; k++; return sum; } else { int n; double m=pow(2,k); for(i=1;i<=m/2;i++) { n=2*i-1; sum+=sqrt(a+n/m*h); } sum = e/2+h/m*sum; e=sum; k++; return sum; } } double Simpson(double T1,double T2) { double sum; sum=(4*T2-T1)/3; return sum; } double Cotes(double S1,double S2) { double sum; sum=(16*S2-S1)/15; return sum; } double Romberg(double C1,double C2) { double sum; sum=(64*C2-C1)/63; return sum; }
本文档为【Newton-Cotes积分++Romberg积分实验报告含源码】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_726618
暂无简介~
格式:doc
大小:122KB
软件:Word
页数:6
分类:互联网
上传时间:2011-04-07
浏览量:77