MATLAB和Python数据插补

拉格朗日插值

拉格朗日插值多项式的构造

在拉格朗日插值中,构造了 n + 1 n+1 n+1个多项式 L 0 ( x ) , L 1 ( x ) , ⋯   , L n ( x ) \boldsymbol{L}_0\left( \boldsymbol{x} \right) ,\boldsymbol{L}_1\left( \boldsymbol{x} \right) ,\cdots ,\boldsymbol{L}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) L0(x),L1(x),,Ln(x) 。 每个多项式 L j ( x ) , ( j = 0 , ⋯   , n ) \boldsymbol{L}_{\boldsymbol{j}}\left( \boldsymbol{x} \right) ,\left( \boldsymbol{j}=0,\cdots ,\boldsymbol{n} \right) Lj(x),(j=0,,n) 的次数为 n n n,使得

L j ( x j ) = { 1 , i = j 0 , i ≠ j \boldsymbol{L}_{\boldsymbol{j}}\left( \boldsymbol{x}_{\boldsymbol{j}} \right) =\begin{cases} 1,\boldsymbol{i}=\boldsymbol{j}\\ 0,\boldsymbol{i}\ne \boldsymbol{j}\\\end{cases} Lj(xj)={1,i=j0,i=j

然后,插值多项式 P n ( x ) \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) Pn(x) 由以下公式定义:

P n ( x ) = L 0 ( x ) y 0 + L 1 ( x ) y 1 + ⋯ + L n ( x ) y n = ∑ i = 0 n L i ( x ) y i \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) =\boldsymbol{L}_0\left( \boldsymbol{x} \right) \boldsymbol{y}_0+\boldsymbol{L}_1\left( \boldsymbol{x} \right) \boldsymbol{y}_1+\cdots +\boldsymbol{L}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) \boldsymbol{y}_{\boldsymbol{n}}=\sum_{\boldsymbol{i}=0}^{\boldsymbol{n}}{\boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) \boldsymbol{y}_{\boldsymbol{i}}} Pn(x)=L0(x)y0+L1(x)y1++Ln(x)yn=i=0nLi(x)yi

多项式 P n ( x ) \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) Pn(x) 的次数为n,因为对于所有 i = 0 , ⋯   , n \boldsymbol{i}=0,\cdots ,\boldsymbol{n} i=0,,n,每个 L i ( x ) \boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) Li(x) 都是n次多项式。 此外, P n ( x ) \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) Pn(x) 满足:

P n ( x j ) = ∑ i = 0 n L i ( x j ) y i = L j ( x j ) y j = 1 ⋅ y j = y j , j = 0 , ⋯   , n \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x}_{\boldsymbol{j}} \right) =\sum_{\boldsymbol{i}=0}^{\boldsymbol{n}}{\boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x}_{\boldsymbol{j}} \right) \boldsymbol{y}_{\boldsymbol{i}}=\boldsymbol{L}_{\boldsymbol{j}}\left( \boldsymbol{x}_{\boldsymbol{j}} \right)}\boldsymbol{y}_{\boldsymbol{j}}=1\cdot \boldsymbol{y}_{\boldsymbol{j}}=\boldsymbol{y}_{\boldsymbol{j}},\boldsymbol{j}=0,\cdots ,\boldsymbol{n} Pn(xj)=i=0nLi(xj)yi=Lj(xj)yj=1yj=yj,j=0,,n

这证明 P n ( x ) \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) Pn(x) 内插给定数据。

为了构造 n + 1 n+1 n+1个多项式 L i ( x ) \boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) Li(x) i = 0 , ⋯   , n \boldsymbol{i}=0,\cdots ,\boldsymbol{n} i=0,,n,重要的是要注意

ψ ( x ) = ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n ) \boldsymbol{\psi }\left( \boldsymbol{x} \right) =\left( \boldsymbol{x}-\boldsymbol{x}_0 \right) \left( \boldsymbol{x}-\boldsymbol{x}_1 \right) \cdots \left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{n}} \right) ψ(x)=(xx0)(xx1)(xxn)

