清华大学课程“数值分析”(No.20240033)
交互演示网站

<<主页

理查森外推方法 (Richardson Extrapolation)

本模块演示理查森外推法,这种方法将渐进式的 利用低阶的近似结果得到高阶精度的近似结果. 如果我们知道两个同样步长参数 h下的近似值,并且同时知道当步长 h 趋近于零时,近似误差的渐进精度函数形式. 那么,就可以 根据这些近似值和函数形式,以外推插值的形式计算当 h = 0 (也就是外推到极限情况)时的结果,以获得高阶的计算精度. 本模块展示了外推法的计算有限数值微分一个实例.

用户首先选择一个函数f(x) 和微分目标点 x0 左侧图像区域选定的函数以黑色画出,而目标点处的函数值 (x0,f(x0))以红 色标出. 然后用户可以选择有限差分算法和粗略计算的步长h 以及两种 步长的比例q. 左侧中以蓝色和品红色的割线方式绘出步长分别为h和h ⁄q得到的微分近似值. 右侧下部的表格给出F(h) 和 F(h ⁄q). 右侧上部图形中以同样的颜色体系标出 (h, F(h)) 和 (h ⁄q, F(h ⁄q)).

令 F(y) 来表示步长为y时 f′(x0) 的数值微分近似. 对于一阶前向和后向微分近似,当y趋近于零的时候 F(y) 线性收敛于 f′(x0). 而二阶精度的中心插值法中 F(y) 二次收敛. 两种情况下, 根据F(y) 的收敛特性,我们可以使用理查森外推法来估计 F(0). 右侧图形上有前两种估计结果 F(y) ,还有红色标记的外推结果 (0, F(0)) . 左侧以红线标出斜率为 F(0) 经过点 (x0, f(x0)) 的近似结果. 外推法得到的斜率 F(0) 以及精确解f′(x0) 在右侧的图形分别以红黑两色标出. 注意,两者有可能会重叠.

用户可以调整h 和q来体验算法结果. 当 h 变小而 q 变大的时候,有限差分近似 F(h) 和 F(h ⁄q) 一般会变得更好. 外推法的结果 F(0) 比 F(h) 或者 F(h⁄q) 更快的收敛于 f′(x0). 当然,对于非零的步长,近似的误差不会等于零.

参考内容: 课本第7.7.3小节.