Upload
horace
View
121
Download
0
Embed Size (px)
DESCRIPTION
第五节 数值微分. 在实际问题中,往往会遇到某函数 f ( x ) 是 用表格 表示的 , 用通常的导数定义无法求导 , 因此要寻求其他 方法近似求导。常用的数值微分方法有 :. 一 . 运用差商求数值微分 运用插值函数求数值微分 三 . 运用样条插值函数求数值微分 四 . 运用数值积分求数值微分. 一 . 运用差商求数值微分. 最简单直接的数值微分方法就是用差商代替微商. 利用 Taylor 展开可导出数值微分公式并估计误差. 一阶导数的三点公式 :. 证明 :. 同样的方法可以得到其它的三点公式是:. 若取数值微分公式. 误差为 :. - PowerPoint PPT Presentation
Citation preview
数值分析
数值分析
第五节 数值微分
在实际问题中,往往会遇到某函数 f(x) 是用表格表示的 , 用通常的导数定义无法求导 , 因此要寻求其他方法近似求导。常用的数值微分方法有 :
一 . 运用差商求数值微分.贰 运用插值函数求数值微分
三 . 运用样条插值函数求数值微分四 . 运用数值积分求数值微分
数值分析
数值分析
一 . 运用差商求数值微分
最简单直接的数值微分方法就是用差商代替微商 .
可用差商来逼近导数充分小时当 ,h
h
hxf
hxf
h
hxfxfh
xfhxfxf
x
ii
h
ii
h
ii
hi
i
)2
()2
(lim
)()(lim
)()(lim)('
,
0
0
0
处在点根据导数定义
数值分析
数值分析
1
( ) ( )'( )
:
.
i i ii
i i i i
f x f x h ff x
h hf f f f x
称为 在 点的一
一
阶
阶向后差商 式
向后差分
公1
( ) ( )'( )
:
.
i i ii
i i i i
f x h f x ff x
h hf f f f x
称为 在 点的一
一
阶
阶向前差商 式
向前差分
公
1 1
2 2
( ) ( )2
:
2'( )
.
i ii
i
i ii i
h hf x f x f
f xh h
f f f f x
一阶中心
称为 在 的一阶中
差商公
心差分
式
数值分析
数值分析
' 1
' 1
1 1' 2 22 2
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
i i ii
i i ii
i ii
i
f f ff x O h O h
h hf f f
f x O h O hh h
f ff
f x O h O hh h
一阶向前差商公式
一阶向后差商公式
一阶中心差商公式
利用 Taylor 展开可导出数值微分公式并估计误差 .
( ) ( )'( ) ''( )
2i i
i
f x h f x hf x f
h
得一阶向前差商公式
2
( )
( ) ( ) '( ) ''( )2
i
i i i
f x x h Taylorh
f x h f x f x h f
对 在点 以 为增量作 展开有证明:
数值分析
数值分析
一阶导数的三点公式:' 2
1 2
1( 3 4 ) ( )
2i i i if f f f O hh
证明 :2
' " 31
2' " 3
2
( ) 2
( ) (1)24
2 ( ) (2)2
i
i i i i
i i i i
f x x h h Taylorh
f f hf f O h
hf f hf f O h
将 在点 处分别以增量 和 作 展开,有
"4 1 2 if 由 ()( )可消去 可得到三点公式
同样的方法可以得到其它的三点公式是:' 2
1 2
' 22 1 2
1( ) ( )
21
( 4 3 ) ( )2
i i i
i i i i
f f f O hh
f f f f O hh
数值分析
数值分析
2'' 2 21 1
2 2
2( ) ( ) ( )i i i i
i
f f f ff x O h O h
h h
二阶中心差商公式
21 1
2 2
1 1 1 1
:( ) ( )
( ) ( )
: (1
2
)
i ii i
i i i i i i i
f f f f
f f f f f f f
证 验证明
2 3 3 4
2 3 3 4
( )1 1
( ) ( ) '( ) ''( ) ( ) ( )2 3!1 1
( ) ( ) '( ) ''( ) ( ) (
)
)
(2
2 3!
i
i i i i i
i i i i i
f x x h Taylor
f x h f x f x h f x h f x h O h
f x h f x f x h f x h f x h O h
( )
( )
对 在点 以 为增量作 展开有
)(2
)( 22
11''2 hOh
fffxfh iii
i
得:两式相加除以
数值分析
数值分析
二、运用插值函数求数值微分
baxxLxfn
xn
nf
n
)()()(1
)1(
)!1()(
设 Ln(x) 是 f(x) 的过点 {x0 , x1 , x2 ,… xn } [a ,b] 的 n 次插值多项式,由 Lagrange 插值余项 , 有对任意给
定的 x[a , b] ,总存在如下关系式 :
若取数值微分公式 )()( ' xLxfn
误差为 :
)!1(
)()()(
)!1(
)()()()(
)1(
11
)1(
'
ndx
dxx
nxLxfxR
x
n
nn
x
n
n
ffn
数值分析
数值分析
( 1) ( 1)
'1
0
( ) ( )( ) ( ) ( ) ( ) ( )
( 1)! ( 1)!
n nn
i i
n i i n i n i i kkk i
R x f x L x x x xn n
f f
( 1)
1
( 1)
1
( )( ) , ,
( 1)!
( )( ) 0,
( 1)!
n
x
n x
n
x
n i
dx
dx n
dx
dx n
f
f
中 是未知的 其误差不能估计
注意到在插值节点处 此时的余项为
因此插值型求导公式常用于求节点处的导数值
0 1 1
0 1
'
0
1
( ) (
( )
)
( )
(
( ) ' ( ) 0,1, ...,
) ( )( )
( ) ( )( ) ( )k k n
kk k k
n
k k k n
i n i k k ik
x x x x x
f x L x f x l
x x xl
x i
xx x x
n
x x x x x
称为 n+1 点求导公式。
数值分析
数值分析
常用的数值微分公式是 n = 1 ,2 的插值型微分公式 .
当 n=1 时 , 有1,0)(
!2
)()()()( 2
)2(
'11 ixxLxfxR i
i
iii
f
1,0)()(
)()(01
01'1
ixx
xfxfxLxf ii
1 0
0 00 1
1 11 2
0
1
0( ) ( )
( ) "( ) (1)2
( ) ( )( ) "( ) (2)
21
(2)
h x xf x h f x h
f x fh
f x f x h hf x f
hxx
令
()称为 点的向前差商公式,称为 点的向后差商公式。
数值分析
数值分析
例 1 设 f(x)=lnx , x0=1.8 ,用 2 点公式计算 f’(x0) 。
0 2
2 2
"( )'( ) ,
2 2
1.8 1.8 1.8 1.8
(1.8 ) (1.8) (1.8) (1.8 )
2(1.8) 2(1.8 )
0.1 0.5406722 0.0154321 0.5715841 0.0173010
0.01 0.5540180 0.0015432 0.5571045 0.0015605
0.001 0.5554
hf hf x
h h
f h f h f f h hh
h h h
计算 的误差为
这里 或列表计算如下:
解:
.
013 0.0001543 0.55570993 0.0001545
'(1.8) 0.555f
数值分析
数值分析
当 n=2 时 , 有
2,1,0)()(6
1
))((
2)(
))((
2)(
))((
2)(
)()(6
1)(')()(
2
0
)3(
1202
102
2101
201
2010
210
2
0
)3(2
0
ixxfxxxx
xxxxf
xxxx
xxxxf
xxxx
xxxxf
xxfxlxfxf
ikk
kiii
ii
ikk
kiiikk
ki
当节点等距时,即有 x1=x0+h, x2= x0+2h, h>0,上述公式可简化为
数值分析
数值分析
200201
2)3(
2210
2
1)3(
202
1
0)3(
2210
0
,2,
)(32
)(3)(4)()(
)(62
)()()(
)(32
)()(4)(3)(
xxhxxhxx
fh
h
xfxfxfxf
fh
h
xfxfxf
fh
h
xfxfxfxf
i
这里
有时,也将 xi 统一表为 x0, 将上述公式写成如下形式2
(3)0 0 00 0
2(3)0 0
0 1
2(3)0 0 0
0 2
0 0
3 ( ) 4 ( ) ( 2 )( ) ( ) (3)
2 3
( ) ( )( ) ( ) (4)
2 6
( 2 ) 4 ( ) 3 ( )( ) ( ) (5)
2 3, 0,1,2. (3) (4) (5) 3i
f x f x h f x h hf x f
h
f x h f x h hf x f
h
f x h f x h f x hf x f
hx h x h i
、 、 称为 点公式。
n=2 时,计算f’(x0) 的误差是O(h2), 且( 4 )的误差最小。
数值分析
数值分析
2(3)0 0 0
0 0
2(3)0 0
0 1
2(3)0 0 0
0 2
3 ( ) 4 ( ) ( 2 )( ) ( ) (3)
2 3
( ) ( )( ) ( ) (4)
2 6
( 2 ) 4 ( ) 3 ( )( ) ( ) (5)
2 3
f x f x h f x h hf x f
h
f x h f x h hf x f
h
f x h f x h f x hf x f
h
例 2 设 f(x)=xex , x0=2 ,用 3 点公式计算 f’(x0) 。
21 1
1
3 4 5
0.1 22.032310 22.228790 22.054525
0.2 22.414163
6.16 101.35 10 1.13 10
2.47 10
'( ) ( 1) , '(2) 22.167168x
h
f x x e f
公式( ) 公式() 公式()
误差
( )
1.8 10.889365
1.9 12.703199
2.0 14.778112
2.1 17.148957
2.2 19.855030
x f x
数值分析
数值分析
由( 6 ), f’(2) ≈22.166996 ,误差为: 1.69×10-4
公式 (4) 计算 f’(2) 较准确。用 5 点公式计算 f’(2) :
当 n=4 时 , 可得到 5 点公式:
0 0 0 00
4(5)
0 0
( 2 ) 8 ( ) 8 ( ) ( 2 )( )
12
( ) (6), 2 2 , 030
f x h f x h f x h f x hf x
h
hf x h x h h
中点求导公式:
数值分析
数值分析
0 0 0 0
4(5)
0 0 2
0 0
0 0
1( ) [ 25 ( ) 48 ( ) 36 ( 2 )
12
16 ( 3 ) 3 ( 4 ) ( ) (7)5
4 , 0
4 , 0
f x f x f x h f x hh
hf x h f x h f
x x h h
x h x h
端点求导公式:
计算左端点: ,
计算右端点:
5 点公式计算 f’(x0) 的误差是 O(h4), 且中点公式( 6 )的误差小于端点公式( 7 )。
数值分析
数值分析
在构造数值微分公式时,不仅要考虑公式的截断误差,而且还要考虑公式的舍入误差。
2(3)0 0
0 1
( ) ( )( ) ( ) (4)
2 6
f x h f x h hf x f
h
考察公式:
0 0 0
0 0 0
( ) ( ) ( )
( ) ( ) ( )
f x h f x h e x h
f x h f x h e x h
设
0 0 0 00
2(3)
1
(4)
( ) ( ) ( ) ( )( )
2 2
( )6
f x h f x h e x h e x hf x
h h
hf
则 式为
数值分析
数值分析
计算 f ’(x0) 的总误差是:
2(3)0 0 0 0
0 1
( ) ( ) ( ) ( )( ) ( )
2 2 6
f x h f x h e x h e x h hf x f
h h
从截断误差 (h2/6)f(3)(ξ1 )的角度看, h 越小误差越小。但从舍入误差的角度看, h 不能太小。
误差界为: e(h)=e/h +(h2/6)M, 这里 e=max ︱ e(x0±h) ︱ ,M= max ︱ f(3)(x) ︱
例 3 设 f(x)=sin x ,计算 f’(0.900)=cos0.900 的近似值。
数值分析
数值分析
解:利用公式(0.900 ) (0.900 )
(0.900)2
f h f hf
h
计算。
'(0.900)
0.001 0.62500 0.00339
0.002 0.62250 0.00089
0.005 0.62200 0.00039
0.010 0.62150 0.00011
0.020 0.62150 0.00011
0.050 0.62140 0.00021
0.100 0.62055 0.00106
h f
近似 误差
数值分析
数值分析
三 . 运用样条插值函数求数值微分
用三转角方程和三弯矩方程可以分别求出在节点处函数 f(x) 的一阶导数和二阶导数的近似值 .
'
"
( 0,1, , )
( 0,1, , )
i i
i i
f m i n
f M i n
四 . 运用数值积分求数值微分'( ) ( ) ( ) ( )
( )
( ) ( ) ( )x
x
y f x F x F x f x
f x x R
f x f x F t dt
设函数 的导函数是 ,即 ,则可将函数 用定积分的形式表示出来,对
数值分析
数值分析
1
1
1 1
1 1
,
( ) ( ) ( ) ( 1,2, , 1)k
k
k k
x
k k x
x x x x
f x f x F t dt k n
取 ,得到
1
1
1
1
3
( )
( ) 2 ( ) ( )
k
k
k
k
x
x
x
kx
F t dt
F t dt hF x O h
若对积分 用中矩形公式计算,即
得到3
1 1
' 21 1
( ) ( ) 2 ( ) ( )( ) ( )
( ) ( ) ( )2
k k k
k kk k
f x f x hF x O hf x f x
F x f x O hh
1 1,k kx x 这就是在 上用中心差商构造的数值微分
公式。
数值分析
数值分析
1
1
0
1 1
( 0,1, , )
( ) ( 4 ) ( 1,2, 1)3
k
k
k
x
k k kx
x x kh k n
hF t dt F F F k n
设已知等距节点 上的数
值积 公 为
例
分 式
'
'
( ) ( ) ( ) ( 0,1, , )
, ( ) ( )( 0,1, , )
( ( ) ( ))
x
kx
k
f x f x F t dt x k n
y f x f x k n
F x f x
试用 构造在节点
上 求函数 的导数 的数值微
分公式
解:将数值积分公式代入
( ) ( ) ( )x
xf x f x F t dt
数值分析
数值分析
' ' '1 1 1 1
' ' '0 1
( 4 ) ( 1,2, , 1)3
,
k k k k k
n
hf f f f f k n
f f f
这是一个关于 的线性代数方程组
' ' '1 1 1 1
34 ( ) ( 1,2, , 1)k k k k kf f f f f k n
h
数值分析
数值分析
' '0
4 1
1 4 1
1 4 1
1 4
nf f
A
再补充两端一阶导数值 和 ,则上式就是一个封闭的
线形方程组,其系数矩阵是严格对角占优矩阵。
' ' ' ' '0 1 2 1, , , , ,n nf f f f f于是方程组存在唯一解,可解出 。