x 0 , x 1 , ⋯   , x n \boldsymbol{x}_0,\boldsymbol{x}_1,\cdots ,\boldsymbol{x}_{\boldsymbol{n}} x0,x1,,xn,如果 L ~ ( x ) \boldsymbol{\tilde{L}}\left( \boldsymbol{x} \right) L~(x) 定义为

L ~ ( x ) = ψ ( x ) x − x i = ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x i − 1 ) ( x − x i + 1 ) ⋯ ( x − x n ) \boldsymbol{\tilde{L}}\left( \boldsymbol{x} \right) =\frac{\boldsymbol{\psi }\left( \boldsymbol{x} \right)}{\boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{i}}}=\left( \boldsymbol{x}-\boldsymbol{x}_0 \right) \left( \boldsymbol{x}-\boldsymbol{x}_1 \right) \cdots \left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{i}-1} \right) \left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{i}+1} \right) \cdots \left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{n}} \right) L~(x)=xxiψ(x)=(xx0)(xx1)(xxi1)(xxi+1)(xxn)

x i x_i xi不是 L ~ ( x ) \boldsymbol{\tilde{L}}\left( \boldsymbol{x} \right) L~(x) 的根。

现在,可以使用以下公式从 L ~ ( x ) \boldsymbol{\tilde{L}}\left( \boldsymbol{x} \right) L~(x) 获得 L i ( x ) \boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) Li(x)

L i ( x ) = L ~ i ( x ) L ~ i ( x i ) = ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x i − 1 ) ( x − x i + 1 ) ⋯ ( x − x n ) ( x i − x 0 ) ( x i − x 1 ) ⋯ ( x i − x i − 1 ) ( x i − x i + 1 ) ⋯ ( x i − x n ) \boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) =\frac{\boldsymbol{\tilde{L}}_{\boldsymbol{i}}\left( \boldsymbol{x} \right)}{\boldsymbol{\tilde{L}}_{\boldsymbol{i}}\left( \boldsymbol{x}_{\boldsymbol{i}} \right)}=\frac{\left( \boldsymbol{x}-\boldsymbol{x}_0 \right) \left( \boldsymbol{x}-\boldsymbol{x}_1 \right) \cdots \left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{i}-1} \right) \left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{i}+1} \right) \cdots \left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{n}} \right)}{\left( \boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_0 \right) \left( \boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_1 \right) \cdots \left( \boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_{\boldsymbol{i}-1} \right) \left( \boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_{\boldsymbol{i}+1} \right) \cdots \left( \boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_{\boldsymbol{n}} \right)} Li(x)=L~i(xi)L~i(x)=(xix0)(xix1)(xixi1)(xixi+1)(xixn)(xx0)(xx1)(xxi1)(xxi+1)(xxn)

多项式 L i ( x ) \boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) Li(x) 也可以写成:

L i ( x ) = ∏ j = 0 n x − x j x i − x j \boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) =\prod_{\boldsymbol{j}=0}^{\boldsymbol{n}}{\frac{\boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{j}}}{\boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_{\boldsymbol{j}}}} Li(x)=j=0nxixjxxj

拉格朗日多项式 P n ( x ) \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) Pn(x) 可以写成:

P n ( x ) = ∑ i = 0 n ∏ j = 0 n x − x j x i − x j y i \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) =\sum_{\boldsymbol{i}=0}^{\boldsymbol{n}}{\prod_{\boldsymbol{j}=0}^{\boldsymbol{n}}{\frac{\boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{j}}}{\boldsymbol{x}_{\boldsymbol{i}}-\boldsymbol{x}_{\boldsymbol{j}}}\boldsymbol{y}_{\boldsymbol{i}}}} Pn(x)=i=0nj=0nxixjxxjyi

