【数值分析】Hermite插值

2024-01-05 01:12
文章标签 分析 插值 数值 hermite

本文主要是介绍【数值分析】Hermite插值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

4. Hermite插值

理论和应用中提出的某些插值问题,要求插值函数 p ( x ) {p(x)} p(x) 具有一定的光滑度,即在插值节点处满足一定的导数条件,这类插值问题称为Hermite插值问题。题目大多以三次Hermite插值为主。三次Hermite插值需要四个条件,二次Hermite插值需要三个条件,分类如下:
在这里插入图片描述

4.1 待定系数法求Hermite插值

Hermite插值我们一定会知道给定点的函数值,和某些点的导数值。由多项式插值得到的插值函数是唯一的,我们可以先用已知点构造拉格朗日或牛顿插值,得到一部分插值多项式,再根据导数值往插值多项式加入待定系数项,并代入导数值求解。这种方法比后两种快很多。

[!example]-
已知
x ∣ ∣ 0 ∣ 1 ∣ 2 ∣ = = = = = = = = f ( x ) ∣ ∣ 5 ∣ 3 ∣ 9 ∣ − − − − − − − − f ′ ( x ) ∣ ∣ − 4 ∣ 0 ∣ ∣ \begin{array}{cccccc} x&||& 0 &|& 1 &|& 2 &| \\=&=&=&=&=&=&=&=\\ f(x)&||& 5 &|& 3 &|& 9 &| \\ -&-&-&-&-&-&-&- \\ f'(x) &||& -4 &|&0 &|& &| \\ \end{array} x=f(x)f(x)∣∣=∣∣∣∣0=54=1=30=2=9=
用已知的五个条件求四次Hermite插值多项式。
解:先用三个点的函数值求拉格朗日插值多项式
L ( x ) = 5 ( x − 1 ) ( x − 2 ) ( 0 − 1 ) ( 0 − 2 ) + 3 ( x − 0 ) ( x − 2 ) ( 1 − 0 ) ( 1 − 2 ) + 9 ( x − 0 ) ( x − 1 ) ( 2 − 0 ) ( 2 − 1 ) = 4 x 2 − 6 x + 5 \begin{align*} L(x)=&5 \frac{(x-1)(x-2)}{(0-1)(0-2)}+3 \frac{(x-0)(x-2)}{(1-0)(1-2)}+9 \frac{(x-0)(x-1)}{(2-0)(2-1)} \\ \\ =&4x^2-6x+5 \end{align*} L(x)==5(01)(02)(x1)(x2)+3(10)(12)(x0)(x2)+9(20)(21)(x0)(x1)4x26x+5

H ( x ) = L ( x ) + ( a x + b ) ( x − 0 ) ( x − 1 ) ( x − 2 ) H ′ ( x ) = 8 x − 6 + 4 a x 3 + ( 3 b − 9 a ) x 2 + ( 4 a − 6 b ) x + 2 b H ′ ( 0 ) = − 6 + 2 b = − 4 H ′ ( 1 ) = 2 + 4 a + 3 b − 9 a + 4 a − 6 b + 2 b = 2 − a − b = 0 \begin{align*} H(x)=&L(x)+(ax+b)(x-0)(x-1)(x-2)\\ \\ H'(x)=&8x-6+4ax^3+(3b-9a)x^2+(4a-6b)x+2b \\ \\ H'(0)=&-6+2b=-4 \\ \\ H'(1)=&2+4a+3b-9a+4a-6b+2b=2-a-b=0 \end{align*} H(x)=H(x)=H(0)=H(1)=L(x)+(ax+b)(x0)(x1)(x2)8x6+4ax3+(3b9a)x2+(4a6b)x+2b6+2b=42+4a+3b9a+4a6b+2b=2ab=0
∴ a = 1 , b = 1 \therefore a=1 \,\,,\,\, b=1 a=1,b=1
H ( x ) = x 4 − 2 x 3 + 3 x 2 − 4 x + 5 H(x)=x^4-2x^3+3x^2-4x+5 H(x)=x42x3+3x24x+5

4.2 两点三次Hermite插值

