答:本题是算是问对人了,
如果你要想深入分析,需要用到函数的泰勒展开.
1) 你说的两种方法都可以用,但是后面的方法精度更高.
f''(x)=[f(x+h)-2f(x)+f(x-h)]/h^2 方法是等效与 f''(x)=[f'(x+h/2)-f'(x-h/2)]/h 是2阶精度
2) 先求其一阶导数值,然后再用一阶的差分公式求出2阶的导数,是1阶精度.
就好比 f'(x)=[f(x+h)-f(x-h)]/2h 是2阶精度,
f'(x)=[f(x+h)-f(x)]/h 是1阶精度.
关键就是在泰勒展开方面
f(x+h)=f(x)+f'(x)*h+b*f''(x)*h^2+c*f'''(x)*h^3 b,c为泰勒展开的系数
f(x-h)=f(x)-f'(x)*h+b*f''(x)*h^2-c*f'''(x)*h^3
可以看出 如果用 [f(x+h)-f(x)]/h =f'(x)+b*f''(x)*h+c*f'''(x)*h^2 后面的是误差项.
如果用 [f(x+h)-f(x=h)]/2h =f'(x) + c*f'''(x)*h^2 可以明显看出第二种方法的误差更小.
同理可以推导二阶导数的精度问题.
如果有不明白的,可以进一步沟通