数值微分 计算方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

最简单直接的数值微分方法就是用差商代替微商.
根 据 导 数 定 义, 在 点xi处
f '(xi )
lim
h0
f ( xi
h) h
f ( xi )
lim f ( xi ) f ( xi h)
h0
h
lim
f ( xi
h) 2
f ( xi
h) 2
h0
h
当h充分小时, 可用差商来逼近导数
数值分析
误差 0.00339 0.00089 0.00039 0.00011 0.00011 0.00021 0.00106
数值分析
数值分析
三. 运用样条插值函数求数值微分
用三转角方程和三弯矩方程可以分别求出在节 点处函数f(x)的一阶导数和二阶导数的近似值.
fi' mi
(i 0,1,L ,n)
fi" Mi
h 2(1.8 h)2 0.0173010 0.0015605 0.0001545
数值分析
数值分析
当n=2时,有
f
( xi )
2 k0
f
( xk )l'k
(xi )
1 6
f
(3) (i
2
) (xi
k0
xk )
ki
f
(
x0
)
(
2xi x0
x1
x1 )(x0
x2 x2
)
f
(
x1
)
(
2xi x1 x0
a b
若取数值微分公式
f (x) L' (x) n
误差为:
f f (n1)
(n1)
Rn( x)
f (x) L' ( x) n
(n
( x 1)!
)
n 1
(
x
)
n1
(
x
)
d dx
( x ) (n 1)!
数值分析
数值分析
f (n1)
Q
n1
(
x
)
d dx
( x )
(n 1)!
中 x是未知的,其误差不能估计,
当n=4时,可得到5点公式:
中点求导公式:
f ( x0 )
f ( x0 2h) 8 f ( x0 h) 8 f ( x0 h) 12h
f ( x0 2h)
h4
f (5) (
)
30
(6),
x0 2h x0 2h,
h0
数值分析
数值分析
端点求导公式:
f
(
x0
)
1 12h
[25
则(4)式为
f ( x0 )
f%( x0
h)
f%( x0
h)
e( x0
h) e( x0
h)
2h
2h
h2 6
f (3) (1 )
数值分析
数值分析
计算f ’(x0)的总误差是:
f ( x0 )
f%( x0 h) f%( x0 h) 2h
e( x0 h) e( x0 h) h2
2h
6
f (3) (1 )
误差界为:e(h)=e/h +(h2/6)M, 这里 e=max︱ e(x0±h) ︱,M= max ︱ f(3)(x)︱
从截断误差 (h2/6)f(3)(ξ1)的角度看,h 越小误差越小。 但从舍入误差的角度看,h不能太小。
例3 设 f(x)=sin x ,计算f’(0.900)=cos0.900的近似值。
的误差最小。
这 里 x1 x0 h, x2 x0 2h, x0 i x2
有时,也将xi统一表为x0,将上述公式写成如下形式
f
( x0 )
3
f
( x0 )
4
f
( x0 2h
h)
f ( x0 2h) h2 3
f (3) (0 )
(3)
f ( x0 )
f ( x0 h) f ( x0 h) h2
(2)
(
2!
i
)
2
(
xi
)
f ( xi ) L'1( xi )
f ( x1) f ( x0 ) x1 x0
i 0,1
令h x1 x0 0
f ( x0 )
f ( x 0 h) h
f ( x0 ) h 2
f "(1 )
f ( x1 )
f (x1)
f ( x1
h)
h
h
2
f "(2 )
2h
6
f (3) (1 )
(4)
f ( x0 )
f ( x0 2h) 4 f ( x0 h) 3 f ( x0 ) h2
2h
3
f (3) (2 )
(5)
x0 h i x0 h, i 0,1, 2. (3)、(4)、(5)称为3点公式。
数值分析
数值分析
f
( x0 )
3
f
( x0 )
fi1 O(h2 )
数值分析
数值分析
二、运用插值函数求数值微分
设Ln(x)是f(x)的过点{x0 ,x1 ,x2 ,…xn } [a,b]的 n 次插值多项式,由Lagrange插值余项,有对任意给
定的x[a,b],总存在如下关系式:
f (x)
Ln(x)
( x) f (n1) (x ) (n1)! n1
(1)称为x0点的向前差商公式, (2) 称为x1点的向后差商公式。
i 0,1
(1) (2)
数值分析
数值分析
例1 设f(x)=lnx,x0=1.8,用2点公式计算f’(x0)。
解:计算f '( x0 )的误差为
hf "( ) h 2 2 2 ,
这里 1.8 1.8 h 或 1.8 h 1.8
(i 0,1,L ,n)
四. 运用数值积分求数值微分
f
(
x0
)
48
f
(
x0
h)
36
f
(
x0
2h)
h4 16 f ( x0 3h) 3 f ( x0 4h) 5
f (5) (2 )
(7)
计算左端点:x0 x0 4h, h 0,
计算右端点:x0 4h x0 , h 0
5点公式计算f’(x0)的误差是O(h4),且中点公式
(6)的误差小于端点公式(7)。
6.16 102
2.47
101
1.13 101
2.2 19.855030 f '( x) ( x 1)e x , f '(2) 22.167168
数值分析
数值分析
公式(4)计算f’(2)较准确。用5点公式计算f’(2) : 由(6), f’(2) ≈22.166996,误差为:1.69×10-4
f
'( xi )h
1 2
f
''( xi )h2
1 3!
f(3)( xi )h3
O(h4 )
f ( xi
h)
f (xi )
f
1 '( xi )h 2
f
''(
xi
)h2
1 3!
f(3)( xi )h3 O(h4 )
两 式相 加 除以h2得 :f ''( xi )
fi1 2 fi h2
k0
lk
(x)
(x x0 )L (x ( xk x0 )L ( xk
xk1 )( xk1 )(
x xk1)L ( x xk xk1)L ( xk
xn ) xn
)
称为n+1点求导公式。
数值分析
数值分析
常用的数值微分公式是 n = 1 ,2 的插值型微分公式.
当n=1时,有
f R1 ( xi ) f ( xi ) L'1( xi )
fi fi1 O(h) h
一阶中心差商公式
f
'( xi )
fi
h
O(h2 )
fi1 fi1
2
2
h
O(h2 )
证明:对f ( x)在点xi以h为增量作Taylor展开有
f ( xi h)
f ( xi )
f
ห้องสมุดไป่ตู้
'( xi )h
h2 2
f ''( )
得一阶向前差商公式
f '( xi )
f ( xi h) h
(5)
例2 设f(x)=xex,x0=2,用3点公式计算f’(x0)。
x
f (x)
h 公式(3) 公式(4) 公式(5)
1.8 10.889365 0.1 22.032310 22.228790 22.054525
1.9 12.703199 0.2
22.414163
2.0 14.778112 2.1 17.148957 误差 1.35 101
4
f
( x0 2h
h)
f ( x0 2h) h2 3
f (3) (0 )
(3)
f ( x0 )
f ( x0 h) f ( x0 h) h2
2h
6
f (3) (1 )
(4)
f ( x0 )
f ( x0 2h) 4 f ( x0 h) 3 f ( x0 ) h2
2h
3
f (3) (2 )
fi1 2 fi h2
fi1 O(h2 )
证明 : (1)验证 :
2 fi ( fi ) ( fi 1 fi1 )
2
2
( fi1 fi ) ( fi fi1 ) fi1 2 fi fi1
(2)对f ( x)在点xi以h为增量作Taylor展开有
f ( xi
h)
f (xi )
x0 x2 )(x1 x2
)
f
(
x2
)
(
2xi x2 x0
x0 )(x2
x1 x1
)
1 6
f
(3) (i
2
) (xi
k0
xk )
i 0,1,2
ki
当节点等距时,即有 x1=x0+h, x2= x0+2h, h>0, 上述公式可简化为
数值分析
数值分析
f ( x0 )
3 f ( x0 ) 4 f ( x1) 2h
f ( xi ) h 2
f ''( )
数值分析
数值分析
一阶导数的三点公式:
f
' i
1 2h (3 fi
4 fi1
fi2 ) O(h2 )
证明:将f ( x)在点xi处分别以增量h和2h作Taylor展开,有
fi1
fi
hf
' i
h2 2
fi" O(h3 )
(1)
fi2
fi
2hf
' i
4h2 2
数值分析
一阶向前差商公式 :
f '( xi )
f ( xi h) h
f
(
xi
)
fi
h
fi fi1 fi称为f 在xi点的一阶向前差分.
一阶向后差商公式 :
f '( xi )
f
( xi )
f
( xi
h)
f
i
h
h
fi fi fi1称为f 在xi点的一阶向后差分.
一阶中心差商公式 :
f '( xi )
f
( xi
h) 2
h
f ( xi
h 2
)
fi
h
fi fi 1 fi 1 称为f 在xi的一阶中心差分.
2
2
数值分析
数值分析
利用Taylor展开可导出数值微分公式并估计误差.
一阶向前差商公式
f
'( xi )
fi h
O(h)
fi1 h
fi
O(h)
一阶向后差商公式
f
'( xi
)
fi h
O(h)
f
" i
O(h3
)
(2)
由4
(1)(2)可消去f
"可得到三点公式
i
同样的方法可以得到其它的三点公式是:
f' i 1
1 2h ( fi2
fi ) O(h2 )
f' i2
1( 2h
fi
4
f i 1
3
fi2 )
O(h2 )
数值分析
数值分析
二阶中心差商公式
f
'' ( xi
)
2 fi
h2
O(h2 )
数值分析
数值分析
在构造数值微分公式时,不仅要考虑公式的截断
误差,而且还要考虑公式的舍入误差。
考察公式:
f ( x0 )
f ( x0 h) f ( x0 h) h2
2h
6
f (3) (1 )
(4)

