写在章前:积分与微分的计算,是具有广泛应用的古典问题。 然而,在微积分教材中,只对简单的或特殊的情况,提供了函数的积分或微分的解析表达式,在理论上可以使用Newton-Leibniz公式计算。但对很多实际问题,常常遇到的主要问题有:①找不到被积函数

的原函数

②被积函数的解析表达式结构十分复杂

③被积函数没有表达式,而是由测量数据或数值计算给出的数据表示。

对于上述这些情况,都要求建立定积分的近似计算方法。所谓关于 的数值积分公式,就是一类公式,它是用被积函数

区间上的一些节点
处的函数值
的线性组合。右端公式称为左端定积分的某个数值积分公式.其中
称为积分节点,
为求积系数, 也称之为伴随节点
的权。

本章讨论常用的数值求积公式及它们的误差估计和代数精度,而对数值微分只作简单介绍。

一、数值微分

对于函数的表达式复杂,或函数以表格形式给出,可以利用数值方法求其导数,这类问题称为数值微分。即给定函数表

,求出函数在节点
处的导数值。

1、差商型求导公式

由导数定义,

,容易想到当h充分小时,可用差商近似导数。由泰勒公式得到他们的余项公式。

①向前差商公式

余项:

②向后差商公式

余项:

③中心差商公式

余项:

由泰勒公式得到他们的余项公式:

可以看出,用差商近似导数,其精确度与步长

有关,
越小近似程度越高。中心差商公式的精确度最高。实际计算时,如果
取得过小,又会因有效数字损失而导致误差增大。

从几何上看,向前,向后,中心差商公式分别是以三点中的某两点间弦的斜率近似曲线中点斜率的。一般的,对称的中心差商与中点处的斜率更接近。在实际使用中,估计插值区间端点处导数值时多使用端点形式,其他时候更多使用中点形式。

2、插值型求导公式

已知函数在一些离散点上的值时,可用插值多项式近似函数,因此可望用插值多项式的导数作为函数导数的近似值。

设已知函数

个节点
,
,其插值多项式为
,用
表示的导数近似函数导数
,称为插值型求导公式。

内n+1阶可导,差值余项为

将上式两端对x求导,

未知,所以上式很难估计。但是如果取
,则第一项变为0,
,

所以,插值型求导公式通常用于求节点处导数的近似值。

等距节点一阶导数的几个常用公式:

①两点公式

过节点

的拉格朗日差值多项式为

所以

截断误差为

②三点公式

过节点

的拉格朗日差值多项式为

所以

截断误差为

二、牛顿-科特斯公式

构造数值积分方法的基本思想就是,用被积函数在积分区间

上的某些节点处的函数值的线性组合作为定积分的近似值,即

其中

被称为求积系数,只与节点有关而与被积函数的具体形式无关(只有节点处的函数值参与计算)。由节点和求积系数的不同取法,可以得到不同的求积公式。

我们称

为求积公式的截断误差。

最直接自然的想法是用差值多项式代替

,即

这样得到的求积公式称为插值型求积公式。通常用拉格朗日插值。

由余项我们可以得到截断误差:

1、牛顿科特斯公式介绍

如果取等距节点,则插值型求积公式更为简便。

将区间

进行n等分,则节点

a6b964bc37671124215aa7ec6b6b2d2a.png

N-C公式的截断误差为

我们知道,求Cotes系数只与等分区间数n有关,与积分区间和被积函数都没有关系。所以可以事先做好表格,使得计算更加方便。

Cotes系数的性质:

①对称性

从式子就可以看出,前面的阶乘对称,-1与后面积分的正负对应。

②权性

求积公式是由拉格朗日插值推导出的,拉格朗日系数和为1。积分之后把(b-a)提出来,则系数和还是1。

介绍几个常用公式:

①当n=1时,

即以梯形面积近似曲边梯形面积,所以称为梯形公式。

②当n=2时

从几何上看,这是以过曲线两端点与中点三点的抛物线代替曲线求积分的,所以称为抛物线求积公式,又称新普生simpson公式。

③当n=4时,又称cotes公式

2、误差估计

①首先引入衡量数值积分公式近似程度的概念:

定义:若当
为任意次数不高于m次的多项式时,求积公式均精确成立,而对于某个m+1次多项式,公式不精确成立,则称该求积公式具有m次代数精确度

代数精确度在一定程度上能够反映求积公式的近似程度。

梯形公式具有一次代数精确度。因为如果

是一次多项式,则

,则
一般地,由
插值多项式导出的求积公式至少有
次代数精确度
定理:2n阶New-Cotes公式至少具有2n+1次代数精确度