确定三次插值多项式 H 3 ( x ) {H_3(x)} H3(x) 使满足:
H 3 ( x 0 ) = f ( x 0 ) = y 0 , H 3 ( x 1 ) = f ( x 1 ) = y 1 H 3 ′ ( x 0 ) = f ′ ( x 0 ) = y 0 ′ , H 3 ′ ( x 1 ) = f ′ ( x 1 ) = y 1 ′ \begin{align*} H_3(x_0)=f(x_0)=y_0 \,\,,\,\, H_3(x_1)=f(x_1)=y_1 \\ \\ H_3'(x_0)=f'(x_0)=y_0' \,\,,\,\, H_3'(x_1)=f'(x_1)=y_1' \end{align*} H3(x0)=f(x0)=y0,H3(x1)=f(x1)=y1H3(x0)=f(x0)=y0,H3(x1)=f(x1)=y1
方法:基函数法,基函数为三次多项式。
步骤:

  1. H 3 ( x ) {H_3(x)} H3(x) H 3 ′ ( x ) {H_3'(x)} H3(x) 的表达式
    H 3 ( X ) = ϕ 0 ( x ) y 0 + ϕ 1 ( x ) y 1 + ψ 0 ( x ) y 1 ′ + ψ 1 ( x ) y 1 ′ (1) H_3(X)= \phi_0(x)y_0+\phi_1(x)y_1+\psi_0(x)y_1'+\psi_1(x)y_1' \tag{1} H3(X)=ϕ0(x)y0+ϕ1(x)y1+ψ0(x)y1+ψ1(x)y1(1)
    H 3 ′ ( X ) = ϕ 0 ′ ( x ) y 0 + ϕ 1 ′ ( x ) y 1 + ψ 0 ′ ( x ) y 1 ′ + ψ 1 ′ ( x ) y 1 ′ (2) H_3'(X)= \phi_0'(x)y_0+\phi_1'(x)y_1+\psi_0'(x)y_1'+\psi_1'(x)y_1' \tag{2} H3(X)=ϕ0(x)y0+ϕ1(x)y1+ψ0(x)y1+ψ1(x)y1(2)
  2. 根据表达式列表
    将 x 0 代入 ( 1 ) 将 x 1 代入 ( 1 ) 将 x 0 代入 ( 2 ) 将 x 1 代入 ( 2 ) ϕ 0 ( x 0 ) = 1 ϕ 0 ( x 1 ) = 0 ϕ 0 ′ ( x 0 ) = 0 ϕ 0 ′ ( x 1 ) = 0 ϕ 1 ( x 0 ) = 0 ϕ 1 ( x 1 ) = 1 ϕ 1 ′ ( x 0 ) = 0 ϕ 1 ′ ( x 1 ) = 0 ψ 0 ( x 0 ) = 0 ψ 0 ( x 1 ) = 0 ψ 0 ′ ( x 0 ) = 1 ψ 0 ′ ( x 1 ) = 0 ψ 1 ( x 0 ) = 0 ψ 1 ( x 1 ) = 0 ψ 1 ′ ( x 0 ) = 0 ψ 1 ′ ( x 1 ) = 1 \begin{array}{cccccc} 将 x_0 代入(1) & 将 x_1 代入(1) & 将 x_0 代入(2) & 将 x_1 代入(2) \\ \\ \phi_0(x_0)=1 & \phi_0(x_1)=0 & \phi_0'(x_0)=0 & \phi_0'(x_1)=0 \\ \\ \phi_1(x_0)=0 & \phi_1(x_1)=1 & \phi_1'(x_0)=0 & \phi_1'(x_1)=0 \\ \\ \psi_0(x_0)=0 & \psi_0(x_1)=0 & \psi_0'(x_0)=1 & \psi_0'(x_1)=0 \\ \\ \psi_1(x_0)=0 & \psi_1(x_1)=0 & \psi_1'(x_0)=0 & \psi_1'(x_1)=1 \\ \\ \end{array} x0代入(1)ϕ0(x0)=1ϕ1(x0)=0ψ0(x0)=0ψ1(x0)=0x1代入(1)ϕ0(x1)=0ϕ1(x1)=1ψ0(x1)=0ψ1(x1)=0x0代入(2)ϕ0(x0)=0ϕ1(x0)=0ψ0(x0)=1ψ1(x0)=0x1代入(2)ϕ0(x1)=0ϕ1(x1)=0ψ0(x1)=0ψ1(x1)=1
  3. 求基函数
    ϕ 0 {\phi_0} ϕ0 来说,有一个二重零点 x 1 {x_1} x1 ,再设一个零点,有
    ϕ 0 ( x ) = ( x − x 1 ) 2 ( a x + b ) , ( 代入 ϕ 0 ( x 0 ) = 1 , ϕ 0 ′ ( x 0 ) = 0 求 a , b ) \phi_0(x)=(x-x_1)^2(ax+b) \,\,,\,\, (代入\, \phi_0(x_0)=1,\phi_0'(x_0)=0\,求\,a,b) ϕ0(x)=(xx1)2(ax+b),(代入ϕ0(x0)=1,ϕ0(x0)=0a,b)
    ϕ 1 {\phi_1} ϕ1 来说,有一个二重零点 x 0 {x_0} x0 ,再设一个零点,有
    ϕ 1 ( x ) = ( x − x 0 ) 2 ( a x + b ) , ( 代入 ϕ 1 ( x 1 ) = 1 , ϕ 1 ′ ( x 1 ) = 0 求 a , b ) \phi_1(x)=(x-x_0)^2(ax+b) \,\,,\,\, (代入\, \phi_1(x_1)=1,\phi_1 '(x_1)=0\,求\,a,b) ϕ1(x)=(xx0)2(ax+b),(代入ϕ1(x1)=1,ϕ1(x1)=0a,b)
    ψ 0 {\psi_0} ψ0 来说,有一个一重零点 x 0 {x_0} x0 ,有一个二重零点 x 1 {x_1} x1
    ψ 0 ( x ) = c ( x − x 0 ) ( x − x 1 ) 2 , ( 代入 ψ 0 ′ ( x 0 ) = 1 求出 c ) \psi_0(x)=c(x-x_0)(x-x_1)^2 \,\,,\,\, (代入 \, \psi_0'(x_0)=1\,求出\,c) ψ0(x)=c(xx0)(xx1)2,(代入ψ0(x0)=1求出c)
    ψ 1 {\psi_1} ψ1 来说,有一个一重零点 x 1 {x_1} x1 ,有一个二重零点 x 0 {x_0} x0
    ψ 1 ( x ) = c ( x − x 1 ) ( x − x 0 ) 2 , ( 代入 ψ 1 ′ ( x 1 ) = 1 求出 c ) \psi_1(x)=c(x-x_1)(x-x_0)^2 \,\,,\,\, (代入 \, \psi_1'(x_1)=1\,求出\,c) ψ1(x)=c(xx1)(xx0)2,(代入ψ1(x1)=1求出c)
    还需要知道基函数的导数形式以方便求解,若
    ϕ ( x ) = ( x − x i ) 2 ( a x + b ) = 1 \phi(x)=(x-x_i)^2(ax+b)=1 ϕ(x)=(xxi)2(ax+b)=1
    ϕ ′ ( x ) = 2 ( x − x i ) ( a x + b ) + a ( x − x i ) 2 = 0 \begin{align*} \phi'(x)=& 2(x-x_i)(ax+b)+a(x-x_i)^2=0 \end{align*} ϕ(x)=2(xxi)(ax+b)+a(xxi)2=0
    解得
    a = − 2 ( x − x i ) 3 b = ( 3 x − x i ) ( x − x i ) 3 \begin{align*} a= &-\frac{2}{(x-x_i)^3} \\ \\ b = & \frac{(3x-x_i)}{(x-x_i)^3} \end{align*} a=b=(xxi)32(xxi)3(3xxi)

    ψ i ( x ) = c ( x − x i ) ( x − x j ) 2 \psi_i(x)=c(x-x_i)(x-x_j)^2 ψi(x)=c(xxi)(xxj)2
    ψ i ′ ( x ) = c ( x − x j ) 2 + 2 c ( x − x j ) ( x − x i ) = 1 \psi_i'(x)=c(x-x_j)^2+2c(x-x_j)(x-x_i)=1 ψi(x)=c(xxj)2+2c(xxj)(xxi)=1
    解得
    c = 1 ( x − x j ) 2 + 2 ( x − x i ) ( x − x j ) ∣ x = x i = 1 ( x i − x j ) 2 c= \frac{1}{(x-x_j)^2+2(x-x_i)(x-x_j)}\Bigg|_{x=x_i}=\frac1{(x_i-x_j)^2} c=(xxj)2+2(xxi)(xxj)1 x=xi=(xixj)21
    将基函数代入式(1)得到插值多项式。

[!example]-
f ( x ) = x 4 + 2 x 3 + 5 {f(x)=x^4+2x^3+5} f(x)=x4+2x3+5 。对节点 x 0 = − 3 {x_0=-3} x0=3 x 1 = − 1 {x_1=-1} x1=1 ,求在区间 [ − 3 , − 1 ] {[-3,-1]} [3,1] 上的三次Hermite插值多项式及其余项。
解:由题可得
y 0 = 32 , y 1 = 4 , y 0 ′ = − 54 , y 1 ′ = 2 y_0=32 \,\,,\,\, y_1=4 \,\,,\,\, y_0'=-54 \,\,,\,\, y_1'=2 y0=32,y1=4,y0=54,y1=2
所以插值函数
H 3 ( x ) = 32 ϕ 0 ( x ) + 4 ϕ 1 ( x ) − 54 ψ 0 ( x ) + 2 ψ 1 ( x ) H_3(x)=32\phi_0(x)+4\phi_1(x)-54\psi_0(x)+2\psi_1(x) H3(x)=32ϕ0(x)+4ϕ1(x)54ψ0(x)+2ψ1(x)
接下来求基函数
a = − 2 / ( − 3 + 1 ) 3 = 1 / 4 b = ( − 3 ⋅ 3 + 1 ) / ( − 3 + 1 ) 3 = 1 } → ϕ 0 ( x ) = ( x + 1 ) 2 ( 1 4 x + 1 ) \begin{rcases} a=-2/(-3+1)^3=1/4 \\ \\ b=(-3\cdot3+1)/(-3+1)^3=1 \end{rcases}\to\phi_0(x)=(x+1)^2( \frac{1}{4}x+1) a=2/(3+1)3=1/4b=(33+1)/(3+1)3=1 ϕ0(x)=(x+1)2(41x+1)
a = − 2 / ( − 1 + 3 ) 3 = − 1 / 4 b = ( 3 ⋅ ( − 1 ) + 3 ) / ( − 1 + 3 ) 3 = 0 } → ϕ 1 ( x ) = − 1 4 x ( x + 3 ) 2 \begin{rcases} a=-2/(-1+3)^3=-1/4 \\ \\ b=(3 \cdot (-1)+3)/(-1+3)^3=0 \end{rcases}\to\phi_1(x)=-\frac{1}{4}x(x+3)^2 a=2/(1+3)3=1/4b=(3(1)+3)/(1+3)3=0 ϕ1(x)=41x(x+3)2
c = 1 ( − 3 + 1 ) 2 = 1 4 → ψ 0 ( x ) = 1 4 ( x + 3 ) ( x + 1 ) 2 c=\frac 1{(-3+1)^2}=\frac 1 4\to\psi_0(x)= \frac{1}{4}(x+3)(x+1)^2 c=(3+1)21=41ψ0(x)=41(x+3)(x+1)2
c = 1 ( − 1 + 3 ) 2 = 1 4 → ψ 1 ( x ) = 1 4 ( x + 1 ) ( x + 3 ) 2 c=\frac 1{(-1+3)^2}=\frac 1 4\to\psi_1(x)= \frac{1}{4}(x+1)(x+3)^2 c=(1+3)21=41ψ1(x)=41(x+1)(x+3)2
代入插值多项式得
H 3 ( x ) = − 6 x 3 − 22 x 2 − 24 x − 4 H_3(x)=-6x^3-22x^2-24x-4 H3(x)=6x322x224x4
由插值余项定理
∣ R 3 ( x ) ∣ = ∣ f ( x ) − H 3 ( x ) ∣ = ∣ f ( 4 ) ( ξ ) 4 ! ( x + 3 ) 2 ( x + 1 ) 2 ∣ = ∣ 4 ! 4 ! ( x + 3 ) 2 ( x + 1 ) 2 ∣ \begin{align*} |R_3(x)|=&|f(x)-H_3(x)|=| \frac{f^{(4)}(\xi)}{4!}(x+3)^2(x+1)^2 | \\ \\ =&| \frac{4!}{4!}(x+3)^2(x+1)^2 | \end{align*} R3(x)==f(x)H3(x)=4!f(4)(ξ)(x+3)2(x+1)24!4!(x+3)2(x+1)2

说明:

  • 余项仿照拉格朗日余项, x 0 {x_0} x0 点用了两次,所以平方, x 1 {x_1} x1 点同理
  • 类型 1 {1} 1 中系数 c {c} c 是相同的
4.3 三点三次Hermite插值

确定三次插值多项式 H 3 ( x ) {H_3(x)} H3(x) 使满足:
H 3 ( x 0 ) = f ( x 0 ) = y 0 , H 3 ( x 1 ) = f ( x 1 ) = y 1 , H 3 ( x 2 ) = f ( x 2 ) = y 2 H 3 ′ ( x 0 ) = f ′ ( x 0 ) = y 0 ′ \begin{align*} H_3(x_0)=f(x_0)=y_0 \,\,,\,\, H_3(x_1)=&f(x_1)=y_1\,\,,\,\, H_3(x_2)=f(x_2)=y_2 \\ \\ H_3'(x_0)=&f'(x_0)=y_0' \end{align*} H3(x0)=f(x0)=y0,H3(x1)=H3(x0)=f(x1)=y1,H3(x2)=f(x2)=y2f(x0)=y0
方法:基函数法,基函数为三次多项式。
步骤:

  1. H 3 ( x ) {H_3(x)} H3(x) H 3 ′ ( x ) {H_3'(x)} H3(x) 的表达式
    H 3 ( X ) = ϕ 0 ( x ) y 0 + ϕ 1 ( x ) y 1 + ϕ 2 ( x ) y 2 + ψ 0 ( x ) y 0 ′ (1) H_3(X)= \phi_0(x)y_0+\phi_1(x)y_1+\phi_2(x)y_2+\psi_0(x)y_0' \tag{1} H3(X)=ϕ0(x)y0+ϕ1(x)y1+ϕ2(x)y2+ψ0(x)y0(1)
    H 3 ′ ( X ) = ϕ 0 ′ ( x ) y 0 + ϕ 1 ′ ( x ) y 1 + ϕ 2 ′ ( x ) y 2 + ψ 0 ′ ( x ) y 0 ′ (2) H_3'(X)= \phi_0'(x)y_0+\phi_1'(x)y_1+\phi_2'(x)y_2+\psi_0'(x)y_0' \tag{2} H3(X)=ϕ0(x)y0+ϕ1(x)y1+ϕ2(x)y2+ψ0(x)y0(2)
  2. 根据表达式列表
    将 x 0 代入 ( 1 ) 将 x 1 代入 ( 1 ) 将 x 2 代入 ( 1 ) 将 x 0 代入 ( 2 ) ϕ 0 ( x 0 ) = 1 ϕ 0 ( x 1 ) = 0 ϕ 0 ( x 2 ) = 0 ϕ 0 ′ ( x 0 ) = 0 ϕ 1 ( x 0 ) = 0 ϕ 1 ( x 1 ) = 1 ϕ 1 ( x 2 ) = 0 ϕ 1 ′ ( x 0 ) = 0 ϕ 2 ( x 0 ) = 0 ϕ 2 ( x 1 ) = 0 ϕ 2 ( x 2 ) = 1 ϕ 2 ′ ( x 0 ) = 0 ψ 0 ( x 0 ) = 0 ψ 0 ( x 1 ) = 0 ψ 0 ( x 2 ) = 0 ψ 0 ′ ( x 0 ) = 1 \begin{array}{cccccc} 将 x_0 代入(1) & 将 x_1 代入(1) & 将 x_2 代入(1) & 将 x_0 代入(2) \\ \\ \phi_0(x_0)=1 & \phi_0(x_1)=0 & \phi_0(x_2)=0 & \phi_0'(x_0)=0 \\ \\ \phi_1(x_0)=0 & \phi_1(x_1)=1 & \phi_1(x_2)=0 & \phi_1'(x_0)=0 \\ \\ \phi_2(x_0)=0 & \phi_2(x_1)=0 & \phi_2(x_2)=1 & \phi_2'(x_0)=0 \\ \\ \psi_0(x_0)=0 & \psi_0(x_1)=0 & \psi_0(x_2)=0 & \psi_0'(x_0)=1 \\ \\ \end{array} x0代入(1)ϕ0(x0)=1ϕ1(x0)=0ϕ2(x0)=0ψ0(x0)=0x1代入(1)ϕ0(x1)=0ϕ1(x1)=1ϕ2(x1)=0ψ0(x1)=0x2代入(1)ϕ0(x2)=0ϕ1(x2)=0ϕ2(x2)=1ψ0(x2)=0x0代入(2)ϕ0(x0)=0ϕ1(x0)=0ϕ2(x0)=0ψ0(x0)=1
  3. 求基函数
    ϕ 0 {\phi_0} ϕ0 来说,有两个一重零点 x 1 , x 2 {x_1} \,\,,\,\, x_2 x1,x2 ,再设一个零点,有
    ϕ 0 ( x ) = ( x − x 1 ) ( x − x 2 ) ( a x + b ) , ( 代入 ϕ 0 ( x 0 ) = 1 , ϕ 0 ′ ( x 0 ) = 0 求 a , b ) \phi_0(x)=(x-x_1)(x-x_2)(ax+b) \,\,,\,\, (代入\, \phi_0(x_0)=1,\phi_0'(x_0)=0\,求\,a,b) ϕ0(x)=(xx1)(xx2)(ax+b),(代入ϕ0(x0)=1,ϕ0(x0)=0a,b)
    ϕ 1 {\phi_1} ϕ1 来说,有两个一重零点 x 0 , x 2 {x_0} \,\,,\,\, x_2 x0,x2 ,再设一个零点,有
    ϕ 1 ( x ) = ( x − x 0 ) ( x − x 2 ) ( a x + b ) , ( 代入 ϕ 1 ( x 1 ) = 1 , ϕ 1 ′ ( x 1 ) = 0 求 a , b ) \phi_1(x)=(x-x_0)(x-x_2)(ax+b) \,\,,\,\, (代入\, \phi_1(x_1)=1,\phi_1'(x_1)=0\,求\,a,b) ϕ1(x)=(xx0)(xx2)(ax+b),(代入ϕ1(x1)=1,ϕ1(x1)=0a,b)
    ϕ 2 {\phi_2} ϕ2 来说,有两个一重零点 x 0 , x 1 {x_0} \,\,,\,\, x_1 x0,x1 ,再设一个零点,有
    ϕ 2 ( x ) = ( x − x 0 ) ( x − x 1 ) ( a x + b ) , ( 代入 ϕ 2 ( x 2 ) = 1 , ϕ 2 ′ ( x 2 ) = 0 求 a , b ) \phi_2(x)=(x-x_0)(x-x_1)(ax+b) \,\,,\,\, (代入\, \phi_2(x_2)=1,\phi_2'(x_2)=0\,求\,a,b) ϕ2(x)=(xx0)(xx1)(ax+b),(代入ϕ2(x2)=1,ϕ2(x2)=0a,b)
    ψ 0 {\psi_0} ψ0 来说,有三个一重零点 x 0 , x 1 , x 2 {x_0} \,\,,\,\, x_1\,\,,\,\, x_2 x0,x1,x2 ,有
    ψ 0 = c ( x − x 0 ) ( x − x 1 ) ( x − x 2 ) , ( 代入 ψ 0 ′ ( x 0 ) = 1 求出 c ) \psi_0=c(x-x_0)(x-x_1)(x-x_2)\,\,,\,\, (代入 \, \psi_0'(x_0)=1\,求出\,c) ψ0=c(xx0)(xx1)(xx2),(代入ψ0(x0)=1求出c)
    还需要知道基函数的导数形式以方便求解,若
    ϕ ( x ) = ( x − x i ) ( x − x j ) ( a x + b ) = 1 \phi(x)=(x-x_i)(x-x_j)(ax+b)=1 ϕ(x)=(xxi)(xxj)(ax+b)=1
    ϕ ′ ( x ) = ( x − x i ) ( a x + b ) + ( x − x j ) ( a x + b ) + a ( x − x i ) ( x − x j ) = 0 \phi'(x)=(x - x_i)(ax+b) + (x - x_j)( ax+b) + a(x - x_i)(x - x_j)=0 ϕ(x)=(xxi)(ax+b)+(xxj)(ax+b)+a(xxi)(xxj)=0
    解得
    a = 2 x − x i − x j ( x − x i ) 2 ( x − x j ) 2 b = 3 x 2 − 2 x ( x i + x j ) + x i x j ( x − x i ) 2 ( x − x j ) 2 \begin{align*} a= &\frac{2x-x_i-x_j}{(x-x_i)^2(x-x_j)^2} \\ \\ b = & \frac{3x^2-2x(x_i+x_j)+x_ix_j}{(x-x_i)^2(x-x_j)^2} \end{align*} a=b=(xxi)2(xxj)22xxixj(xxi)2(xxj)23x22x(xi+xj)+xixj

    ψ ( x ) = c ( x − x i ) ( x − x j ) ( x − x k ) \psi(x)=c(x-x_i)(x-x_j)(x-x_k) ψ(x)=c(xxi)(xxj)(xxk)
    ψ ′ ( x ) = [ c ( x − x i ) ( x − x j ) + c ( x − x i ) ( x − x k ) + c ( x − x j ) ( x − x k ) ] ∣ x = x i = c ( x i − x j ) ( x i − x k ) = 1 \begin{align*} \psi'(x)=&[c(x - x_i)(x - x_j) + c(x - x_i)(x - x_k) + c(x - x_j)(x - x_k)]\big|_{x=x_i} \\ \\ =&c(x_i-x_j)(x_i-x_k)=1 \end{align*} ψ(x)==[c(xxi)(xxj)+c(xxi)(xxk)+c(xxj)(xxk)] x=xic(xixj)(xixk)=1
    c = 1 ( x i − x j ) ( x i − x k ) c= \frac{1}{(x_i-x_j)(x_i-x_k)} c=(xixj)(xixk)1

[!example]-
已知
f ( 1 ) = 5 , f ( 2 ) = 21 , f ( 3 ) = 53 , f ′ ( 1 ) = 10 f(1)=5 \,\,,\,\, f(2)=21 \,\,,\,\, f(3)=53 \,\,,\,\, f'(1)=10 f(1)=5,f(2)=21,f(3)=53,f(1)=10
求三次Hermite插值多项式
解:设插值函数
H 3 ( x ) = 5 ⋅ ϕ 0 ( x ) + 21 ⋅ ϕ 1 ( x ) + 53 ⋅ ϕ 2 ( x ) + 10 ⋅ ψ 0 ( x ) H_3(x)=5 \cdot \phi_0(x)+21 \cdot \phi_1(x) +53 \cdot \phi_2(x)+10 \cdot \psi_0(x) H3(x)=5ϕ0(x)+21ϕ1(x)+53ϕ2(x)+10ψ0(x)
求基函数
a = − 3 / 4 b = − 1 / 4 } → ϕ 0 ( x ) = ( x − 2 ) ( x − 3 ) ( − 3 4 x − 1 4 ) \begin{rcases} a=-3/4 \\ \\ b=-1/4 \end{rcases}\to\phi_0(x)=(x-2)(x-3)(- \frac{3}{4}x- \frac{1}{4}) a=3/4b=1/4 ϕ0(x)=(x2)(x3)(43x41)
a = 0 b = 12 } → ϕ 1 ( x ) = 12 ( x − 1 ) ( x − 3 ) \begin{rcases} a=0 \\ \\ b=12 \end{rcases}\to\phi_1(x)=12(x-1)(x-3) a=0b=12 ϕ1(x)=12(x1)(x3)
a = 3 / 4 b = 65 / 4 } → ϕ 2 ( x ) = ( x − 2 ) ( x − 3 ) ( 3 4 x + 65 4 ) \begin{rcases} a=3/4 \\ \\ b=65/4 \end{rcases}\to\phi_2(x)=(x-2)(x-3)(\frac{3}{4}x+\frac{65}{4}) a=3/4b=65/4 ϕ2(x)=(x2)(x3)(43x+465)
c = 1 ( 1 − 2 ) ( 1 − 3 ) = 1 2 → ψ 0 ( x ) = 1 2 ( x − 1 ) ( x − 2 ) ( x − 3 ) c= \frac{1}{(1-2)(1-3)}=\frac{1}{2}\to\psi_0(x)= \frac{1}{2}(x-1)(x-2)(x-3) c=(12)(13)1=21ψ0(x)=21(x1)(x2)(x3)
所以
H 3 ( x ) = 41 x 3 + 902 x 2 − 5037 x + 5886 H_3(x)=41x^3 + 902x^2 - 5037x + 5886 H3(x)=41x3+902x25037x+5886

4.4 n+1个点2n+1次Hermite插值多项式

就是所有节点的函数值和导数值都用上了
H 2 n + 1 ( x ) = ∑ k = 0 n ( 1 − 2 l k ′ ( x k ) ( x − x k ) ) l k 2 ( x ) f k + ∑ k = 0 n ( x − x k ) l k 2 ( x ) f k ′ H_{2n+1}(x)= \sum_{k=0}^{ n}(1-2l_k'(x_k)(x-x_k))l_k^2(x)f_k+ \sum_{k=0}^{ n}(x-x_k)l_k^2(x)f_k' H2n+1(x)=k=0n(12lk(xk)(xxk))lk2(x)fk+k=0n(xxk)lk2(x)fk
余项公式
R 2 n + 1 ( x ) = f ( x ) − H 2 n + 1 ( x ) = f ( 2 n + 2 ) ( ξ ) ( 2 n + 2 ) ! ( ∏ ( x ) ) 2 , ∏ ( x ) = ∏ j = 0 n ( x − x j ) R_{2n+1}(x)=f(x)-H_{2n+1}(x)= \frac{f^{(2n+2)}(\xi)}{(2n+2)!}(\prod_{}^{ }(x))^2 \,\,,\,\, \prod_{}^{ }(x)= \prod_{j=0}^{ n}(x-x_j) R2n+1(x)=f(x)H2n+1(x)=(2n+2)!f(2n+2)(ξ)((x))2,(x)=j=0n(xxj)
如果给定定义域,则右边积分可以得到一个 2 n + 1 {2n+1} 2n+1 次的数值积分公式。
积分中值定理可得出积分误差
R [ f ] = f ( 2 n + 2 ) ( η ) ( 2 n + 2 ) ! ∫ a b ( ∏ ( x ) ) 2 d x R[f]= \frac{f^{(2n+2)}(\eta)}{(2n+2)!} \int_{ a }^{b} (\prod_{}^{ }(x))^2 \mathrm dx R[f]=(2n+2)!f(2n+2)(η)ab((x))2dx

这篇关于【数值分析】Hermite插值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/571176

相关文章

Redis连接失败:客户端IP不在白名单中的问题分析与解决方案

《Redis连接失败:客户端IP不在白名单中的问题分析与解决方案》在现代分布式系统中,Redis作为一种高性能的内存数据库,被广泛应用于缓存、消息队列、会话存储等场景,然而,在实际使用过程中,我们可能... 目录一、问题背景二、错误分析1. 错误信息解读2. 根本原因三、解决方案1. 将客户端IP添加到Re

Redis主从复制实现原理分析

《Redis主从复制实现原理分析》Redis主从复制通过Sync和CommandPropagate阶段实现数据同步,2.8版本后引入Psync指令,根据复制偏移量进行全量或部分同步,优化了数据传输效率... 目录Redis主DodMIK从复制实现原理实现原理Psync: 2.8版本后总结Redis主从复制实

锐捷和腾达哪个好? 两个品牌路由器对比分析

《锐捷和腾达哪个好?两个品牌路由器对比分析》在选择路由器时,Tenda和锐捷都是备受关注的品牌,各自有独特的产品特点和市场定位,选择哪个品牌的路由器更合适,实际上取决于你的具体需求和使用场景,我们从... 在选购路由器时,锐捷和腾达都是市场上备受关注的品牌,但它们的定位和特点却有所不同。锐捷更偏向企业级和专

Spring中Bean有关NullPointerException异常的原因分析

《Spring中Bean有关NullPointerException异常的原因分析》在Spring中使用@Autowired注解注入的bean不能在静态上下文中访问,否则会导致NullPointerE... 目录Spring中Bean有关NullPointerException异常的原因问题描述解决方案总结

python中的与时间相关的模块应用场景分析

《python中的与时间相关的模块应用场景分析》本文介绍了Python中与时间相关的几个重要模块:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateu... 目录1. time 模块2. datetime 模块3. calendar 模块4. timeit

python-nmap实现python利用nmap进行扫描分析

《python-nmap实现python利用nmap进行扫描分析》Nmap是一个非常用的网络/端口扫描工具,如果想将nmap集成进你的工具里,可以使用python-nmap这个python库,它提供了... 目录前言python-nmap的基本使用PortScanner扫描PortScannerAsync异

Oracle数据库执行计划的查看与分析技巧

《Oracle数据库执行计划的查看与分析技巧》在Oracle数据库中,执行计划能够帮助我们深入了解SQL语句在数据库内部的执行细节,进而优化查询性能、提升系统效率,执行计划是Oracle数据库优化器为... 目录一、什么是执行计划二、查看执行计划的方法(一)使用 EXPLAIN PLAN 命令(二)通过 S

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

MOLE 2.5 分析分子通道和孔隙

软件介绍 生物大分子通道和孔隙在生物学中发挥着重要作用,例如在分子识别和酶底物特异性方面。 我们介绍了一种名为 MOLE 2.5 的高级软件工具,该工具旨在分析分子通道和孔隙。 与其他可用软件工具的基准测试表明,MOLE 2.5 相比更快、更强大、功能更丰富。作为一项新功能,MOLE 2.5 可以估算已识别通道的物理化学性质。 软件下载 https://pan.quark.cn/s/57