f ( x0 h) f%( x0 h) e( x0 h)
f ( x0 h) f%( x0 h) e( x0 h)
f ( x2 )
h2 3
f ( x1 )
f ( x2) f ( x0 ) h2
2h
6
f (3) (1 )
f (3) (0 )
n=2时,计算 f’(x0)的误差是 O(h2),且(4)
f ( x2 )
f ( x0 ) 4 f ( x1) 3 f ( x2 ) h2
2h
3
f (3) (2 )
f (n1)
注意到在插值节点处
n1
(
xi
)
d dx
( x ) 0,此时的余项为
(n 1)!
(n1)
(n1)
f f Rn( xi ) f ( xi ) L'n( xi )
(
n
(i
1)!
)
n 1
(
xi
)
(n
(i
1)!
)
n k0
( xi
xk
)
ki
因此插值型求导公式常用于求节点处的导数值
n
f ( xi ) L'n( xi ) f ( xk )l 'k ( xi ) i 0,1, ..., n
数值分析
第五节 数值微分
在实际问题中,往往会遇到某函数f(x) 是用表格
表示的,用通常的导数定义无法求导,因此要寻求其他 方法近似求导。常用的数值微分方法有:
一. 运用差商求数值微分 二. 运用插值函数求数值微分 三. 运用样条插值函数求数值微分 四. 运用数值积分求数值微分
数值分析
数值分析
一. 运用差商求数值微分
数值分析
数值分析
解:利用公式
f (0.900) f (0.900 h) f (0.900 h) 计算。 2h
h 0.001 0.002 0.005 0.010 0.020 0.050 0.100
近似f '(0.900) 0.62500 0.62250 0.62200 0.62150 0.62150 0.62140 0.62055
相关文档
最新文档