下面的MATLAB函数LagrangeInterp.m使用给定的数据点是两个向量x和y,每个向量的长度为n,构造拉格朗日插值多项式 P n ( x ) \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) Pn(x) 。 它在 x = t x=t x=t处评估 P n ( x ) \boldsymbol{P}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) Pn(x) 并返回插值结果。

function p = LagrangeInterp(t, x, y)
 n = length(x) ;
 p = 0 ;
 for i = 1 : n
 s = 1 ;
 for j = 1 : n
 if j , i
 s = s*(t-x(j))/(x(i)-x(j)) ;
 else
 continue
 end
 end
 p = p + s*y(i) ;
 end

执行上面的MATLAB代码,我们获得:

>> x = 0:pi/11:pi ;
>> y = sin(x) ;
>> p = LagrangeInterp(pi/6, x, y)
p =
0.499999999914085

Python脚本LagInterp.py使用以下代码实现拉格朗日插值多项式:


执行该代码,显示以下结果:

runfile(’D:/PyFiles/LagInterp.py’, wdir=’D:/PyFiles’)
0.4999999997868132

拉格朗日插值多项式的唯一性

在本节中,将使用代数的基本定理证明拉格朗日插值多项式是唯一的。 它指出,任何具有复数系数的n阶的多项式最多具有n个零。 因此,如果n阶的多项式 p ( x ) \boldsymbol{p}\left( \boldsymbol{x} \right) p(x) 的根数大于n,则它必须是零多项式 p ( x ) = 0 , ∀ x ∈ C \boldsymbol{p}\left( \boldsymbol{x} \right) =0,\forall _{\boldsymbol{x}}\in \mathbb{C} p(x)=0,xC

为了证明拉格朗日插值多项式的唯一性,假设 p n ( x ) \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) pn(x) q n ( x ) \boldsymbol{q}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) qn(x) 是两个n阶多项式,它们对给定数据 ( x i , y i ) , i = 0 , ⋯   , n \left( \boldsymbol{x}_{\boldsymbol{i}},\boldsymbol{y}_{\boldsymbol{i}} \right) ,\boldsymbol{i}=0,\cdots ,\boldsymbol{n} (xi,yi),i=0,,n进行插值。 然后,对于所有 i = 0 , ⋯   , n \boldsymbol{i}=0,\cdots ,\boldsymbol{n} i=0,,n p n ( x i ) = q n ( x i ) = y i \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x}_{\boldsymbol{i}} \right) =\boldsymbol{q}_{\boldsymbol{n}}\left( \boldsymbol{x}_{\boldsymbol{i}} \right) =\boldsymbol{y}_{\boldsymbol{i}} pn(xi)=qn(xi)=yi。对于所有 x ∈ [ x 0 , x n ] \boldsymbol{x}\in \left[ \boldsymbol{x}_0,\boldsymbol{x}_{\boldsymbol{n}} \right] x[x0,xn] ,令 r ( x ) = p n ( x ) − q n ( x ) \boldsymbol{r}\left( \boldsymbol{x} \right) =\boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) -\boldsymbol{q}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) r(x)=pn(x)qn(x) 。由于 p n ( x ) \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) pn(x) q n ( x ) \boldsymbol{q}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) qn(x) 都均为n阶,因此 r ( x ) \boldsymbol{r}\left( \boldsymbol{x} \right) r(x) 也是。现在,对于 i = 0 , ⋯   , n \boldsymbol{i}=0,\cdots ,\boldsymbol{n} i=0,,n r ( x i ) = p n ( x i ) − q n ( x i ) = 0 \boldsymbol{r}\left( \boldsymbol{x}_{\boldsymbol{i}} \right) =\boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x}_{\boldsymbol{i}} \right) -\boldsymbol{q}_{\boldsymbol{n}}\left( \boldsymbol{x}_{\boldsymbol{i}} \right) =0 r(xi)=pn(xi)qn(xi)=0。 即 r ( x ) \boldsymbol{r}\left( \boldsymbol{x} \right) r(x) [ x 0 , x n ] \left[ \boldsymbol{x}_0,\boldsymbol{x}_{\boldsymbol{n}} \right] [x0,xn] 中具有 n + 1 n+1 n+1个根,而其阶为 n n n。 根据代数的基本定理,除非 r ( x ) \boldsymbol{r}\left( \boldsymbol{x} \right) r(x) [ x 0 , x n ] \left[ \boldsymbol{x}_0,\boldsymbol{x}_{\boldsymbol{n}} \right] [x0,xn] 中的零多项式,即 r ( x ) = 0 , x ∈ [ x 0 , x 1 ] \boldsymbol{r}\left( \boldsymbol{x} \right) =0,\boldsymbol{x}\in \left[ \boldsymbol{x}_0,\boldsymbol{x}_1 \right] r(x)=0,x[x0,x1] ,否则这不可能发生。 这证明对于 x ∈ [ x 0 , x 1 ] , p n ( x ) = q n ( x ) \boldsymbol{x}\in \left[ \boldsymbol{x}_0,\boldsymbol{x}_1 \right] ,\boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) =\boldsymbol{q}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) x[x0,x1],pn(x)=qn(x)

