- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数值积分
理论依据
逼近论——构造一个简单函数p(x)近似表示f(x),然后对 p(x)求积分得到 f(x)的积分的近似值。基于插值原理,推导出数值积分的基本公式。
§1插值求积公式
为了用数值方法求,对被积函数f(x)在给定的n+1个节点上作Lagrange插值,用插值函数Pn(x)代替f(x),就可用I(Pn(x))构造求积公式,近似地计算定积分I(f(x))。
§2Newton—Cotes公式
§2.1Newton—Cotes公式的推导
当§1.1插值求积公式的插值节点为等距节点时,就得到Newton—Cotes公式。
将区间[a,b]n等分,,n+1个节点为
xk=a+kh (k=0,1,…,n)
在节点上对f(x)的Lagrange插值多项式是:
用Pn(x)代替f(x)构造求积公式:
记,(k=0,1,…,n)
作代换x=a+th带入上式,变为:
其中: (k=0,1,…,n) (1-1)
这个积分是有理多项式积分,它与被积函数f(x)和区间[a,b]无关。只要确定n就能计算出系数。
于是得到称为Newton—Cotes公式的求积公式:
(1-2)
其中称为Newton—Cotes系数。如表1所示。
表1 Newton—Cotes系数
n 1 1/2 1/2 2 1/6 4/6 1/6 3 1/8 3/8 3/8 1/8 4 7/90 32/90 12/90 32/90 7/90 5 19/288 25/96 25/144 25/144 25/90 19/288 6 41/840 9/35 9/280 34/105 9/280 9/35 41/840
§2.2Newton—Cotes公式误差和稳定性
在积分公式中用插值多项式Pn(x)代替f(x)的插值误差是
因此,Newton—Cotes公式的截断误差是
(1-3)
讨论舍入误差对计算结果产生的影响,设(1-2)式近似计算
其中计算函数值f(xn)有误差值(k=0,1,2, …,n)设计算无误差,舍入误差也忽略,则,由(1-2)式计算时引式的误差为
如果皆为正,并设,则,故有界,即引起的误差受控制,不超过倍。保证了数值计算的稳定性。
但当n8时,将出现负数,这时,数值计算的稳定性不能保证,所以节点超过8时Newton—Cotes公式不能用。
当n为偶数时,Newton—Cotes积分公式具有n+1次代数精度。
§2.3经典Newton—Cotes公式
当n=4,5点公式称为经典Newton—Cotes公式
其中 (k=0,1,…,4),它具有5次代数精度。
§3 Gauss-Legendre求积公式
在积分区间[a,b]内对积分节点不作限制,不取等距,积分节点和求积系数都作为待定未知量。通过适当选择节点和求积系数,能构造更有效的高精度求积公式。
§3.1计算n阶求积公式
若有m次代数精度,对(k=0,1,…)应有
而。
§3.2 Gauss求积公式的基本原理
更一般形式: (2-1)
为权函数,设0,且在[a,b]上可积,构造n阶求积公式:
(2-2)
积分点使得(2-2)式达到2n+1次代数精度,则积分点称为Gauss点,(2-2)式称为Gauss求积公式。
§3.3 Gauss-Legendre求积公式
求积分,权数=1,
其中(i=0,1,…,n)是n+1阶Legendre多项式的零点,求积系数为:
(i=0,1,…,n)
具体Gauss-Legendre公式的插值节点和系数见表2(其中n为插值节点个数,为积分点,为对应积分点的系数)。
表二Gauss-Legendre公式的插值节点和系数
对一般区间[a,b]上的积分,通过代换:
将转换到。再用Gauss-Legendre求积公式:
进行积分求解
问题描述
用Newton—Cotes公式、Gauss-Legendre求下列积公式计算积分,并比较结果:
问题分析
题目给出的是用Newton—Cotes公式、Gauss-Legendre求积分的问题,为了实现题目要求,应编写Matlab程序,实现计算被积函数在积分区间[0,1]的积分,得到最终结果。最后将二者得到的结果进行比较,得出关与
Newton—Cotes公式、Gauss-Legendre求积公式精确度的结论。
求解计算
§1Newton—Cotes公式求解的Matlab程序
§1.1方法1:
(1)在Matlab工作窗口中:
fn=inline(2/(1+x.^2));
y1=quad8(fn,0,1)
文档评论(0)