
《龙贝格求积》PPT课件.ppt
33页第7.4-7.5节 龙贝格求积公式龙贝格求积公式龙贝格求积公式复合求积公式复合求积公式 随着n的增加可以减少积分误差,但高阶N-C公式又会造成数值不稳定,因而采用复合求积公式 复化梯形复化梯形 公式公式复化辛普森公式复化辛普森公式 上面的求积公式都是定长的,要达到某个精度,则必须上面的求积公式都是定长的,要达到某个精度,则必须选取适当的长度,但是这是一件不容易达到的事情选取适当的长度,但是这是一件不容易达到的事情复合求积公式的截断误差随着复合求积公式的截断误差随着n的增大而减少的增大而减少但每给一种积分方法之后,如何选择但每给一种积分方法之后,如何选择n,, 使精度达到使精度达到预先选定的精度?预先选定的精度?1 用误差估计式子但是要求高阶导数,一般实比用误差估计式子但是要求高阶导数,一般实比 较困难的较困难的2 在实际中一般采用自动选择积分步长在实际中一般采用自动选择积分步长即在求积的过程中,将步长逐步折半,反复利用复合即在求积的过程中,将步长逐步折半,反复利用复合求积公式,直到相邻两次的计算结果之差小于容许的求积公式,直到相邻两次的计算结果之差小于容许的范围。
范围 梯形法的逐次分半算法梯形法的逐次分半算法逐次分半算法逐次分半算法解解例例1例例 题题 1例例2解解例例 题题 2例例 题题 2 在等距在等距节节点的情况下,用计算机计算积分点的情况下,用计算机计算积分值通常都采用把区间逐次分半的方法进行这样,值通常都采用把区间逐次分半的方法进行这样,前一次分割得到的函数值在分半以后仍可被利用前一次分割得到的函数值在分半以后仍可被利用, ,且且易于编程易于编程 逐次分半算法逐次分半算法把区间二等分,每个小区间长度为把区间二等分,每个小区间长度为 h h/2=(/2=(b b- -a a))/2/2,,于是于是 T T2 2 = =T T1 1/2+[/2+[h h/2]/2]f f( (a a+ +h h/2/2)) 把区间四把区间四( (2 22 2) )等分,每个小区间长度为等分,每个小区间长度为h h/2 /2 2 2 = =((b b- -a a))/4/4,,于是于是 T T4 4 = =T T2 2/2+[/2+[h h/2/22 2][][f f( (a a+ +h h/4)+/4)+f f( (a a+3+3h h/4)]/4)]· · · · · · · · · · · · · · · ·把把[ [a a, ,b b] 2] 2k k 等分,分点等分,分点x xi i= =a a+(+(b b- -a a)/ 2)/ 2k k ·i i ((i =0i =0,,1 1,,2 2 · · · 2 2k k))每个小区间长度为每个小区间长度为( (b b- -a a)/ 2)/ 2k k ,,由归纳法可得由归纳法可得逐次分半算法逐次分半算法 复合求积方法是用于被积函数变化不太大的积分. 如果在求积区间中被积函数变化很大,有的部分函数值变化剧烈,另一部分变化平缓,这时统一将区间等份用复合求积公式计算工作量就会很大. 要达到误差要求对变化剧烈部分必须将区间细分,而平缓部分则可用大步长,即针对被积函数在区间上不同情形采用不同的步长,使得在满足精度前提下积分计算的工作量尽可能小.7.4.2 自适应自适应simpson公式公式 针对这类问题的算法技巧是在不同区间上预测被积函数变化的剧烈程度确定相应的步长. 这种方法称为自适应积分方法. 设给定精度要求 ,计算积分的近似值.先取步长 ,应用辛普森公式有其中若把区间 对分,步长 ,在每个小区间上用辛普森公式,则得(7.31)(7.32)实际上(7.32)即为与(7.31)比较,若 在 上变化不大,可假定其中(7.32)’从而可得 若不等式(7.33)不成立,则应分别对子区间 及 进行误差分析,若每个区间误差是否近似在这里 .如果有则可期望得到与(7.32)比较,则得此时可取 作为 的近似,则可达到给定的误差精度 .(7.33) 对满足要求的区间不再细分,对不满足要求的还要继续上述过程,直到满足要求为止,7.57.5、龙贝格算法、龙贝格算法事后估计法利用计算结果来估计误差的方法利用计算结果来估计误差的方法龙贝格算法龙贝格算法 当当n=1 =1 时时, ,我们计算上式右端我们计算上式右端这恰好是辛普森公式的结果,即有这恰好是辛普森公式的结果,即有比梯形公式有比梯形公式有更好的精确度更好的精确度龙贝格算法龙贝格算法类似地可验证:类似地可验证:即即龙贝格算法龙贝格算法龙贝格算法龙贝格算法可以验证可以验证事实上事实上 C1=(42S2-S1)/(42-1) =16S2/15-S1/15=(7y0+32y1+12y2+32y3+7y4)/90 恰为柯斯特公式。
恰为柯斯特公式同理,同理, C2=(42S4-S2)/(42-1),,... 龙贝格算法龙贝格算法 即即, R, R1 1=(4=(43 3C C2 2-C-C1 1)/(4)/(43 3-1), -1), R R2 2 =(4 =(43 3C C4 4-C-C2 2)/(4)/(43 3-1), ... -1), ... RnRn= (4= (43 3 C2n -C2n -CnCn )/ (4 )/ (43 3-1);-1); 上式即为龙贝格公式,得龙贝格值序列上式即为龙贝格公式,得龙贝格值序列龙贝格算法龙贝格算法 用若干个积分近似值推算出更为精确的用若干个积分近似值推算出更为精确的积分近似值的方法,称为积分近似值的方法,称为外推方法外推方法龙贝格算法龙贝格算法计算过程见表:计算过程见表:龙贝格算法龙贝格算法•T1•T2 S1 •T4 S2 C1•T8 S4 C2 R1•T16 S8 C4 R2•T32 S16 C8 R4.•................................................上面是上面是RombergRomberg的计算表的计算表若若 则计算停止则计算停止龙贝格算法龙贝格算法或或龙贝格算法龙贝格算法解:解: 用用RombergRomberg方法计算积分方法计算积分近似值近似值例例3例例 题题 3例例 题题 3例例 题题 3。












