第3讲 牛顿插值公式

合集下载

牛顿法代数插值ndash差商表的求法

牛顿法代数插值ndash差商表的求法

牛顿法代数插值ndash 差商表的求法原文地址:牛顿法代数插值–差商表的求法作者:大关牛顿法代数插值–差商表的求法下面的求插商的方法并不是好的求插商的方式,因为他的效率并不是很高,不论是从空间效率还是时间效率,但是下面主要探讨的是一种将塔形的数据转换成一位数组的方式。

实际上求插商仅通过一个n个元素的一位数组就能解决,但本文强调的是一种思路,希望对大家有所借鉴。

牛顿插商公式:f[xi,xj]=(f(xj)– f(xi))/(xj– xi)f[xi,xj,xk]=(f[xj,xk]– f[xi,xj])/(xk– xi)….f[x0,x1,x2…,xn]=(f[x1,x2,…,xn]– f[x0,x1,…,xn-1])/(xn– x0)转换成均插表(或称差商表)形式如下:定义1:f[xi,xi+1,…xj]简记为f(i,j)其中i=0&&i=n&&j=0&&j=n&&i j;记f(xi)为f[xi,xi]即f(i,i)根据定义1可以推出:f[x0,x1]=f(0,1),f[x0,x1…xn]=f(0,n)….根据定义1:可以将插商表转换为如下形式。

根据上图,可以给出实际一维数组存储时的序列关系,如下图所示:此时f(0,0)位置是数组下标0,f(1,1)是数组下标为1….这样,我们从中找出相应的规律。

推论1:已知f(i,j),n为变量的数目,令k=j– i。

当k不等于0时,f(i,j)在数组中的下标通过计算得:Index=k*n–((k-1)*k)/2+i当k等于0时Index=i。

推论1很容易证明(实际就是一个等差数列求和问题)这里证明略。

推论2:n为变量的数目,则一维数组的长度可以计算得((1+n)*n)/2推论2可以通过等差数列求和得以证明。

证明略。

推论3:各阶插商就是f(0,k)k=1,2….n.推论3:根据插商的定义和定义1可以直接推出。

53第三节 Newton插值多项式

53第三节 Newton插值多项式

利用N2(x)又可得过前四点的三次牛顿插值多项式 N3( x) N2( x) 0.1970( x 0.40)(x 0.55)(x 0.65)
故 f (0.596) N3(0.596) 0.6319145 f [x0 , , x4 ] 0.0344 可得N3(x)的截断误差
f [x, x0 ,L , xn1] f [x0 , x1,L , xn] f [x, x0,L , xn]( x xn ) 依次把后式代入前式,最后得
f ( x) f ( x0 ) f [x, x0 ]( x x0 ) f ( x0 ) f [ x0 , x1]( x x0 ) f [x, x0 , x1]( x x0 )( x x1 ) f ( x0 ) f [ x0 , x1]( x x0 ) f [x0 , x1, x2 ]( x x0 )( x x1 ) f [x, x0 , x1, x2 ]( x x0 )( x x1 )( x x2 )
1
数学学院 信息与计算科学系
分析“承袭性”,先考察的n=1情形,此时线
性插值多项式记为P1(x), 它满足插值条件 P1(x0)=f(x0), P1(x1)=f(x1), 用(2.1)式的点斜式表示为
P1( x)
f ( x0 )
f
(
x1 ) x1

f( x0
x0 )
(
x

x0
),
它可看成是零次多项式的修正P0(x)=f(x0),即
则Pn(x)可表示为
Pn( x) a0 a1( x x0 ) L an( x x0 )L ( x xn1),
其中a0,a1,…, an为待定系数,可由条件(3.1)确定. 与 拉格朗日插值不同,这里的Pn(x)是由基函数{1,x-x0, …,(x-x0)…(x-xn-1)}逐次递推得到的. 为了给出系数 ai(i=0,1, …,n)的表达式,需引进差商(即均差)的定义.

第3讲 牛顿插值多项式

第3讲 牛顿插值多项式
DEPARTMENT OF MATHEMATICS
2,利用差商表的最外一行,构造插值多项式
N n ( x) = f ( x0 ) + f [ x0 , x1 ]( x x0 ) + L + f [ x0 ,L , xn ]( x x0 ) L ( x xn 1 )
例子
2点Newton型插值
f ( x1 ) f ( x 0 ) N 1 ( x ) = f ( x0 ) + ( x x0 ) x1 x 0
n
性质2
数 学 系 Sichuan Agricultural University
DEPARTMENT OF MATHEMATICS
f n+1 (ξ ) 同样 Nn ( x) 的误差为 Rn ( x) = ( x x0 )L( x xn ) (n + 1)!
另一方面 设 {xi }in=0 Newton插值为Nn ( x) 则有 {xi }in=0 U {a}为Nn+1 (t ) = Nn (t ) + f [ x0 ,L, xn , a](t x0 )L(t xn ) Nn+1 (a) = f (a) ∴ f (a) Nn (a) = f [ x0 ,L, xn , a](a x0 )L(a xn )
f ( x1 ) f ( x0 ) a1 = = f [ x0 , x1 ] x1 x0
1 f ( x2 ) f ( x0 ) a2 = a1 x2 x1 x2 x0 1 ( f [ x2 , x0 ] f [ x1 , x0 ]) = f [ x2 , x1 , x0 ] = x2 x1
i 0 , L , i k 是 0 , L , k 的任意排列
数 学 系 Sichuan Agricultural University

