(1)使用复化梯形公式、Simpson公式,首先要确定步长;h(2)而步长要根据余项确定,这就涉及到高阶导数的估计;(3)高阶导数的估计一般比较困难,且估计值往往偏大;(4)计算机上实现起来不方便,通常采用“事后估计法”。三、积分步长的自动选取:注意事项:基本思想:将积分区间逐次分半终止法则:前后两次近似值的误差小于已知精度2nnII具体过程(以复化梯形公式为例)1、首先将区间n等分:[,]abbahn1122()()()nnkkhTfafxfb2、再将区间2n等分,即步长减半:[,]ab12hh11121102222()()()()nnnkkkkhTfafxfxfb1102122()nnkkbaTfxn122()()kkhfxfx上述条件满足,程序终止;否则,继续分半计算。3、终止条件:由复化梯形公式的余项知2112()()nbabaITfn222122()()nbabaITfn24nnITIT()fx变化不大时由此得到近似关系式22141()nnnITTT误差控制条件2141()nnTT对于复化Simpson公式、Cotes公式可以类似得到222141()nnnISSS223141()nnnICCC22141()nnnITTT对于复化梯形公式加速收敛22141()nnnITTT222141()nnnISSS223141()nnnICCC应用步长逐次减半得到的复化梯形值、复化Simpson值、复化Cotes值与精确值的比较nSnCnRRomberg积分法/*RombergIntegrationMethod*/Romberg积分思想由上节分析知,用复化梯形公式计算积分值I2nT的误差大约为:213()nnTT令2213()nnnITTT243nnTT由复化梯形公式知12102122()nnnkkbaTTfxn12102412333()()nnnnkkTTbaTfxn1122()()()nnkkbaTfafxfbn11102246()()()()nnkkkkbafafxfbfxnnS111012426()()()()()nnnkkkkhSffafxfxfb梯形加速公式:2244134141nnnnnTTSTT利用复化梯形公式前后两次积分近似值和,按2nTnT照上式作出的线性组合得到了具有更高精度的积分值。上述公式说明:Romberg积分公式正是由此思想产生Romberg值序列Simpson加速公式:222441nnSSCotes加速公式:323441nnnCCR类似于梯形加速公式的处理方法,得到:222141()nnnISSS222441nnnSSC223141()nnnICCC323441nnCC通过上述3个积分值序列求积分近似值的方法,称之为Romberg积分法。4个积分值序列:2kT梯形值序列Simpson值序列Romberg值序列Cotes值序列2kS2kC2kR1222441kkkTTS122222441kkkSSC132232441kkkCCRRomberg积分法的一般公式11111441,,,jmjmjmjjTTT其中1121,()mmTTm2222,()mmTSm3323,()mmTCm4424,()mmTRm234,,;jmjRomberg积分表11,T21,T31,T41,T51,T22,T32,T42,T52,T33,T43,T53,T44,T54,T21111222,,()babaTTf12102122()nnnkkbaTTfxn用龙贝格方法计算积分的步骤为:(1):准备初值,先用梯形公式计算积分近似值:(2):按变步长梯形公式计算积分近似值:令计算:(3):按加速公式求积分(为便于编程,写为下列形式))]()([21bfafabTiabh2),2,1,0(i)(22110212niinnxfhTTin2梯形加速:辛普生加速:柯特斯加速:(4):精度控制当时终止计算并取为近似值,否则,将步长折半,转(2)执行。实际计算时的加工流程图7.4.1示:3/)(22nnnnTTTS15/)(22nnnnSSSC63/)(22nnnnCCCR,2nnRR为精度)(nR2例7.4.2用龙贝格算法加工例7.4.1得到的近似值解:用算法图7.4.2计算结果见表7.4.1,表中k表示二分次数:kkT212kS22kC32kK01230.92073550.93979330.94451350.94569090.94614590.94608690.94608340.94608300.94608310.9460831例3:利用Romberg积分法式计算积分要求精确到小数点后面7位。15011.Idxx解:11()fxx11150151052,.[()(.)].Tff根据Romberg积分法计算得211111507509535714292,,[.(.)].TTf211122409214285713,,,.TTT31211075075112520925983575,,{.[(.)(.)]}.TTff312132409167876243,,,.TTT3222331609164782283,,,.TTT具体结果见下表105.1,kT2,kT3,kT4,kTk132450953571429.0921428571.0925983575.0918741799.0916905342.0916787624.0916327874.0916293190.0916478228.0916297224.0916290077.0916294351.0916290776.540916290776,.T09162907318.I例3:取=0.00001,用龙贝格方法计算积分解:由题意f(x)=4/(1+x2)a=0b=1f(0)=4f(1)=2由梯形公式得T1=1/2[f(0)+f(1)]=3计算f(1/2)=16/5用变步长梯形公式得T2=1/2[T1+f(1/2)]=3.1由加速公式得S1=1/3(4T2-T1)=3.133333333102d14xxI求出f(1/4)f(3/4)进而求得T4=1/2{T2+1/2[f(1/4)+f(3/4)]}=3.131176471S2=1/3(4T4-T2)=3.141568628C1=1/15(16S2-S1)=3.142117648计算f(1/8)f(3/8)f(5/8)f(7/8)进而求得T8=1/2{T4+1/4[f(1/8)+f(3/8)+f(5/8)+f(7/8)]}=3.138988495S4=1/3(4T3-T4)=3.141592503C2=1/15(16S4-S2)=3.141594095R1=1/63(64C2-C1)=3.141585784把区间再二分,重复上述步骤算得T16=3.140941613S8=3.141592652C4=3.141592662R2=3.141592640由于|R1-R2|=0.00001,计算可停止,取R2=3.14159dx41+x201