数值积分

用被积函数的有限个抽样值的离散和或加权平均值近似地代替定积分的值。在求函数ƒ(x)的定积分时,常常无法用初等函数表示原函数,因此能按牛顿-莱布尼茨公式

  (1)

计算积分值的定积分是不多的。另外,当ƒ(x)是列表函数时,也不能使用式(1)计算它的积分值。上述事实说明,必须研究近似估算积分的数值积分方法。历史上,阿基米德、I.牛顿、L.欧拉、C.F.高斯、∏.Л.切比雪夫等人都对此有过贡献。

数值积分公式

一般是形如

  (2)

的近似公式,又称求积公式,xjAj(i=0,1,…,m)分别称为求积结点和求积系数,通常xj∈[αb];式(2)右端称为求积和;两端之差

称为求积余项或求积误差;区间[αb]可以是有限的或无限的。 构造求积公式的问题就是确定xjAj使得 E(ƒ)在某种意义下尽可能地小。

代数精度

若式(2)对ƒ(x)=xk(k=0,1,…,d)精确成立,亦即E(ƒ)=0,而当ƒ(x)=x时(2)不再是精确等式,则说求积公式(2)的代数精度是d。根据K.外尔斯特拉斯多项式逼近定理,就一般的连续函数ƒ而言,d越大E(ƒ)越小,因此可以用代数精度的高低说明求积公式的优劣。

插值型求积公式

通过插值途径构成的求积公式。用ƒ(x)的以x0x1,…,xm为结点的插值多项式

近似替代ƒ(x)后,经过积分可以得到形如(2)的插值型求积公式,其中求积系数

。  (3)

特别,若所有的xj都属于[αb],则称它为内插型求积公式。这是一类最基本的求积公式。由于m+1个结点的插值型求积公式的代数精度至少是m,所以具有一定代数精度的求积公式总是存在的。

牛顿-科茨公式

等距结点情形下的权函数为1的内插型求积公式。设[αb]为有限区间,ω(x)呏1。取Aj由式(3)确定,则求积公式

  (4)

称为[αb]上的m+1点牛顿-科茨公式,它的代数精度至少是m。当m=1时,式(4)变成

此式右端等于以ƒ(α)和ƒ(b)为底,以b-α为高的梯形的面积值,故通称为梯形公式,它的代数精度是1。若ƒ″(x)在[αb]上连续,则通过积分插值余项,可知它的求积误差为

m=2时,式(4)变成

这是辛普森公式,由于求积结点选得恰当,它的代数精度是3。当ƒ(4)(x)在[αb]上连续时,它的求积误差为

m≥10,牛顿-科茨公式中的求积系数总有一些是负的。这样的公式在计算上会带来较大的误差,一般不被采用。

由上述两个求积公式的误差表达式看出,积分区间越小,求积误差就越小。因此为了提高求积精度,可使用复化求积公式。若用分点将[αb]n等分,然后对每个子区间[xjxj+1]应用梯形公式,并对i=0,1,…, n-1求和,即得复化梯形公式

若用分点 将[αb]2n等分,然后对子区间[x2jx2j+2]应用辛普森公式,并对i=0,1,…,n-1求和,即得复化辛普森公式 

逐次分半算法和龙贝格公式

递推关系和逐次分半算法是数值方法的重要技巧,可用以节省计算时间和计算机的存储量。龙贝格求积方法正是利用逐次分半算法和递推关系构成的一种在现代计算机上十分有效的数值积分法。

下面以梯形公式为例说明逐次分半算法。在整个区间[αb]上应用梯形公式算出积分近似值T1;将[αb]二等分,应用n=2的复化梯形公式算出T2;再将每个小区间二等分(即将[αb]四等分),应用n=4的复化梯形公式算出T4,如此进行,可得T1T2T4,…。在计算T2n时可利用已算出的Tn值:

式中

为复化中矩形公式,这样,只需要计算ƒ(x)的n个新值即可从Tn得到T2n。显然,逐次分半算法充分地利用了前次的计算结果。

比较复化公式S2nT2nTn发现, 适当地组合T2nTn可得到代数精度为3的辛普森公式,即有

同样,适当组合S4nS2n可得到代数精度为5的求积公式

如此可以引出一系列新公式(递推关系):

此处,T

Tn。上式的代数精度是2k+1。通常称上式为逐次分半加速公式或龙贝格公式。实际计算可按表1图

所示进行:当对角线上相邻两个近似值之差的绝对值小于允许误差时,计算即可停止,并取为积分近似值。

高斯型公式

一类具有最高的代数精度的内插型求积公式(表2

图

)。求积公式(2)含有2(m+1)个自由参数(xjAj),恰当选择这些参数,能使公式(2)的代数精度达到2m+1。高斯求积理论中的一个基本定理断言:只要把结点x0x1,…,xm取为区间[αb]上关于权函数 ω(x)的m+1次正交多项式的零点,内插型求积公式(2)即达到最高代数精度2m+1。这里[αb]可以是有限或无限区间,ω(x)为取正值的权函数。

许多有关数值积分的论著都列举出各种高斯型公式的结点和系数的数值。可以证明:对每个连续函数,当结点个数趋于无穷时,高斯型公式所给出的近似值序列收敛到相应积分的精确值,而牛顿-科茨公式则不具有这种性质。

高维数值积分的主要方法有蒙特卡罗法、代数方法和数论方法