计算方法大作业——龙贝格积分

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算方法上机报告133龙贝格积分3.1算法原理及程序框图龙贝格积分法是在复化梯形求积公式、复化辛普森求积公式和复化科茨求积公式关系的基础上,构造出的一种精度更高的数值积分方法。对于复化梯形求积公式而言,近似积分为2221[]41nnnnIfTTTT.(11)对于复化辛普森求积公式和复化科茨求积公式而言,也有类似的关系,如公式(12)和公式(13)。22221[]41nnnnIfSSSS(12)22231[]41nnnnIfCCCC(13)通过对公式(11)~(13)做进一步分析,可得到公式(14)和公式(15)。22141nnnnSTTT(14)222141nnnnCSSS(15)根据公式(14)和公式(15)表现出来的规律,令龙贝格积分为223141nnnnRCCC(16)其截断误差为cRh8f(8)(),已经具有很高的精度。龙贝格积分法是将区间[a,b]逐次分半进行计算,因此,对已知函数f(x)在区间[a,b]上的龙贝格积分法的计算公式的算法如下,程序框图如图13所示。(1)计算T1:1()()2baTfafb;(2)逐次计算T2k+1:1211221121,0,1,2222kkkkkibabaTTfaik;(3)逐次计算S2k、C2k和R2k:11111122222222232222141141141kkkkkkkkkkkkSTTTCSSSRCCC;(4)若122kkRR,则取12kIfR;否则,继续计算,直到满足精度为止。3龙贝格积分14图13龙贝格积分法程序框图3.2程序使用说明龙贝格积分法的matlab程序见附录4,该程序可以求解连续函数在特定区间上的近似积分值。运行程序按照命令窗口的提示输入相关变量直至得到结果。开始运行程序时,命令窗口会出现提示“请输入被积函数表达式:f(x)=”,此时需要输入被积函数的合法表达式,如被积函数为sinxfxx、xfxex和2lnlogfxxx则需要分别输入sin(x)/x、exp(x)+sqrt(x)和log(x)+log2(x);输入完成后按Enter键进行下一步则出现提示“请输入积分区间下限:”,此时需要输入积分区间[a,b]中的a值,输入完成后继续按Enter出现提示“请输入积分区间上限:”,根据提示输入b的值,继续按Enter出现提示“请输入积分误差:”,此时需要输入积分要求的精度,如要求的精度为10-12时输入1e-12即可。至此所有数据的输入已经完成,接着按Enter键,程序会按照图13的顺序运行,直至给出最后的结果。计算方法上机报告153.3算例及计算结果(1)《数值分析》课本第186页的例题6.1.2,用龙贝格积分法计算积分10sinxIfdxx使误差不超过10-12。使用龙贝格积分法的matlab程序对该积分进行计算,运行结果如图14所示,最终可得积分的近似解为I[f]≈0.946083070367,其结果与课本的表6.1的结果吻合。图14龙贝格积分法计算例6.1.2的运行结果(2)《数值分析》课本第211页的计算实习题6.2,用龙贝格积分法计算下列积分,使计算结果尽可能准确。③1011dxx;②120ln(1x)1dxx;③10ln(1)xdxx;④20sinxdxx.使用龙贝格积分法的matlab程序对该积分进行计算,运行结果如图15~图17所示。3龙贝格积分16图15积分①运行结果图16积分②运行结果图17积分③运行结果图18积分④运行结果由图15~图18运行结果可以看出,(2)中的四个积分结果最终分别为I[f]1≈0.822467033424、I[f]2≈0.272198261288、I[f]3≈0.693147180560和I[f]4≈1.370762168154。误差均为10-12。

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功