第五章 数值积分与数值微分

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

三点向前 差商
中心差商 三点向后 差商
基于泰勒级数的公式等价于通过对数据点进行插值求微分
2015/6/13 数值计算方法 20
数值微分


用三次样条插值的导数近似被插值函数的导数,效果相 当好 在实际问题中使用哪种公式要视具体问题而定。有时三 种公式都要用到,给定一个列表函数,对函数中间各点 都可使用精度较高的中心差分公式,但起始点只能使用 前差公式,终点则使用后差公式。 一般情况下,三点公式比两点公式准确,步长越小结果 越准确。但当余项中的高阶导数无界或计算过程中的舍 入误差超过截断误差时,这个结论不成立。

2015/6/13
数值计算方法
11
有限差商近似
f ( x0 h) f ( x0 ) h f ( x0 h) f ( x0 ) h R( x) f ( x0 ) f ( ) O(h) h 2! 向后差商 f ( x0 ) f ( x0 ) f ( x0 h) h f ( x0 ) f ( x0 h) h R( x) f ( x0 ) f ( ) O(h) h 2! 中心差商 f ( x0 ) f ( x0 h) f ( x0 h) 2h
i i+1
0.25
0.5 0.75
1.10351563
0.925 0.63632813
f (0.5) 1.155 f (0.5) 0.714 f (0.5) 0.934
t 26.5%
t 21.7%
数值计算方法
2015/6/13
t 2.4%
15
数值微分——例

利用插值或拟合得到的函数
2015/6/13
数值计算方法
4
等面积微分
这个是什么意思??
取矩形的中点作为 折线;光滑曲线下 方的面积和矩形的 面积相等
2015/6/13
数值计算方法
5
网格逼近积分
f (x )
a
b
x
2015/6/13
数值计算方法
6
积分中值定理
f (x )

b
a
f ( x )dx f ( )( b a )
数值计算方法
17
插值型数值微分

用插值函数的导数近似为原函数的导数
x , f x j 0,1, 2,
j j
, n
f ( x) Ln ( x) Rn ( x)
f ( k ) ( x) Pn( k ) ( x)
f ( x) N n ( x) Rn ( x)
f ( n 1) ( ) Rn ( x) n1 ( x) (n 1)!

取h=0.25,利用高精度微分公式 前向差商
f (0.5) 0.859375
i
i-2
xi
0
f(xi)
1.2
t 5.82%
i-1
i
0.25
0.5
1.10351563
0.925
后向差商
f (0.5) 0.878125
t 3.77%
t 0%
i+1
i+2
0.75
a
b
x
2015/6/13
数值计算方法
7
数值微分与积分

数值微分

有限差商逼近导数 如果数据存在误差,使用曲线拟合技术构造光滑拟合曲 线,对拟合曲线微分
积分中值定理 a f ( x)dx f ( )(b a) 用区间[a,b]上一些点xk处的“高度” f(xk)的加权平均值, 作为平均高度 f()的近似值
在x0处的向前差商 在x1处的向后差商
19
2015/6/13
f ( x1 ) f ( x0 ) h f ( ) h 数值计算方法 2
插值型数值微分

特例:n=2,插值节点为xk =x0+kh(k=0,1,2)——一阶微分 三点公式 怎么推导的?
1 h 2 (3) f ( x0 ) 3 f ( x0 ) 4 f ( x1 ) f ( x2 ) ) f ( ) 2h 3 1 h 2 (3) f ( x1 ) f ( x0 ) f ( x2 ) f ( ) 2h 6 1 h 2 (3) f ( x2 ) f ( x0 ) 4 f ( x1 ) 3 f ( x2 ) f ( ) 2h 3
泰勒展开舍去 的部分就是截 断误差
2015/6/13
数值计算方法
21
本章内容

数值微分
差商近似 插值型数值微分


数值积分
Newton-Cotes 积分 龙贝格(Romberg)积分 高斯(Gauss)求积公式

2015/6/13
数值计算方法
22
数值积分

定义数值积分是离散点上的函数值的线性组合
时的步长h/2就是合适的步长
f ( x) D(h) O ( h) 2 f ( x) D(h / 2) O(h / 2)
f ( x) D(h) 2 f ( x) 2D(h / 2) f ( x) D(h / 2) D(h) D(h / 2)
增加泰勒级数展开式中的项数可以提高精度
1.0
0.63632813
0.2

中心差商
f (0.5) 0.9125
因为原函数为多项 式,所以高精度微分 公式很精确
2015/6/13
数值计算方法
16
本章内容

数值微分
差商近似 插值型数值微分


数值积分
Newton-Cotes 积分 龙贝格积分 高斯求积公式

2015/6/13
I f ( x)dx Ai f ( xi ) I n ( f )
b a i 0
n
I I n ( f ) Rn ( f )
这个跟f有 关

求积公式的余项
称为求积系数,与f(x)无 关,与积分区间和积分点 有关
称为求积 节点,与 f(x)无关
两个问题:

求积系数如何选取 节点可以自由选取,取什么点好

