1、第二章 数值微分和数值积分,数值微分,函数f(x)以离散点列给出时,而要求我们给出导数值,函数f(x)过于复杂,这两种情况都要求我们用数值的方法求函数的导数值,微积分中,关于导数的定义如下:,自然,而又简单的方法就是,取极限的近似值,即差商,向前差商,由Taylor展开,因此,有误差,向后差商,由Taylor展开,因此,有误差,中心差商,由Taylor展开,因此,有误差,f(x)=exp(x),例:,由误差表达式,h越小,误差越小,但同时舍入误差增大,所以,有个最佳步长,我们可以用事后误差估计的方法来确定,设D(h),D(h/2) 分别为步长为h,h/2 的差商公式。则,时的步长h/2 就是合
2、适的步长,插值是建立逼近函数的手段,用以研究原函数的性质。因此,可以用插值函数的导数近似为原函数的导数,误差,插值型数值微分,用Taylor展开分析,解:,例:,误差?,数值积分,关于积分,有Newton-Leibniz 公式,但是,在很多情况下,还是要数值积分:,1、函数有离散数据组成,2、F(x)求不出,3、F(x)非常复杂,定义数值积分如下:是离散点上的函数值的线性组合,称为积分系数,与f(x)无关,与积分区间和积分点有关,例:,问题:如果判断好坏?,代数精度,对任意次数不高于k次的多项式f(x), 数值积分没有误差,用插值函数的积分,作为数值积分,代数精度,由Lagrange插值的误差
3、表达式,,,有,可以看出,至少n 阶代数精度,插值型,Vandermonde行列式,使用尽可能高的代数精度,已知,求系数,所以,如果mn,则系数唯一,前面得到的系数是最好的吗?,误差,Newton-Cotes 积分,若节点可以自由选取,则,一个自然的办法就是取等距节点。对区间做等距分割。,该数值积分称为Newton-Cotes积分,设节点步长,(b-a),与步长h无关,可以预先求出,N1时,梯形公式,N2 时,Simpson公式,1、梯形公式,此处用了积分中值定理,误差,2、Simpson 公式,注意到,Simpson 公式有3 阶代数精度,因此为了对误差有更精确地估计,我们用3 次多项式估计
4、误差,为0,一般的有,因此,N-C积分,对偶数有n+1 阶代数精度,而奇数为n 阶代数精度,复化积分,数值积分公式与多项式插值有很大的关系。因此Runge现象的存在,使得我们不能用太多的积分点计算。采用与插值时候类似,我们采用分段、低阶的方法,误差,做等距节点,,复化梯形公式,由均值定理知,可以看出,复化梯形公式是收敛的。,如果节点不等距,还可以做复化积分吗?怎么处理?,误差,做等距节点,,复化Simpson公式,由均值定理知,可以看出,复化Simpson公式是收敛的。,例:计算,解:,其中,= 3.138988494,其中,= 3.141592502,Lab03 复化积分,1.分别编写用复化
5、Simpson积分公式和复化梯形积 分公式计算积分的通用程序,2.用如上程序计算积分,取节点xi , i=0,N,N 为 2k,k=0,1,12 ,并计算误差,同时给出误差阶,3.简单分析你得到的数据,误差阶:,记步长为h时的误差为e,步长为h/k时的误差为ek,则,相应的误差阶为:,Sample Output ( represents a space)复化梯形积分,误差和误差阶为 k=0,0.244934066848e00 k=1,0.534607244904 , 1.90 . 复化Simpson积分,误差和误差阶为 k=1,0.244934066848e00 k=2,0.534607244
6、904e-01 , 4.01 .,函数变化有急有缓,为了照顾变化剧烈部分的误差,我们需要加密格点。对于变化缓慢的部分,加密格点会造成计算的浪费。以此我们介绍一种算法,可以自动在变化剧烈的地方加密格点计算,而变化缓慢的地方,则取稀疏的格点。,积分的自适应计算,先看看事后误差估计,以复化梯形公式为例,n等分区间,2n等分区间,近似有:,类似,复化Simpson公式,自适应计算,记,为复化一次,2次的Simpson公式,控制,求,是,由前面的事后误差估计式,,则,,这启发我们,可以用低阶的公式组合后成为一个高阶的公式。,类似,,Romberg积分,记,为以步长为h的某数值积分公式,有,有如下的Eul
7、er-Maclaurin定理,若,为2m阶公式,则,Romberg 积分就是不断地用如上定理组合低阶公 式为高阶公式,进而计算积分, Romberg算法:, ?, ?, ?, ,重积分的计算,在微积分中,二重积分的计算是用化为累次积分的方法进行的。计算二重数值积分也同样采用累次积分的计算过程。简化起见,我们仅讨论矩形区域上的二重积分。对非矩形区域的积分,大多可以变化为矩形区域上的累次积分。,a,b,c,d 为常数,f 在D 上连续。将它变为化累次积分,首先来看看复化梯形公式的二重推广,做等距节点,x轴,y轴分别有:,先计算,,将x作为常数,有,再将y作为常数,在x方向,计算上式的每一项的积分,
8、二重积分的复化梯形公式,系数,在积分区域的四个角点为1/4,4个边界为1/2,内部节点为1,误差,类似前面有:,记,二重积分的复化Simpson公式,做等距节点,x轴,y轴分别有:,m,n为偶数,误差,Gauss型积分公式,Newton-Cotes 积分公式,可以知道n为偶数时,n+1个点数值积分公式有n+1阶精度。是否有更高的代数精度呢?n个点的数值积分公式,最高可以到多少代数精度?本节会解决这个问题。,例:在两点数值积分公式中,如果积分点也作为未知量,则有4个未知量,可以列出4个方程: (以f(x)在-1,1为例),可解出:,数值积分公式,具有3阶代数精 度,比梯形公式 1阶代数精度高,证
9、明:,取,易知:,也就是说,数值积分公式,对一个2n+2阶的多项式是有误差的, 所以,n+1个点的数值积分公式不超过2n+1阶,如何构造最高阶精度的公式?,一般性,考虑积分:,称为权函数,定义两个可积函数的内积为:,两个函数正交,就是指这两个函数的内积为0,利用Schmidt 正交化过程,,变为正交基,就可以将多项式基函数,以n阶正交多项式的n个零点为积分点的数值积分公式有2n1阶的代数精度,证明:,若 f 为 2n1 次多项式,则,为 n1 次多项式,具有一个很好的性质:,(2)求出pn(x)的n个零点x1 , x2 , xn 即为Gauss点.,(1)求出区间a,b上权函数为W(x)的正交
10、多项式pn(x) .,(3)计算积分系数,Gauss型求积公式的构造方法,解 按 Schemite 正交化过程作出正交多项式:,例:,故两点Gauss公式为,积分系数为,P2(x)的两个零点为,区间-1,1上权函数W(x)=1的Gauss型求积公式,称为Gauss-Legendre求积公式,其Gauss点为Legendre多项式的零点.,(1) Gauss-Legendre求积公式,公式的Gauss点和求积系数可在数学用表中查到 .,几种Gauss型求积公式,由,因此,a,b上权函数W(x)=1的Gauss型求积公式为,区间0,)上权函数W(x)=e-x的Gauss型求积公式,称为Gauss-
11、Laguerre求积公式,其Gauss点为Laguerre多项式的零点.,(2) Gauss-Laguerre求积公式,公式的Gauss点和求积系数可在数学用表中查到 .,由,所以,对0, +)上权函数W(x)=1的积分,也可以构造类似的Gauss-Laguerre求积公式:,(3) Gauss-Hermite求积公式,公式的Gauss点和求积系数可在数学用表中查到 ., Gauss 公式的余项:,/* 设P为f 的过x0 xn的插值多项式 */,/*只要P 的阶数不大于2n+1,则下一步等式成立*/,插值多项式的余项,Q:什么样的插值多项式在 x0 xn 上有 2n+1 阶?,A:Hermite 多项式!,满足,