数值计算(三)-插值法(2)牛顿插值法

拉格朗日插值法每当节点增加或者减少时,其对应的插值基函数都是需要重新构造,所以在实际计算时非常不方便,因此出现了一种新的插值法:Newton插值法。

均差

在学习Newton插值法之前时,先了解一个概念:均差

均差定义

设函数 f f f n + 1 n+1 n+1个不同节点 x 0 , x 1 . . . x n \large x_0,x_1...x_n x0,x1...xn上的值为 f ( x 0 ) , f ( x 1 ) . . . f ( x n ) \large f(x_0),f(x_1)...f(x_n) f(x0),f(x1)...f(xn)分别称:

f [ x k ] = f ( x k ) \large f[x_k]=f(x_k) f[xk]=f(xk) f f f x k \Large \large x_k xk上的零阶均差

f [ x k , x k + 1 ] = f [ x k + 1 ] − f [ x k ] x k + 1 − x k \large f[x_k,x_{k+1}]=\Large \frac{f[x_{k+1}]-f[x_k]}{x_{k+1}-x_k} f[xk,xk+1]=xk+1xkf[xk+1]f[xk] x k , x k + 1 \large x_k,x_{k+1} xk,xk+1上的一阶均差

f [ x k , x k + 1 , x k + 2 ] = f [ x k + 1 , x k + 2 ] − f [ x k , x k + 1 ] x k + 2 − x k \large f[x_k,x_{k+1},x_{k+2}]=\Large \frac{f[x_{k+1},x_{k+2}]-f[x_k,x_{k+1}]}{x_{k+2}-x_k} f[xk,xk+1,xk+2]=xk+2xkf[xk+1,xk+2]f[xk,xk+1] x k , x k + 1 , x k + 2 \large x_k,x_{k+1},x_{k+2} xk,xk+1,xk+2上的二阶均差

因此对于一般形式为:

f [ x k , x k + 1 . . . x k + j ] = f [ x k + 1 . . . x k + j ] − f [ x k . . . x k + j − 1 ] x k + j − x k \large f[x_k,x_{k+1}...x_{k+j}]=\Large\frac{f[x_{k+1}...x_{k+j}]-f[x_k...x_{k+j-1}]}{x_{k+j}-x_k} f[xk,xk+1...xk+j]=xk+jxkf[xk+1...xk+j]f[xk...xk+j1] x k , x k + 1 . . . x k + j \large x_k,x_{k+1}...x_{k+j} xk,xk+1...xk+j上的 j 阶 均 差 \large j阶均差 j

均差性质

(1) k k k阶均差 f [ x k , x k + 1 . . . x k + j ] \large f[x_k,x_{k+1}...x_{k+j}] f[xk,xk+1...xk+j]是函数值 f ( x 0 ) , f ( x 1 ) , f ( x 2 ) . . . f ( x k ) \large f(x_0),f(x_1),f(x_2)...f(x_k) f(x0),f(x1),f(x2)...f(xk)的线性组合也就是:

f [ x k , x k + 1 . . . x k + j ] = ∑ j = 0 n f ( x i ) ( x j − x 0 ) ( x j − x 1 ) . . . ( x j − x j − 1 ) ( x j − x j + 1 ) . . . ( x j − x k ) f[x_k,x_{k+1}...x_{k+j}]=\large\sum\limits_{j=0}^n\Large \frac{f(x_i)}{(x_j-x_0)(x_j-x_1)...(x_j-x_{j-1})(x_j-x_{j+1})...(x_j-x_k)} f[xk,xk+1...xk+j]=j=0n(xjx0)(xjx1)...(xjxj1)(xjxj+1)...(xjxk)f(xi)
(2)对称性:均差对于定义的节点是对称的,即任意改变均差中节点的次序, f [ x 0 , x 1 . . . x k ] f[x_0,x_1...x_k] f[x0,x1...xk]的值不变。
(3)如果 f [ x 0 , x 1 . . . x k ] f[x_0,x_1...x_k] f[x0,x1...xk] x x x的m次多项式,那么 f [ x 0 , x 1 . . . x k , x k + 1 ] f[x_0,x_1...x_k,x_{k+1}] f[x0,x1...xk,xk+1] x x x m − 1 m-1 m1次多项式,所以如果 f ∈ ℘ n f\in\wp_n fn,那么 f [ x 0 , x 1 . . . x k ] f[x_0,x_1...x_k] f[x0,x1...xk]恒等于零。
(4)设 f ∈ C n [ a , b ] , x j ∈ [ a , b ] , j = 0 , 1... n f\in C^n[a,b],x_j\in[a,b],j=0,1...n fCn[a,b],xj[a,b],j=0,1...n为相异节点,则有 f [ x 0 , x 1 . . . x k ] = 1 n ! f ( n ) ( ξ ) \large f[x_0,x_1...x_k]=\large\frac {1}{n!}f^{(n)}(\xi) f[x0,x1...xk]=n!1f(n)(ξ),其中 ξ ∈ ( a , b ) \xi \in(a,b) ξ(a,b).