向前差商
f ( x0 )
R( x) f ( x0 )
f ( x0 h) f ( x0 h) 2h h2 h2 [ f (1 ) f ( 2 )] f ( ) O(h 2 ) 12 6
数值计算方法 12
2015/6/13
有限差商近似的误差
代数精度
f ( n 1) ( ) Rn ( x) n1 ( x) (n 1)!
2015/6/13
数值计算方法
13
高精度微分公式
f ( xi ) 2 f ( xi 1 ) f ( xi ) f ( xi )h h 2 相邻点之间间 距是相等的 f ( xi 1 ) f ( xi ) f ( xi ) 2 f ( xi ) h O( h ) h 2 f ( xi 2 ) 2 f ( xi 1 ) f ( xi ) f ( xi ) O ( h) 2 h f ( xi 1 ) f ( xi ) f ( xi 2 ) 2 f ( xi 1 ) f ( xi ) 2 f ( xi ) h O ( h ) 2 h 2h f ( xi 2 ) 4 f ( xi 1 ) 3 f ( xi ) f ( xi ) O( h 2 ) 增加二阶导数项可 2h 以将精度提高到

未知,当xxi时,无法利用上式估计误差,若求某个插
值节点的导数值,有
( n 1) f ( ) f ( xi ) Pn ( xi ) n 1 ( xi ) (n 1)!
这是啥?

特例:n=1,插值节点为x0和 x1,若记h=x1- x0——一阶 微分两点公式
f '( x0 ) f '( x1 ) f ( x1 ) f ( x0 ) h f ( ) h 2
2015/6/13
数值计算方法
23
代数精度


如果一个求积公式对任何次数不超过m次的代数多项式 都准确成立,而对于m+1次的代数多项式不能准确成立, 即R(f)0,则称求积公式In(f)的代数精度是m 梯形公式的代数精度m=1


对不高于1次的代数多项式 都准确成立 对2次以上的代数多项式存在误差
P (x ) f (x )
x b 积分过程对数据点进行求和,正的和负的随 机误差倾向于相互抵消;相反,微分过程是 相减的,正的和负的随机误差倾向于相加。 0
a
2015/6/13
数值计算方法
可以进行 预测么?
10
本章内容

数值微分
差商近似 插值型数值微分


数值积分
Newton-Cotes 积分 龙贝格(Romberg)积分 高斯(Gauss)求积公式
k ( n 1) d f ( ) (k ) Rn ( x) k n1 ( x) dx (n 1)!
2015/6/13
数值计算方法
18
插值型数值微分

k=1
( n 1) n1 ( x) d f ( ) ( n 1) Rn ( x) n1 ( x) f ( ) (n 1)! (n 1)! dx
0.5
i
xi 0 0.5 1.0 f(xi)
f(xi) 1.2 0.925 0.2
后向差商
f (0.5) f (0.5)
0.925 1.2 0.55 0.5 0.2 1.2 1.0 1
t 3ቤተ መጻሕፍቲ ባይዱ.7%
i
i+1 xi


中心差商 h=0.25
t 9.6%
i-1
O(h2)
2015/6/13 数值计算方法 14
数值微分——例

例:利用有限差商估计函数 f ( x) 0.1x4 0.15x3 0.5x2 0.25x 1.2


在x=0.5处的导数值(真值为f’(0.5)=-0.9125) 解:h=0.5, i 前向差商 f (0.5) 0.2 0.925 1.45 t 58.9% i-1
数值微分和数值积分
浙江大学控制系
2015/6/13
数值计算方法
1
微分和积分(Differentiate and Integrate)
y f ( xi x) f ( xi ) x x f ( xi x) f ( xi ) dy lim dx x 0 x I f ( x)dx
一个求积公式的代数精度越高, 就能对更多的被积函数准确或较准 确地成立

2015/6/13
数值计算方法
24
插值型求积公式

用插值函数的积分,作为数值积分
b b n n a
Ai
In ( f )

b Ln ( x)dx li (x) f ( xi )dx li ( x)dx f ( xi ) a a i 0 i 0

相近相减? 这时我们 就需要一 个平衡点
h越小,误差越小,但同时舍入误差增大 最佳步长确定的事后估计法

设D(h),D(h/2)分别为步长为h,h/2的差商公式
f ( x) D(h) O(h) f ( x) D(h / 2) O(h / 2) h D ( h) D ( ) 2
I f ( x)dx Ak f ( xk )
b a k 0 n

数值积分

b

求积系数Ak=k(ba),k是求积节点权系数。
2015/6/13 数值计算方法 8
数值微分与积分

对于复杂连续函数


由函数表达式生成离散的 数据列表 在离散点的基础上,利用 数值方法计算数值微分和 积分
a b
2015/6/13
数值计算方法
2
微分和积分

Newton-Leibniz公式
b

a
f ( x)dx F (b) F (a)
2015/6/13
数值计算方法
3
微分和积分

函数类型

能通过数值方法求黎曼积分么?
简单的连续函数,如多项式、指数函数或三 角函数 很难或完全无法直接微分或积分的复杂函数 列表型函数,仅给出了一系列离散点及相应 的函数值,如实验或现场数据
2015/6/13
数值计算方法
9
数值积分与微分的稳定性


一般数值积分过程是稳定 的,所得的解精确度也较 高。 数值微分时,因近似多项 式的曲线斜率可能和给定 函数f(x)的曲线斜率有很大 不同,特别是当f(x)在给定 区间内变化比较大时更是 这样。这样就使得数值微 分的解不稳定,并且精度 也较差。
相关文档
最新文档