数值微分的一阶导数和二阶导数公式在具体计算时
问个数值微分的问题,由于没学过所以想不通,我想如果学过的话应该都遇到过吧.就是对于中心差分格式,f'(x)=[f(x+h)-f(x-h)]/2h,f''(x)=[f(x+h)-2f(x)+f(x-h)]/h^2,但实际在具体已知一系列点(xi,yi),求这系列点的2阶导数值,我可以先求其一阶导数值,然后再用一阶的差分公式求出2阶的导数,也可以直接用2阶导数的差分公式求出,对这两种算法,那个精度更高呢?
人气:221 ℃ 时间:2020-05-25 02:26:51
解答
答:本题是算是问对人了,
如果你要想深入分析,需要用到函数的泰勒展开.
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 可以明显看出第二种方法的误差更小.
同理可以推导二阶导数的精度问题.
如果有不明白的,可以进一步沟通
推荐
猜你喜欢
- The colorful T-shirt is beautiful but it is not c____for me
- 着么证明5加6等于11
- 下列河流中,最终注入印度洋的是( ) A.鄂毕河 B.叶尼塞河 C.黄河 D.恒河
- 秋词和天净沙秋思这两种不同的情感是怎样表现出来的求大神帮助
- 找规律.1,2,4,6,7,10,10,( )().1,2,3,5,8,13()()
- 英语翻译
- 将0.53g Na2CO3溶于40mL水中,与20mL盐酸溶液恰好完全反应.求该盐酸溶液中HCl的物质的量浓度.
- Dragons seem m________.None of us has seen them.