证明:

奇函数且积分区间关于原点对称,所以积分值为0,即余项为0。

q.e.d.

由线性性其实易证求积公式具有

次代数精确度的充要条件是它对
都能准确成立,但对式
不准确成立。

这一结论给出了判别一个求积公式的代数精确度的方法

②梯形公式和新普生公式的误差估计

梯形公式的截断误差为

因为

不变号,所以由广义积分中值定理,存在
,使得

定理:
,则梯形公式的误差为
定理:
,则simpson公式的误差为

其中

为步长

证明即利用n次插值至少有n次代数精度,误差后半部分为0,得到化简。

利用更复杂的运算可以到处Cotes公式的截断误差为:

3、Newton—Cotes求积方法的缺陷

从余项公式可以看出,要提高求积公式的代数精度,必须增加节点个数,而节点个数的增加,会导致

(1)插值多项式出现Runge现象;

(2)Newton—Cotes数值稳定性不能保证(n>7)


三、复化求积公式

由于N-C公式的不稳定性,为了提高计算精度,我们考虑对被积函数进行分段低次多项式插值。由此到处复化求积公式。

思路就是把积分区间分成若干个小区间,在每个小区间上采用低阶的牛顿科特斯公式。

1、定步长积分法

将积分区间分割为n等份,各节点

①复化梯形公式

设函数

,则复化题型公式求积余项为:

(由连续性,

②复化simpson公式

复化题型公式求积余项为:

类似的由连续性

③复化cotes公式

2、变步长复化求积法

复化求积法是提高精度的有效方法,但是由于表达式往往未知或者高阶导数难以计算,在给定精确条件下,步长h往往难以确定。h太大会导致较大的截断误差。h太小,计算量增加会增加舍入误差积累。

变步长的思想就是逐次分半,先选择一个较大的步长,对结果进行精度估计,若不满足精度则步长减半,知道满足精度要求。

两个问题:

①精度判断:前后两次近似值的误差小于已知精度(事后估计)

由复化梯形的公式余项我们可以知道,前后两项的比值约为4。

故只要判断增量部分是否足够小。

②如何节省计算量

故每次只要多算中点部分。

3、龙贝格求积法(逐次分半加速收敛算法)

提出思路就是,能否通过求积公式的截断误差构造一个新的序列,它逼近的阶更高。

由上面的分析我们已经得到了

那么是不是这种系数组合会有更好的精度呢?

事实上,我们将复化梯形公式按上述思想修正,就得到了复化新普生公式。

同样的,复化新普生公式修正即得到复化cotes公式,复化cotes公式修正得到龙贝格公式。

d662d7a034ca6cb7baa87c67edf33768.png

四、高斯求积公式

构造牛顿科特斯公式时,我们用等分点作为求积节点。这样做在简化问题处理过程的同时,限制了精度。

所以我们想,能否通过适当选取求积节点的位置来使求积公式的精度尽可能的高?

通过前面的介绍我们知道,正交基具有较好的性质。我们考虑使用带权1下的正交多项式--legendre多项式。运用格莱姆施密特方法,我们可以求一下legendre多项式。

Gauss求积方法:取

个零点
作为结点对
进行估计。我们有估计值
,其中
。(
为关于
结点的Lagrange基函数)

所以我们现在可以用这组多项式作为线性空间的基来表示多项式。

定理:
个结点Gauss方法的代数精度为

证明:即证明当

为任意次数不超过
的多项式时,误差均为
为任意次数不超过
的多项式时,

,Lagrange插值不会产生任何误差。 当
,我们利用多项式的带余除法性质,将Legendre多项式写入表达式中。 即
由于其正交性,上式
而又有

至此显然得证。

推广:Gauss方法事实上可以在任意区间中应用。我们只需要构造

的线性变换
,即可将Gauss方法推广至任意有限区间中。

计算积分只需计算求积系数(多项式基函数积分)与零点处的函数值即可。

我们还能够通过函数值的线性组合的角度来理解Gauss方法。 考虑估计形式

(取两个结点进行估计)。 我们使其代数精度尽可能的高,从低到高次分别将
代入,得到四个未知数四个方程。
解得
的两个根。 这说明:
Gauss方法在积分估计值为函数值的线性组合的情形下在代数精度上是最优的。

相应的,当权值为

时,正交基相应的有所变化,相应的,有Gauss-Chebshev求积公式,除了求积系数需要化为首一多项式外(实际上可直接利用结论
),其余相似,不再赘述。
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