拉格朗日插值误差

给定一个函数 f : [ a , b ] → R \boldsymbol{f}:\left[ \boldsymbol{a},\boldsymbol{b} \right] \rightarrow \mathbb{R} f:[a,b]R [ a , b ] \left[ \boldsymbol{a},\boldsymbol{b} \right] [a,b] 中有 n + 1 n+1 n+1个点 x 0 , ⋯   , x n \boldsymbol{x}_0,\cdots ,\boldsymbol{x}_{\boldsymbol{n}} x0,,xn。 令 p n ( x ) \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) pn(x) 是一个 n n n阶多项式,它对数据 ( x 0 , f ( x 0 ) ) , ⋯   , ( x n , f ( x n ) ) \left( \boldsymbol{x}_0,\boldsymbol{f}\left( \boldsymbol{x}_0 \right) \right) ,\cdots ,\left( \boldsymbol{x}_{\boldsymbol{n}},\boldsymbol{f}\left( \boldsymbol{x}_{\boldsymbol{n}} \right) \right) (x0,f(x0)),,(xn,f(xn)) 进行插值。 对于所有 j = 0 , ⋯   , n \boldsymbol{j}=0,\cdots ,\boldsymbol{n} j=0,,n p n ( x j ) = f ( x j ) \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x}_{\boldsymbol{j}} \right) =\boldsymbol{f}\left( \boldsymbol{x}_{\boldsymbol{j}} \right) pn(xj)=f(xj)

根据拉格朗日插值, p n ( x ) \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) pn(x) 由下式给出:

p n ( x ) = ∑ i = 0 n L i ( x ) f ( x i ) \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) =\sum_{\boldsymbol{i}=0}^{\boldsymbol{n}}{\boldsymbol{L}_{\boldsymbol{i}}\left( \boldsymbol{x} \right) \boldsymbol{f}\left( \boldsymbol{x}_{\boldsymbol{i}} \right)} pn(x)=i=0nLi(x)f(xi)

通过以下方式定义插值误差:

E n ( x ) = f ( x ) − p n ( x ) , x ∈ [ a , b ] \boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) =\boldsymbol{f}\left( \boldsymbol{x} \right) -\boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) ,\boldsymbol{x}\in \left[ \boldsymbol{a},\boldsymbol{b} \right] En(x)=f(x)pn(x),x[a,b]

假设 f f f是连续可微的,将推导出函数 E n ( x ) \boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) En(x) 的公式。

以下定理给出了拉格朗日插值的估计。