Newton插值公式

f ( x ) \large f(x) f(x)关于节点 x 0 , x 1 , . . . , x n x_0,x_1,...,x_n x0,x1,...,xn n n n次插值多项式为:
N n ( x ) = f ( x 0 ) + f [ x 0 , x 1 ] ( x − x 0 ) + . . . f [ x 0 , x 1 , . . . , x n ] ( x − x 0 ) ( x − x 1 ) . . . ( x − x n ) \large N_n(x)=f(x_0)+f[x_0,x_1](x-x_0)+...f[x_0,x_1,...,x_n](x-x_0)(x-x_1)...(x-x_n) Nn(x)=f(x0)+f[x0,x1](xx0)+...f[x0,x1,...,xn](xx0)(xx1)...(xxn)

均差余项

R n ( x ) = f ( x ) − N n ( x ) = f [ x , x 0 , x 1 , . . . , x n ] ( x − x 0 ) ( x − x 1 ) . . . ( x − x n ) R_n(x)=f(x)-N_n(x)=f[x,x_0,x_1,...,x_n](x-x_0)(x-x_1)...(x-x_n) Rn(x)=f(x)Nn(x)=f[x,x0,x1,...,xn](xx0)(xx1)...(xxn)将其改写为微分形式:
R n ( x ) = 1 ( n + 1 ) ! f ( n + 1 ) ( ξ ( x ) ) ω n + 1 ( x ) R_n(x)=\Large \frac{1}{(n+1)!}\large f^{(n+1)}(\xi(x))\omega_{n+1}(x) Rn(x)=(n+1)!1f(n+1)(ξ(x))ωn+1(x)

等距节点下的Newton插值公式
前向插值公式

假设 f ( x k ) = f ( x 0 + k h ) ( k = 0 , 1 , . . . , n ) f(x_k)=f(x_0+kh)(k=0,1,...,n) f(xk)=f(x0+kh)(k=0,1,...,n)已知,需求在 x = x 0 + t h , 0 < t < 1 x=x_0+th, 0<t<1 x=x0+th,0<t<1处的近似值,插值节点取为 x 0 , x 1 , . . . , x n x_0,x_1,...,x_n x0,x1,...,xn对于等距节点且顺序排列得到的插值公式为:
N x ( x 0 + t h ) = f ( x 0 ) + t Δ f ( x 0 ) + 1 2 ! t ( t − 1 ) Δ 2 f ( x 0 ) + . . . 1 n ! t ( t − 1 ) ( t − 2 ) . . . ( t − n + 1 ) Δ n f ( x 0 ) N_x(x_0+th)=f(x_0)+t\Delta f(x_0)+\frac{1}{2!}t(t-1)\Delta^2f(x_0)+...\frac{1}{n!}t(t-1)(t-2)...(t-n+1)\Delta^nf(x_0) Nx(x0+th)=f(x0)+tΔf(x0)+2!1t(t1)Δ2f(x0)+...n!1t(t1)(t2)...(tn+1)Δnf(x0)也就是所谓的

