数值分析-求微分

中点公式

求微分一般是利用微分的定义

f'(x) = lim e->0  (   f(x+e) - f(x) ) / e

但是由于f(x)可能会有误差

所以我们使用中点公式

G(x) = (  f(x + h) - f(x - h)  ) /  2h 

 

误差分析

将f(a)按照泰勒多项式展开可得、

f(a+h) = f(a) + h*f'(a) + (  h2 / 2!  ) * f''(a) + (  h3 / 3!  ) * f'''(a) +  .....

f(a-h) = f(a) - h*f'(a) + (  h2 / 2!  ) * f''(a) - (  h3 / 3!  ) * f'''(a) +  .....

带入得

G(a) = f'(a) +  (  h3 / 3!  ) * f'''(a) + .....

 

| f(a) - G(a) |  <= ( h2 / 3! ) * M

M >= f'''(x)  x 属于 [x-h, x+h]

 

设f(a+h)有舍入误差e1   f(a-h)有舍入误差e2

导数的舍入误差为 (  |e1| + |e2|  )/ 2h  = e / h

 

总误差为:

E =   ( h2 / 3! ) * M + e/ h

解得当h = 3√ ̄(3e/M)时 E最小

M以max  f'''(x)  x属于[a-0.1, a+0.1] 来近似

posted @ 2019-01-13 16:00  shensobaolibin  阅读(758)  评论(0编辑  收藏  举报