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

<<主页

理查森外推方法 (Richardson Extrapolation)

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

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

F(y) 来表示步长为yf′(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) 在右侧的图形分别以红黑两色标出. 注意,两者有可能会重叠.

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

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