数值代数–理查森外推法
实验四
一、实验名称
理查森外推算法
二、实验目的与要求:
实验目的:掌握理查森外推算法。
实验要求:1. 给出理查森外推算法思路,
2. 用C语言实现算法,运行环境为Microsoft Visual C++。
三、算法思路:
1. 假设函数泰勒展开式可表示为 和,将两式相减,消去偶数项,则,整理得到下式,记L表示,表示微分形式,则有 (1)用h/2代替h,有 (2),由(1)(2)两式子有推广这种方法,就是理查森外推法了。
2. 理查森外推法公式 , , 用下列公式计算,k=1,2,…,M,n=k,k+1,…,M。 则有,当n和k足够大时D(n,k)可充分接近。
3. 上机算法 input h , M
for n=0 to M do
D(n , 0)
end do
for k=1 to M do
for n=k to M do end do
end do
output D(n , k)
四、实验题目:
五、问题的解:
编写程序(程序见后面附录),输出结果如下:
分析得到的结果,发现在对角线附近D(n , k)的值越来越稳定,通过上面算法阐述,我们知道D(n , k)应该是越来越接近我们想求到的导数的,与实验结果一致。