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

数值积分实验.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数值积分实验 学号:P0725005 姓名:乔海亮 TOC \h \z \t 数值实验 1级,1,数值实验 2级,2 1. 问题描述 2 2. 解决方法 2 2.1. Gauss-Legendre 2 2.2. Romberg 3 3. 数值结果 3 3.1. Gauss-Legendre 3 3.2. Romberg 3 4. 结果分析对比 3 5. 代码和程序说明 4 5.1. 开发环境 4 5.2. 主要变量和函数说明 4 5.3. 程序说明 4 问题描述 试用不同数值积分方法计算的近似值,其中注: 1、把区间分成10个子区间,用的Gauss-Legendre求积公式的复合求积公式计算。 2、用Romberg算法计算积分,取,并与第一种办法比较。 解决方法 Gauss-Legendre 把区间分成10个子区间,则积分步长。第个积分区间为,做变换 则,积分式变为 利用Gauss-Legendre求积公式,即可求出每个区间的积分值。 这里 累加各区间的积分值,即可得到总积分值 Romberg 由题意知,,由下式给出 , 而表示为 若,则终止计算,并取,否则令继续计算。 数值结果 Gauss-Legendre 把区间分成10个子区间,在每个区间用G-L积分,累加得到 Romberg 根据计算精度的要求,计算得到 具体的结果,见“Romberg结果.txt”,该数据文件可通过运行程序得到。 结果分析对比 积分精确值为,相较之下Romberg的精度高一些。但是,这样的结果并不是说,Gauss- Legendre求积公式比Romberg求积公式更精确。 Romberg求积方法,算法简单,当节点加密提高积分近似程度时,前面的计算结果可以为后面的计算使用,因此,对减少计算量很有好处。并有比较简单的误差估计方法。 Gauss-Legendre求积,它的节点是不规则的,所以当节点增加时,前面的计算的函数值不能被后面利用。计算过程比较麻烦,但精度高,特别是对计算无穷区间上的积分和奇异积分,则是其他方法所不能比的。 代码和程序说明 开发环境 Windows XP SP2 + Visual Studio 2005 主要变量和函数说明 变量: double m_dblRomberg; // Romberg得到的积分值 double m_dblGaussLegendre; // G-L得到的积分值 int m_nZone;// 等分区间个数 double m_dblE; // 精度控制 int m_nM; // m次加速 double m_dblA; // 积分区间a double m_dblB; // 积分区间b 函数: afx_msg void OnButtonGaussLegendre(); // 计算G-L积分值 afx_msg void OnButtonRomberg(); // 计算Romberg积分值 程序说明 NumericalIntegration_Src.rar NumericalIntegration_Demo.exe

文档评论(0)

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

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

1亿VIP精品文档

相关文档