计算方法 3 牛顿插值

计算方法 3 牛顿插值
计算方法(2016/2017 第一学期) 贾飞 西南科技大学 制造科学与工程学院
2
分析
显然, L2 ( x0 ) y0,L2 ( x1 ) y1;利用插值 条件, L2 ( x2 ) y2 y1 y0 y 2 y0 ( x2 x0 ) a ( x2 x0 )( x2 x1 ) x1 x0 y2 y0 y1 y0 x2 x0 x1 x0 y1 y0 a L2 y0 ( x x0 ) x2 x1 x1 x0 y2 y0 y1 y0 x2 x0 x1 x0 ( x x0 )( x x1 ) x2 x1
计算方法(2016/2017 第一学期) 贾飞 西南科技大学 制造科学与工程学院
9
牛顿基本插值公式
其中,线性部分 N 1 ( x ) f ( x0 ) f [ x0 , x1 ]( x x0 ) 满足 N 1 ( x0 ) f ( x 0 ) f ( x1 ) f ( x0 ) N 1 ( x1 ) f ( x0 ) ( x1 x0 ) f ( x1 ) x1 x0 N 1 ( x ) 为 f ( x ) 以 x0,x1 为插值结点的 线性插值函数,即: N ( 1 x ) L1 ( x )
西南科技大学
制造科学与工程学院
16
解:构造差商表如下,
xi -2 0 f(xi ) 1阶 17 1 -8 1 17 3 8 1.25 2阶 3阶
1
2
2
19
N 3 ( x ) 17 8( x 2) 3( x 2) x 1.25( x 2) x ( x 1) f 0.9 N 3 (0.9) 1.30375, R3 0.9 1.25 0.9 2 0.9 0.9 1 0.9 2 0.358875

等距节点Newton插值公式

等距节点Newton插值公式

等距节点Newton插值公式
插商与差分的关系
(1)用前插表示N(x)
在等距节点条件下有:
f [x0 , x1]
f
( x1 ) x1
f (x0 x0
)
1 h
f0
f [ x0 , x1,x2 ]
f [ x1, x2 ]) f [ x0 , x1]) x2 x0
1 h
f1
1 h
f 0
2h
1 2!h 2
数值计算方法
1)...(t
n)
f
( n 1)
(
),
(x0 , x0 h)
(2)用后插表示N(x)
如果将节点x0 , x1,...,xn到排序为:xn , xn1,...x0 , 则Newton插值公式为: Nn (x) f (xn ) (x xn ) f [xn , xn1]
(x xn )(x xn1) f [xn , xn1, xn2 ] ... (x xn )(x xn1)...(x x1) f [xn , xn1,...x1, x0 ] 同样有:
2 f0
一般有
f [ x0 , x1,...,xn ]
1 n!h n
n
f0
若令x x0 th,则Newton插值公式和余式具有形式
Nn (x) Nn (x0 th)
f0
t 1!
f0
t
(t 2!
1)
2
f0
.
.
.
t
(t
1)
...(t n!
n
1)
n
f0
Rn
(x)
h n 1 t(t
(n 1)!
0.032 585
-0.148 411

牛顿插值公式

牛顿插值公式

end
2
for i=1:m
1.5
t0=t(i);s=f(n); 1
for k=n:-1:2
s=f(k-1)+s*(t0-x(k-1));
0.5
end
0
y1(i)=s; End
-0.5
-5
0
5
plot(x,y,'ko',t,y1,'r',t,y0,'k')
谢谢观看! 2020
一阶差商 f [ x j , x j1]
f ( x j1) f ( x j ) x j1 x j
f ( x j ) f ( x j1) x j x j1 x j1 x j
( j = 0,1,…,n-1 )
二阶差商
f [x j , x j1, x j2 ]
f [x j1, x j2 ] f [x j , x j1] xj2 xj
f [ x0 , x1 , x2 ]
f [ x1 , x2 ] f [ x0 , x1 ] x2 x0
a0 = f(x0), a1 = f[x1, x2], a2 = f[x0, x1, x2]
P(x)=a0 + a1(x – x0) + a2 (x – x0)(x – x1)
定义5.3 若已知函数 f(x) 在点 x0, x1, ···, xn 处的 值 f(x0), f(x1), ···, f(xn).如果 i ≠ j ,则
N ( x) f ( x0 ) f [ x0 , x1 ](x x0 ) f [ x0 , x1 , x2 ](x x0 )(x x1 ) f [ x0 , x1 , , xn ](x x0 )(x x1 ) ( x xn1 )

牛顿插值法原理及应用

牛顿插值法原理及应用

牛顿插值法插值法是利用函数f (x)在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f (x)的近似值。

如果这特定函数是多项式,就称它为插值多项式。

当插值节点增减时全部插值基函数均要随之变化,这在实际计算中很不方便。

为了克服这一缺点,提出了牛顿插值。

牛顿插值通过求各阶差商,递推得到的一个公式:f(x)=f[x0]+f[x0,x1](x-x0)+f[x0,x1,x2](x-x0)(x-x1)+...f[x0,...xn](x-x0 )...(x-xn-1)+Rn(x)。

插值函数插值函数的概念及相关性质[1]定义:设连续函数y-f(x) 在区间[a,b]上有定义,已知在n+1个互异的点x0,x1,…xn上取值分别为y0,y1,…yn (设a≤ x1≤x2……≤xn≤b)。

若在函数类中存在以简单函数P(x) ,使得P(xi)=yi,则称P(x) 为f(x)的插值函数.称x1,x2,…xn 为插值节点,称[a,b]为插值区间。

定理:n次代数插值问题的解存在且唯一。

牛顿插值法C程序程序框图#include<stdio.h>void main(){float x[11],y[11][11],xx,temp,newton;int i,j,n;printf("Newton插值:\n请输入要运算的值:x=");scanf("%f",&xx);printf("请输入插值的次数(n<11):n=");scanf("%d",&n);printf("请输入%d组值:\n",n+1);for(i=0;i<n+1;i++){ printf("x%d=",i);scanf("%f",&x[i]);printf("y%d=",i);scanf("%f",&y[0][i]);}for(i=1;i<n+1;i++)for(j=i;j<n+1;j++){ if(i>1)y[i][j]=(y[i-1][j]-y[i-1][j-1])/(x[j]-x[j-i]);elsey[i][j]=(y[i-1][j]-y[i-1][j-1])/(x[j]-x[j-1]);printf("%f\n",y[i][i]);}temp=1;newton=y[0][0];for(i=1;i<n+1;i++){ temp=temp*(xx-x[i-1]);newton=newton+y[i][i]*temp;}printf("求得的结果为:N(%.4f)=%9f\n",xx,newton);牛顿插值法Matlab程序function f = Newton(x,y,x0)syms t;if(length(x) == length(y))n = length(x);c(1:n) = 0.0;elsedisp(&apos;x和y的维数不相等!&apos;);return;endf = y(1);y1 = 0;l = 1;for(i=1:n-1)for(j=i+1:n)y1(j) = (y(j)-y(i))/(x(j)-x(i));endc(i) = y1(i+1);l = l*(t-x(i));f = f + c(i)*l;simplify(f);y = y1;if(i==n-1)if(nargin == 3)f = subs(f,&apos;t&apos;,x0);elsef = collect(f); %将插值多项式展开f = vpa(f, 6);endend牛顿插值法摘要:值法利用函数f (x)在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f (x)的近似值。

牛顿均差差值

牛顿均差差值
n+ f ( n+1) (ξ x ) f [ x , x 0 , ... , x n ]ω n +1 ( x ) = ω n +1 ( x ) ( n + 1) !
f ( n ) (ξ ) f [ x 0 , ... , x n ] = , ξ ∈ ( x min , x max ) n!
的函数表如下, 例 f(x)的函数表如下,用三次牛顿插值计算 的函数表如下 用三次牛顿插值计算f(0.596)的近似值 的近似值

y ← y+t*A(k,k) k ← k+1
N
k>N
Y
输出y 输出
§2 Newton’s Interpolation
等距节点公式 /* Formulae with Equal Spacing */ 牛顿基本插值公式对结点是否等距没有限制. 牛顿基本插值公式对结点是否等距没有限制.不过当 结点等距时前述牛顿插值公式可进行简化.首先介绍 结点等距时前述牛顿插值公式可进行简化. 差分概念. 差分概念. x −x 当节点等距分布时: 等距分布时 当节点等距分布时 x i = x 0 + i h ( i = 0 , ... , n ) h =
0.62)+0.21303(x-0.55)(x-0.65)(x-0.80) f(0.596) ≈N3(0.596)=0.63192
牛顿插值算法设计
N n ( x ) = f ( x0 ) + f [ x0 , x1 ]( x − x0 ) + f [ x0 , x1 , x2 ]( x − x0 )( x − x1 ) + ...
f [ x 0 , x 1 , x 2 ,⋯ , x n] =