N e w t o n Newton Newton前向插值公式。此时对应的插值余项为: R n ( x ) = t ( t − 1 ) . . . ( t − n ) ( n + 1 ) ! h n + 1 f n + 1 ( ξ ) , ξ ∈ ( x 0 , x h ) R_n(x)=\Large \frac{t(t-1)...(t-n)}{(n+1)!}h^{n+1}f^{n+1}(\xi),\xi\in(x_0,x_h) Rn(x)=(n+1)!t(t1)...(tn)hn+1fn+1(ξ),ξ(x0,xh)

解释以下其中 Δ \Delta Δ的含义: Δ n f ( x k ) = f [ x k , x k − 1 , . . . , x k − n ] n ! h n \Delta^{n}f(x_k)=\LARGE\frac{f[x_k,x_{k-1},...,x_{k-n}]}{n!h^n} Δnf(xk)=n!hnf[xk,xk1,...,xkn]

后向插值公式

如果将顺序的节点倒序排列后推导对应的等距插值公式就是所谓的后向插值公式:
首先补充一个符号的含义 ( n j ) = n ( n − 1 ) . . . ( n − j + 1 ) j ! (3) \begin{pmatrix}n\\j\\\end{pmatrix}\tag{3}=\frac{n(n-1)...(n-j+1)}{j!} (nj)=j!n(n1)...(nj+1)(3)

对应的后向插值公式为:
N n ( x ) = f [ x n ] + ( − 1 ) − t ( − t − 1 ) . . . ( − t − k + 1 ) 1 ! ∇ f ( x n ) + ( − 1 ) 2 − t ( − t − 1 ) . . . ( − t − k + 1 ) 2 ! ∇ 2 f ( x n ) + . . . ( − 1 ) n − t ( − t − 1 ) . . . ( − t − k + 1 ) n ! ∇ n f ( x n ) N_n(x)=f[x_n]+(-1)\Large \frac{-t(-t-1)...(-t-k+1)}{1!}\large \nabla f(x_n)+(-1)^2\Large \frac{-t(-t-1)...(-t- k+1)}{2!}\large \nabla^2f(x_n)+...(-1)^n\Large \frac{-t(-t-1)...(-t-k+1)}{n!}\large \nabla^nf(x_n) Nn(x)=f[xn]+(1)1!t(t1)...(tk+1)f(xn)+(1)22!t(t1)...(tk+1)2f(xn)+...(1)nn!t(t1)...(tk+1)nf(xn),

对应的微分余项为

R n ( x ) = t ( t + 1 ) . . . ( t + n ) ( n + 1 ! ) h n + 1 f n + 1 ( ξ ( x ) ) , ξ ( x ) ∈ ( x 0 , x n ) ; R_n(x)=\Large \frac{t(t+1)...(t+n)}{(n+1!)}h^{n+1}f^{n+1}(\xi(x)),\xi(x)\in(x_0,x_n); Rn(x)=(n+1!)t(t+1)...(t+n)hn+1fn+1(ξ(x)),ξ(x)(x0,xn);

用一波百度百科上的公式图:

在这里插入图片描述

实战

全是公式确实太过于无聊,感叹一句我太菜了呀,fw石锤了。不然上题目实战以下,看看直接会不会用,经典白嫖,拿来主义。
在这里插入图片描述
在这里插入图片描述
书上有个数据我感觉有问题,3到4过程中使用后向插值计算:1.09544-1.07238应该是0.02306,而不是书上所写的0.02307,后面的计算结果应该也需要对应的修正,我不确定是不是因为在前面计算开根号的时候,本身1.09544和1.07238就是近似处理过的数据,然后计算全程是直接使用 1.15 − 1.20 \sqrt{1.15}-\sqrt{1.20} 1.15 1.20 得到的0.02307这个结果,不过这些都不重要,无伤大雅,方法我们已经掌握了,狂笑哈哈哈

兄弟们,你学会了吗?什么?不会?
那就再来一道练练手?
在这里插入图片描述
在这里插入图片描述

欢乐的时光总是短暂的,让我们下一次再见!!!
good good study,day day up! (study hard, improve every day)
预知后事,请听下回分解!!!!(Hermite插值法哦!)
  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值