定理,设 x 0 , x 1 , ⋯   , x n \boldsymbol{x}_0,\boldsymbol{x}_1,\cdots ,\boldsymbol{x}_{\boldsymbol{n}} x0,x1,,xn n + 1 n+1 n+1个不同的值, t t t为任何实值。 令 a = min ⁡ { x 0 , ⋯   , x n } \boldsymbol{a}=\min \left\{ \boldsymbol{x}_0,\cdots ,\boldsymbol{x}_{\boldsymbol{n}} \right\} a=min{x0,,xn} b = max ⁡ { x 0 , ⋯   , x n } \boldsymbol{b}=\max \left\{ \boldsymbol{x}_0,\cdots ,\boldsymbol{x}_{\boldsymbol{n}} \right\} b=max{x0,,xn} 。 令 f f f [ a , b ] [a,b] [a,b]上的实值函数,可微分 n + 1 n+1 n+1次。 令 p n ( x ) \boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) pn(x) 为插值数据 ( x 0 , f ( x 0 ) ) , ⋯   , ( x n , f ( x n ) ) \left( \boldsymbol{x}_0,\boldsymbol{f}\left( \boldsymbol{x}_0 \right) \right) ,\cdots ,\left( \boldsymbol{x}_{\boldsymbol{n}},\boldsymbol{f}\left( \boldsymbol{x}_{\boldsymbol{n}} \right) \right) (x0,f(x0)),,(xn,f(xn)) 的拉格朗日多项式。 然后,存在 ξ ∈ [ a , b ] \boldsymbol{\xi }\in \left[ \boldsymbol{a},\boldsymbol{b} \right] ξ[a,b] 使得

E n ( x ) = f ( x ) − p n ( x ) = ψ ( x ) ( n + 1 ) ! f ( n + 1 ) ( ξ ) \boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) =\boldsymbol{f}\left( \boldsymbol{x} \right) -\boldsymbol{p}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) =\frac{\boldsymbol{\psi }\left( \boldsymbol{x} \right)}{\left( \boldsymbol{n}+1 \right) !}\boldsymbol{f}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{\xi } \right) En(x)=f(x)pn(x)=(n+1)!ψ(x)f(n+1)(ξ)

证明:

显然,对于 x = x i , ∀ i = 0 , ⋯   , n \boldsymbol{x}=\boldsymbol{x}_{\boldsymbol{i}},\forall _{\boldsymbol{i}}=0,\cdots ,\boldsymbol{n} x=xi,i=0,,n,结果为真。 假设当 x ≠ x i \boldsymbol{x}\ne \boldsymbol{x}_{\boldsymbol{i}} x=xi时,结果为真。 固定值 t ∈ [ a , b ] \boldsymbol{t}\in \left[ \boldsymbol{a},\boldsymbol{b} \right] t[a,b] 并定义为:

G ( x ) = ψ ( x ) ψ ( t ) E n ( t ) , x ∈ [ a , b ] \boldsymbol{G}\left( \boldsymbol{x} \right) =\frac{\boldsymbol{\psi }\left( \boldsymbol{x} \right)}{\boldsymbol{\psi }\left( \boldsymbol{t} \right)}\boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{t} \right) ,\boldsymbol{x}\in \left[ \boldsymbol{a},\boldsymbol{b} \right] G(x)=ψ(t)ψ(x)En(t),x[a,b]

其中 ψ ( x ) = ∏ j = 0 n ( x − x j ) \boldsymbol{\psi }\left( \boldsymbol{x} \right) =\prod\nolimits_{\boldsymbol{j}=0}^{\boldsymbol{n}}{\left( \boldsymbol{x}-\boldsymbol{x}_{\boldsymbol{j}} \right)} ψ(x)=j=0n(xxj)