牛顿插值法原理及应用

牛顿插值法原理及应用

牛顿插值法插值法是利用函数f (x)在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f (x)的近似值。

如果这特定函数是多项式,就称它为插值多项式。

当插值节点增减时全部插值基函数均要随之变化,这在实际计算中很不方便。

为了克服这一缺点,提出了牛顿插值。

牛顿插值通过求各阶差商,递推得到的一个公式:f(x)=f[x0]+f[x0,x1](x-x0)+f[x0,x1,x2](x-x0)(x-x1)+...f[x0,...x n](x-x0 )...(x-x n-1)+R n(x)。

插值函数插值函数的概念及相关性质乩定义:设连续函数y-f(x) 在区间[a,b]上有定义,已知在n+1个互异的点x0,x1,…xn上取值分别为y0,y1,…yn (设a< x1 <x2 < xn w b)。

若在函数类中存在以简单函数P(x),使得P(xi)=yi,则称P(x)为f(x)的插值函数. 称x1,x2,…xn为插值节点,称[a,b]为插值区间。

定理:n次代数插值问题的解存在且唯一。

牛顿插值法C程序1,-Mt Cll. nilI frT-r-1■■』zJr1程序框图#include<stdio.h> void mai n(){float x[11],y[11][11],xx,temp, newto n;int i,j, n;printf("Newton 插值:\n请输入要运算的值:x=");sca nf("%f", &xx);printf(" 请输入插值的次数(n<11):n=");sca nf("%d",&n);printf("请输入%d组值:\n",n+1);for(i=0;i< n+1;i++){ prin tf("x%d=",i);sca nf("%f", &x[i]);prin tf("y%d=",i);sca nf("%f", &y[0][i]);XO=OMHUOW ①匚LHdlu9a巨A-」WL-qx-mxgD-mL'M-nKL'MHmuM①(LAW7 (++rL+uvrHD 」04 (+土=+u v ~ud 」04a -=x① s a)O O H(匚L o_(x )l l o)u ①-H u((A)£6U2H H(X )£6U①一)七】siuAs(oxsx)uoweN H 4 u o l o u a性胆 qewlAIw迴B犀<eo w① u-xx-=u\J6&Ha寸& )M灭<撫旨e ^=)匕 £」d宀CL l u ①&=二A +uo g ① u H u og ① u二 L.'vxxhdlu 晋 dlu2 〉(+土=+u v ~U_)」O 4disp(&apos;x 和y 的维数不相等!&apos;);return;endf = y(1);y1 = 0;l = 1;for(i=1:n-1)for(j=i+1:n)y1(j) = (y(j)-y(i))/(x(j)-x(i));endc(i) = y1(i+1);l = l*(t-x(i));f = f + c(i)*l;simplify(f);y = y1;if(i==n-1)if(nargin == 3)f = subs(f,&apos;t&apos;,x0);elsef = collect(f); % 将插值多项式展开f = vpa(f, 6);endend牛顿插值法摘要:值法利用函数f (x) 在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f(X)的近似值。

牛顿插值

牛顿插值

§4 Newton’s Interpolation
注:
由唯一性可知 Nn(x) ≡ Ln(x), 只是算法不同,表达 , 只是算法不同, 形式不同,故其余项也相同, 形式不同,故其余项也相同,即
f ( n +1) (ξ x ) ωn +1 ( x ) f [ x, x0 , ... , xn ]ωn +1 ( x ) = ( n + 1) !
+ f [ x , x0 , ... , xn ]( x − x0 )...( x − xn−1 )( x − xn )
Nn(x)—n次多 次 项式,满足: 项式,满足: Nn(xi)= f(xi)
ai = f [ x0, …, xi ]
Nn(x) ≡ Ln(x),??? ,
Rn(x)—插值余项, 插值余项, 插值余项 满足R , 满足 n(xi)=0, i=0,…,n
差分计算可通过构造差分表得到
xk f ( xk ) =fk ∆fk x0 f0 x1 f1 x2 f2 x3 f3 x4 f4
增加
1
t
t(t-1)/2! t(t-1)(t-2)/3!
∆2 fk
2
∆3 fk ∆4 fk
3 4
∆f0 ∆f1 ∆f2 ∆f3 ∆f4
∆2 f0 ∆3 f0 ∆4 f0 ∆5 f0 ∆ f1 ∆ f1 ∆ f1 ∆ f2 ∆ f2
f ( k ) (ξ ) f [ x 0 , ... , x k ] = , ξ ∈ ( x min , x max ) k!
实际计算过程为
f (x0) f (x1) f (x2) … f (xn−1) − f (xn) f [x0, x1] f [x1, x2] …… …… f [xn−1, xn] − f [xn, xn+1]

牛顿(Newton)插值法

牛顿(Newton)插值法

Newton插值C 的求法
i
Nn(x) = c0 + c1(x – x0) + c2(x – x0) (x – x1) + …..+ cn(x – x0) (x – x1) …. (x-xn)
令x = x0得:Nn(x0) = c0 = y0 = f(x0) x = x1得:Nn(x1) = c0 + c1(x1 –x0) = y1 = f(x1) 由此可解出:c0,c1;ci 依次类推。
x y x0 y0 x1 y1 …………. …………. xn-1 yn-1 xn yn xn+1 yn+1
Nn+1(x) = c0 + c1(x – x0) + c2(x – x0)(x – x1) + …. + cn(x – x0) (x – x1) …(x –xn-1) + cn+1(x – x0) (x –x1) ….(x – xn-1) (x - xn)
求n次多项式Nn(x)使得:
Nn(xi) = f(xi) = yi, i = 0,1,… ,n Nn(x) = c0 + c1(x – x0) + c2(x – x0) (x – x1) + …..+ cn(x – x0) (x – x1) …. (x-xn)
Newton插值的承袭性
增加一个点之后
p1xp0xc1xx0其中p0xfx0其修正项的系数01011xxxfxfc???再进一步修正p1x可以进一步得到抛物线插值公式p2xp1xc2xx0xx10201011212xxxxxfxfxxxfxf??????c2差商的概念差商的定义定义1
牛顿(Newton)插值法

第三章牛顿插值

第三章牛顿插值