由于 ψ ( x ) \boldsymbol{\psi }\left( \boldsymbol{x} \right) ψ(x) E n ( x ) \boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) En(x) 都存在前 n + 1 n+1 n+1个导数,所以 G ( x ) G(x) G(x)也是如此。因此, G ( x ) G(x) G(x) [ a , b ] [a,b] [a,b]中具有 n + 2 n+2 n+2个不同的根。 根据中间值定理, G ′ ( x ) \boldsymbol{G}^{\prime}\left( \boldsymbol{x} \right) G(x) ( a , b ) \left( \boldsymbol{a},\boldsymbol{b} \right) (a,b) 中具有 n + 1 n+1 n+1个不同的根,而 G ′ ′ ( x ) \boldsymbol{G}^{\prime\prime}\left( \boldsymbol{x} \right) G(x) ( a , b ) \left( \boldsymbol{a},\boldsymbol{b} \right) (a,b) 中具有n个不同的根。通过数学归纳法, G ( k ) \boldsymbol{G}^{\left( \boldsymbol{k} \right)} G(k) ( a , b ) \left( \boldsymbol{a},\boldsymbol{b} \right) (a,b) 中具有 n − k + 2 \boldsymbol{n}-\boldsymbol{k}+2 nk+2个不同的根。 因此, G ( n + 1 ) \boldsymbol{G}^{\left( \boldsymbol{n}+1 \right)} G(n+1) ( a , b ) \left( \boldsymbol{a},\boldsymbol{b} \right) (a,b) 中至少有一个根。 令 ξ \boldsymbol{\xi } ξ ( a , b ) \left( \boldsymbol{a},\boldsymbol{b} \right) (a,b) G ( n + 1 ) \boldsymbol{G}^{\left( \boldsymbol{n}+1 \right)} G(n+1)的根,即 G ( n + 1 ) ( ξ ) = 0 \boldsymbol{G}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{\xi } \right) =0 G(n+1)(ξ)=0

根据 E n ( x ) \boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{x} \right) En(x) ψ ( x ) \boldsymbol{\psi }\left( \boldsymbol{x} \right) ψ(x) 的定义, E n ( n + 1 ) ( x ) = f ( n + 1 ) ( x ) \boldsymbol{E}_{\boldsymbol{n}}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{x} \right) =\boldsymbol{f}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{x} \right) En(n+1)(x)=f(n+1)(x) ψ ( n + 1 ) = ( n + 1 ) ! \boldsymbol{\psi }^{\left( \boldsymbol{n}+1 \right)}=\left( \boldsymbol{n}+1 \right) ! ψ(n+1)=(n+1)!。 于是,

G ( n + 1 ) ( x ) = f ( n + 1 ) ( x ) − ( n + 1 ) ! ψ ( t ) E n ( t ) \boldsymbol{G}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{x} \right) =\boldsymbol{f}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{x} \right) -\frac{\left( \boldsymbol{n}+1 \right) !}{\boldsymbol{\psi }\left( \boldsymbol{t} \right)}\boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{t} \right) G(n+1)(x)=f(n+1)(x)ψ(t)(n+1)!En(t)

x = ξ \boldsymbol{x}=\boldsymbol{\xi } x=ξ

G ( n + 1 ) ( ξ ) = f ( n + 1 ) ( ξ ) − ( n + 1 ) ! ψ ( t ) E n ( t ) = 0 \boldsymbol{G}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{\xi } \right) =\boldsymbol{f}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{\xi } \right) -\frac{\left( \boldsymbol{n}+1 \right) !}{\boldsymbol{\psi }\left( \boldsymbol{t} \right)}\boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{t} \right) =0 G(n+1)(ξ)=f(n+1)(ξ)ψ(t)(n+1)!En(t)=0

导出

E n ( t ) = ψ ( t ) ( n + 1 ) f ( n + 1 ) ( ξ ) \boldsymbol{E}_{\boldsymbol{n}}\left( \boldsymbol{t} \right) =\frac{\boldsymbol{\psi }\left( \boldsymbol{t} \right)}{\left( \boldsymbol{n}+1 \right)}\boldsymbol{f}^{\left( \boldsymbol{n}+1 \right)}\left( \boldsymbol{\xi } \right) En(t)=(n+1)ψ(t)f(n+1)(ξ)

牛顿插值

MATLAB插值工具

Python数据插值

详情请参考 - 亚图跨际

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值