yP )的几何意义 2(x
----- 过三点(x0, y0), (x1 , y1) 与(x2, y2)求一个二次抛物线, 使得该抛物线经过这三点
y
f ( x)
0
x0
x1
x2
x
① 构造插值基函数
有三个插值节点x0,x1,x2,构造三个插值基函数,要求满足:
(a) 基函数为二次多项式 (b) 它们的函数值满足下表 x0 x1 l0(x) l1(x) 1 0 0 1 x2 0 0
其满足Pn(xi) =yi (i=0,1…n)。即n+1个不同的点可以唯
一决定一个n次多项式
方法: ①构造插值基函数
②生成拉格朗日n次多项式
① 构造插值基函数 n+1个插值节点共可构造n+1个插值基函数l0(x),
l1(x) … ln(x) ,每个插值基函数 li(x)要求满足:
(a) li(x) 为n次多项式
(1)
成立,则称 p( x ) 为 f (x) 的插值函数。 f ( x ) 称为被插函数,
,x , ,x [a , b] 称为插值区间, x 0 1 n 称为插值节点 ,
求 p ( x ) 的方法就是插值法。
插值函数p(x)在n+1个互异插值节点xi (i=0,1,…,n ) 处与
f(xi)相等,在其它点 x 就用p(x)的值作为f(x) 的近似值。这一
构造一次插值基函数生成拉格朗日一次多项式数值分析太原科技大学求一个二次抛物线使得该抛物线经过这三点2抛物插值法的几何意义已知函数yfx在点x数值分析太原科技大学构造插值基函数有三个插值节点x数值分析太原科技大学个常数倍二次多项式仅相差一而其已经是一个有因子所以因为基函数构造方法

数值分析牛顿插值法

数值分析牛顿插值法

m fim m!hm
f [x0 , x1 ,
, xk ]
k f0 k!hk
k fk k!hk
华长生制作
19
1.Newton向前(差分)插值公式
如果节点 x0 , x1 , , xn是等距节点 ,即
xk
x0
k h, k
0,1,
,n,h
b
a n
Newton插值基本公式为
n
Nn(x) f0 f [x0 , x1 , , xk ]k (x) k 1
fk fk 1 fk k 0,1, ,n 1 为f (x)在 xk 处的一阶向前差分
fk fk fk1 k 1,2, ,n 为f (x)在 xk 处的一阶向后差分
2 fk fk 1 fk 为f (x)在 xk 处的二阶向前差分
2 fk fk fk 1 为f (x)在 xk 处的二阶向后差分
x1 f ( x1 )
f [ x0 , x1 ] f [x1 , x2 ]
x2 f ( x2 )
f [ x2 , x3 ]
x3 f ( x3 )
f [ x3 , x4 ]
x4 f (x4 )
二阶差商
f [x0 , x1 , x2 ] f [x1 , x2 , x3 ] f [x2 , x3 , x4 ]
若将x xi ,(i 0,1, , n)视为一个节点 ,则
f [x0 , x1 ,
, xk , x]
f [ x0 , x1 ,
, xk ] f [x0 , x1 , xk x
, xk 1 , x]
f [x0 , x1 , , xk 1 , x] f [x0 , x1 , , xk ] f [x0 , x1 , , xk , x]( x xk )

牛顿向前插值公式

牛顿向前插值公式

牛顿向前插值公式牛顿向前插值公式是数值分析中一个挺有意思的工具。

咱先来说说啥是牛顿向前插值公式哈。

简单来讲,它就是一种通过已知的一些数据点,来推测中间或者其他未知点数值的方法。

比如说,咱们知道了几个不同时间点的气温,就可以用这个公式猜猜其他时间的气温大概是多少。

我记得之前有一次带学生们做实验,就是用这个公式来估算物体下落的位置。

当时给了他们几个不同时刻物体下落的高度数据,让他们用牛顿向前插值公式去算某个特定时刻物体大概在什么位置。

这可把孩子们难坏了,一个个抓耳挠腮的。

有的孩子直接被那些复杂的算式给弄晕了,一会儿忘了这个系数,一会儿又算错了那个差值。

但是也有几个聪明的小家伙,慢慢地理清了思路,一步一步地算出来了。

其实牛顿向前插值公式的原理也不太难理解。

它是通过构建一系列的差商,然后把这些差商组合起来形成一个多项式。

这个多项式就能够近似地表示数据之间的关系。

比如说,咱们有一组数据点 (x₀, y₀), (x₁, y₁), (x₂, y₂) ...... 先算出一阶差商,就是 (y₁ - y₀) / (x₁ - x₀) ;然后再算二阶差商,依此类推。

在实际应用中,牛顿向前插值公式可有用啦。

像在金融领域,预测股票价格的走势;在工程中,估计某个零件在不同条件下的性能;在科学研究里,推测实验数据的变化趋势等等。

不过,用这个公式的时候可得小心,数据点的选取很关键。

如果数据本身就不太规律,或者误差比较大,那算出来的结果可能就不太准了。

就像那次实验,有的小组因为数据测量的时候不够精确,导致最后用公式算出来的结果和实际情况相差挺多。

学习牛顿向前插值公式,不能光是死记硬背那些公式和步骤,得真正理解它背后的思想。

多做几道题,多动手算一算,才能真正掌握。

总之,牛顿向前插值公式虽然有点小复杂,但掌握好了,那可是解决很多实际问题的一把好手。

希望同学们在学习的过程中,不要被它吓住,多琢磨琢磨,一定能搞明白的!。

第3讲 牛顿插值公式

第3讲 牛顿插值公式

第8讲 牛顿插值公式§1.4 差商与差分及其性质 1 差商的概念:称10110)()(],[x x x f x f x x f --=为函数f (x )的一阶差商;称21021210],[],[],,[x x x x f x x f x x x f --=为函数f (x )的二阶差商;一般地,称010110],...,[],...,[],...,,[x x x x f x x f x x x f n n n n --=-为函数f (x )的n 阶差商;特别地,定义)(][00x f x f =为函数f (x )关于x o 的零阶差商。

由此可知,高阶差商总是由比它低一阶的的两个差商组合而成。

2(a )n 阶差商可以表示成n +1个函数值01,,,n y y y 的线性组合,即∑-----==+-ki n i i i i i i i i k x x x x x x x x x x x f x x f 011100)())(())(()(],...,[该性质说明:k 阶差商],...,,[10n x x x f 计算是由函数值f (x 0),f (x 1),…f (x k )线性组合而。

如:],,[],,[],,[012201210x x x f x x x f x x x f ==;011100010110)()()()(],[x x x f x x x f x x x f x f x x f -+-=--=))(()())(()())(()()()()()()()()()()()(],[],[],,[120222101120100021221210111000111000201011212021021210x x x x x f x x x x x f x x x x x f x x x x x f x x x f x x x f x x x f x x x f x x x f x x x x x f x f x x x f x f x x x x f x x f x x x f --+--+--=--+------=-+-=------=--=对称性): 差商与节点的顺序无关。

牛顿插值法原理及应用汇总

牛顿插值法原理及应用汇总

牛顿插值法插值法是利用函数f (x)在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f (x)的近似值。

如果这特定函数是多项式,就称它为插值多项式。

当插值节点增减时全部插值基函数均要随之变化,这在实际计算中很不方便。

为了克服这一缺点,提出了牛顿插值。

牛顿插值通过求各阶差商,递推得到的一个公式:f(x)=f[x0]+f[x0,x1](x-x0)+f[x0,x1,x2](x-x0)(x-x1)+...f[x0,...xn](x-x0 )...(x-xn-1)+Rn(x)。

插值函数插值函数的概念及相关性质[1]定义:设连续函数y-f(x) 在区间[a,b]上有定义,已知在n+1个互异的点x0,x1,…xn上取值分别为y0,y1,…yn (设a≤ x1≤x2……≤xn≤b)。

若在函数类中存在以简单函数P(x) ,使得P(xi)=yi,则称P(x) 为f(x)的插值函数.称x1,x2,…xn 为插值节点,称[a,b]为插值区间。

定理:n次代数插值问题的解存在且唯一。

牛顿插值法C程序程序框图#include<stdio.h>void main(){float x[11],y[11][11],xx,temp,newton;int i,j,n;printf("Newton插值:\n请输入要运算的值:x=");scanf("%f",&xx);printf("请输入插值的次数(n<11):n=");scanf("%d",&n);printf("请输入%d组值:\n",n+1);for(i=0;i<n+1;i++){ printf("x%d=",i);scanf("%f",&x[i]);printf("y%d=",i);scanf("%f",&y[0][i]);}for(i=1;i<n+1;i++)for(j=i;j<n+1;j++){ if(i>1)y[i][j]=(y[i-1][j]-y[i-1][j-1])/(x[j]-x[j-i]);elsey[i][j]=(y[i-1][j]-y[i-1][j-1])/(x[j]-x[j-1]);printf("%f\n",y[i][i]);}temp=1;newton=y[0][0];for(i=1;i<n+1;i++){ temp=temp*(xx-x[i-1]);newton=newton+y[i][i]*temp;}printf("求得的结果为:N(%.4f)=%9f\n",xx,newton);牛顿插值法Matlab程序function f = Newton(x,y,x0)syms t;if(length(x) == length(y))n = length(x);c(1:n) = 0.0;elsedisp(&apos;x和y的维数不相等!&apos;);return;endf = y(1);y1 = 0;l = 1;for(i=1:n-1)for(j=i+1:n)y1(j) = (y(j)-y(i))/(x(j)-x(i));endc(i) = y1(i+1);l = l*(t-x(i));f = f + c(i)*l;simplify(f);y = y1;if(i==n-1)if(nargin == 3)f = subs(f,&apos;t&apos;,x0);elsef = collect(f); %将插值多项式展开f = vpa(f, 6);endend牛顿插值法摘要:值法利用函数f (x)在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f (x)的近似值。

牛顿插值

牛顿插值

18
Hermite插值多项式(续1) 插值多项式( ) 插值多项式
N 个条件可以确定 N − 1 阶多项式。 阶多项式。 要求在1个节点 处直到m 要求在 个节点 x0 处直到 0 阶导数都重合的插 值多项式即为Taylor多项式 值多项式即为 多项式
(x0) (x− x0)m0 ϕ(x) = f (x0)+ f ′(x0)(x− x0)+...+ m0! f (m +1) (ξ ) 其余项为 R( x) = f ( x) −ϕ( x) = ( x − x0 )(m +1)
由差商定义可知:高阶差商是两个低一阶差商的差商。 由差商定义可知:高阶差商是两个低一阶差商的差商。
11
差商形式的插值公式
再考虑拉格朗日插值问题: 再考虑拉格朗日插值问题: 问题 求作次数 ≤ 使满足条件, n多项式 pn ( x ),使满足条件,
利用差商其解亦可表达为如下形式: 利用差商其解亦可表达为如下形式:
α 0 ( x),α1 ( x), β 0 ( x), β1 ( x)
α 0 ( x0 ) = 0 α (x ) = 1 0 1 ′ α 0 ( x0 ) = 0 α 0 ( x1 ) = 0 ′
使之满足
α 0 ( x 0 ) = 1 α ( x ) = 0 0 1 ′ α 0 ( x0 ) = 0 α 0 ( x1 ) = 0 ′
12
Newton插值 Newton插值
容易证明牛顿插值多项式满足插值条件。 容易证明牛顿插值多项式满足插值条件。 由插值多项式的唯一性, 由插值多项式的唯一性,得 Ln ( x) = N n ( x) 牛顿插值多项式的误差估计
f ( n +1) (ξ ) ω n ( x) Rn ( x) = f [ x0 , x1 ,⋯ , xn , x]ω n ( x) = (n + 1)!

第三节 牛顿插值多项式

第三节  牛顿插值多项式

第三节 牛顿插值多项式拉格朗日插值的优点是插值多项式特别容易建立,缺点是增加节点时原有多项式不能利 用,必须重新建立,即所有基函数都要重新计算,这就造成计算量的浪费;牛顿(Newton )插值多项式是代数插值的另一种表现形式,当增加节点时它具有所谓的“承袭性”,这 要用到差商的概念。

5.3.1 差商的定义与性质定义 已知函数f(x)的n+1个插值点为),(j i y x ,i y =f(i x ),i=0,1, …,n ,ji j i x x x f x f --)()(称为f(x)在点),(j i y x 的一阶差商,记为f [ji y x ,],即f [j i y x ,]=j i j i x x x f x f --)()( (5.3.1)一阶差商的差商k i k j j i x x x x f x x f ---],[][称为f(x) 在点kj i x x x ,,的二阶差商,记为f [k j i xx x ,,],即f [kj i x x x ,,]=ki k j j i x x x x f x x f ---],[][(5.2.2) 一般地,k-1阶差商的差商kk k x x x x x f x x x f ---021110],...,[],...,,[称为f(x)在点k x x x ,...,,10的k 阶差商,记为f [k x x x ,...,,10],即f [k x x x ,...,,10]=kk k x x x x x f x x x f ---021110],...,[],...,,[ (5.3.3)差商具有以下性质:性质1 n 阶差商可以表示成n+1个函数值)(),...,(),(10n x f x f x f 的线 性组合,即f [k x x x ,...,,10]=∑=+-----ni n i i i i i i i x x x x x x x x x f 0110))...()()...(()( 事实上,由式(1)当n=1时,011100101010)()()()(],[x x x f x x x f x x x f x f x x f -+-=--=当n=2时,))(()())(()())(()())(()()11()())(()())()((1))()((1],[],[],[],[],,[12022210112010012022210120120100122211020111002002211010212110210x x x x x f x x x x x f x x x x x f x x x x x f x x x x x x x f x x x x x f x x x f x x x f x x x x x f x x x f x x x x x x f x x x x f x x x x f x x f x x x f --+--+--=--+----+--=-+--+-+--=-+-=--=一般地有f [k x x x ,...,,10]=∑=+-----ni n i i i i i i i x x x x x x x x x f 0110))...()()...(()( 性质2(对称性) 差商与节点的顺序无关,如],,[],,[],,[],[],[1202012100110x x x f x x x f x x x f x x f x x f === 这一点可以从性质1看出。

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

第8讲 牛顿插值公式§1.4 差商与差分及其性质 1 差商的概念:称10110)()(],[x x x f x f x x f --=为函数f (x )的一阶差商;称21021210],[],[],,[x x x x f x x f x x x f --=为函数f (x )的二阶差商;一般地,称010110],...,[],...,[],...,,[x x x x f x x f x x x f n n n n --=-为函数f (x )的n 阶差商;特别地,定义)(][00x f x f =为函数f (x )关于x o 的零阶差商。

由此可知,高阶差商总是由比它低一阶的的两个差商组合而成。

2(a )n 阶差商可以表示成n +1个函数值01,,,n y y y 的线性组合,即∑-----==+-ki n i i i i i i i i k x x x x x x x x x x x f x x f 011100)())(())(()(],...,[该性质说明:k 阶差商],...,,[10n x x x f 计算是由函数值f (x 0),f (x 1),…f (x k )线性组合而。

如:],,[],,[],,[012201210x x x f x x x f x x x f ==;011100010110)()()()(],[x x x f x x x f x x x f x f x x f -+-=--=))(()())(()())(()()()()()()()()()()()(],[],[],,[120222101120100021221210111000111000201011212021021210x x x x x f x x x x x f x x x x x f x x x x x f x x x f x x x f x x x f x x x f x x x f x x x x x f x f x x x f x f x x x x f x x f x x x f --+--+--=--+------=-+-=------=--=对称性): 差商与节点的顺序无关。

即0110[,][,]f x x f x x =,012102021[,,][,,][,,]f x x x f x x x f x x x ==这一点可以从性质1看出。

3 利用差商表计算差商利用差商的递推定义,可以用递推来计算差商。

4 差分的概念定义设函数y=f (x )在等距节点),,1,0(0n i ih x x i =+=上的函数值f (x i )=f i ,其中,h 为常数称作步长。

称△f i =f i+1-f i ▽f i =f i -f i-1δf i =f (x i +h /2)-f (x i -h /2)=2121-+-i i ff分别为f (x )在i x处以h 为步长的一阶向前差分,一阶向后差分和一阶中心差分。

称符号△、▽、δ分别为向前差分算子,向后差分算子和中心差分算子。

⎪⎪⎩⎪⎪⎨⎧-=∇-∇=∇∆-∆=∆-+-+211-n 211-n n 11-n 1-n n 1-n 11-n n i i i i i i i i i ff f f f f f f f δδδ 在节点等距情况下,差商可用差分表示,设步长i i x x h -=+1,有 i i i i i i i y hx x x f x f x x f ∆=--=+++1)()(),(111i i i i i i i i i i i i y hy y h x x x x f x x f x x x f 221221212121)(21),(),(),,(∆=∆-∆=--=+++++++一般形式(数学归纳法可证)i kk k i i i y h k x x x f ∆=++!1),...,,(1§1.5 牛顿插值公式1. 牛顿插值公式的构造Lagrange 插值虽然易算,但若要增加一个节点时,全部基函数 l i (x ) 都需重新算过。

本节介绍另外一种方法-牛顿插值法,并用它解决上面所述问题。

由线性插值)()(0010101x x x x y y y x N ---+=,令)()(,,01010101100x x a a x N x x y y a y a -+=--== 二次插值能否写成))(()()(1020102x x x x a x x a a x N --+-+=由条件222112002)(,)(,)(y x N y x N y x N ===得120101020220101100,,x x x x y y x x y y a x x y y a y a ------=--== 推广得))...((...))(()()(10102010---++--+-+=n n n x x x x a x x x x a x x a a x N ,其中,n a a a ,,,10 为待定系数。

如何求n a a a ,,,10 ?解: 因为000()()[,]f x f x f x x x x -=-,所以000()()[,]()f x f x f x x x x =+-(0)又001011[,][,][,,]f x x f x x f x x x x x -=-,有001011[,][,][,,]()f x x f x x f x x x x x =+- (1)又010120122[,,][,,][,,,]f x x x f x x x f x x x x x x -=-010120122[,,][,,][,,,]()f x x x f x x x f x x x x x x =+- (2)一般地,nn n n x x x x x f x x x x f x x x x f --=-],...,,[],...,,,[],...,,,[1011010)](,...,,,[],...,,[],...,,,[1010110n n n n x x x x x x f x x x f x x x x f -+=- (n)将式(n)代入式(n-1), ...,式(2)代入式 (1),式(1)代入式 (0), 如此可得:0010()()[,]()f x f x f x x x x =+-01201[,,]()()f x x x x x x x +--+01011[,,,]()()()n n f x x x x x x x x x -+--- 0101[,,,,]()()()n n f x x x x x x x x x x +---尤为注意的是:最后一项中,差商部分含有x ,乃是余项部分,记作()n R x ;而前面n +1项中,差商部分都不含有x ,因而前面n +1项是关于x 的n 次多项式,记作()n N x ,这就是牛顿插值公式。

2 算例例1:当n=1时,0010()()[,]()f x f x f x x x x =+-0101[,,]()()f x x x x x x x +--,其中,10010()()[,]()N x f x f x x x x =+-010001()y y y x x x x -=+--。

这就是牛顿一次插值多项式,也就是点斜式直线方程。

当n=2时,0010()()[,]()f x f x f x x x x =+-01201[,,]()()f x x x x x x x +--012012[,,,]()()()f x x x x x x x x x x +---20010()()[,]()N x f x f x x x x =+-01201[,,]()()f x x x x x x x +--这就是牛顿二次插值多项式。

显然,200()()N x f x =,0121010101()()()()()()f x f x N x f x x x f x x x -=+-=-012202001()()()()()f x f x N x f x x x x x -=+--01122021020112()()()()1()()f x f x f x f x x x x x x x x x x x ⎛⎫--+--- ⎪---⎝⎭2()f x =。

即2()N x 满足二次插值条件。

0()0f x =,01[,]1f x x =,012[,,]4f x x x =,0123[,,,] 1.25f x x x x =-;则牛顿三次插值多项式为3()0(1)4(1)(3)N x x x x =+-+⨯--1.25(1)(3)(4)x x x -⨯---。

1 拉格朗日插值与牛顿插值的比较(1)()n P x 和()n N x 均是n 次多项式, 且均满足插值条件:()()(), 0,1,,n k n k k P x N x f x k n===。

由多项式的唯一性,()()n n P x N x ≡,因而,两个公式的余项是相等的,即(1)01()[,,,]()()(1)!n n n n f f x x x x x x n ξωω+=+(2)当插值多项式从n-1次增加到n 次时,拉格朗日型插值必须重新计算所有的基本插值多项式;而对于牛顿型插值,只需用表格再计算一个n 阶差商,然后加上一项即可。

4 等距牛顿插值公式 插值节点为等距节点:0k x x kh =+,0,1,,k n =,如下图:h h h ... h牛顿插值公式 设等距节点0k x x kh=+,记(),0,1,,k k y f x k n ==.当0[,]n x x x ∈,令0x x th =+,0t n ≤≤. 例如(下图)123x 在x 2,x 3的中点时,0 2.5x x h=+。

将牛顿插值公式中的差商用差分代替,而00()()(),k x x x th x kh t k h -=+-+=-从而,牛顿插值公式在等距插值节点下的形式为:00()n N x y t y =+∆+32000111(1)(2)(1)(1)(1)3!!2!n t t t y t t t n y t t y n +--∆++--+∆-∆余项为(1)(1)11()()()(1)!(1)!n n R x f x f n n n n ξω++==++1()(1)()n h t t t n ξ+-- 这是等距牛顿向前插值公式。

例4: 设()xy f x e ==插值节点为1,1.5,2,2.5,3x =,相应的函数值如下表,求f (2.2)。

此时[x k , x k+1],x =2.2=1+2.4h 故t=2.4,于是2200018.87232(2.2)(1)2!N y t y t t y ==+∆+-∆求3(2.2)N 时,在(.)2N 22后加一项:13(1)(2)03!t t t y--∆ ,12.4(2.41)(2.42)0.742100.166236=⨯⨯-⨯-⨯=,所以32(2.2)(2.2)0.166239.03855N N =+=求4(2.2)N 时,在3(2.2)N 后再加一项:401(1)(2)(3)4!t t t t y ---∆ 12.4(2.41)(2.42)(2.43)0.4814624=⨯⨯-⨯-⨯-⨯0.01618=-,所以43(2.2)(2.2)0.016189.02237N N =-=2320.15269 , 0.01354 , 0.00264R R R ==-=。

相关文档
最新文档