Hermite(埃尔米特)插值法

您所在的位置:网站首页 赫尔规则 Hermite(埃尔米特)插值法

Hermite(埃尔米特)插值法

2024-07-13 20:15| 来源: 网络整理| 查看: 265

Lagrange插值法、Newton插值法、逐次插值法、分段插值法,只要求插值多项式 p n ( x ) p_n(x) pn​(x)与被插值函数 f ( x ) f(x) f(x)在插值节点处的函数值相等即可,即 p n ( x i ) = f ( x i ) ( i = 0 , 1 , ⋯   , n ) p_n(x_i)=f(x_i)(i=0,1,\cdots,n) pn​(xi​)=f(xi​)(i=0,1,⋯,n)。但这种插值不能完全反映出被插值函数的性态。在许多实际问题中,不仅要求插值函数与被插值函数在节点处的函数值相同,而且还要求插值函数与被插值函数在某些节点处的导数值,甚至高阶导数值也相同。按照这种插值条件所进行的插值称为Hermite插值。其中,最常见的是要求一阶导数值相同的插值。下面就来导出其插值多项式。

1. Hermite插值多项式

假设已知函数 y = f ( x ) y=f(x) y=f(x)在插值节点 x i ( i = 0 , 1 , ⋯   , n ) x_i(i=0,1,\cdots,n) xi​(i=0,1,⋯,n)处的函数值为 y i = f ( x i ) y_i=f(x_i) yi​=f(xi​),一阶导数值为 m i = f ′ ( x i ) ( i = 0 , 1 , 2 , ⋯   , n ) m_i=f'(x_i)(i=0,1,2,\cdots,n) mi​=f′(xi​)(i=0,1,2,⋯,n),则 H e r m i t e Hermite Hermite插值多项式 H ( x ) H(x) H(x)满足: { H ( x i ) = y i , H ′ ( x i ) = m i , i = 0 , 1 , ⋯   , n (1) \begin{cases} H(x_i)=y_i , \\ H'(x_i)=m_i, \quad i=0,1,\cdots,n \end{cases} \tag{1} {H(xi​)=yi​,H′(xi​)=mi​,i=0,1,⋯,n​(1) 其几何意义就是,要求 y = H ( x ) y=H(x) y=H(x)的图形与 y = f ( x ) y=f(x) y=f(x)的图形在这n+1个点处相切,因此 x 0 , x 1 , ⋯   , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​称为二重节点。在(1)式中有 2 ( n + 1 ) 2(n+1) 2(n+1)个条件,因此可以确定一个次数不超过 2 n + 1 2n+1 2n+1次的插值多项式。仿照求Lagrange插值多项式的方法,设 H ( x ) = a 0 ( x ) y 0 + β 0 ( x ) m 0 + a 1 ( x ) y 1 + β 1 ( x ) m 1 + ⋯ + a n ( x ) y n + β n ( x ) m H(x)=a_0(x)y_0+\beta_0(x)m_0+a_1(x)y_1+\beta_1(x)m_1+\cdots+a_n(x)y_n+\beta_n(x)m H(x)=a0​(x)y0​+β0​(x)m0​+a1​(x)y1​+β1​(x)m1​+⋯+an​(x)yn​+βn​(x)m 或 H ( x ) = ∑ i = 0 n ( a i ( x ) y i ) + β i ( x ) m i H(x)=\sum_{i=0}^n(a_i(x)y_i)+\beta_i(x)m_i H(x)=i=0∑n​(ai​(x)yi​)+βi​(x)mi​ 根据插值条件, a i ( x ) a_i(x) ai​(x)和 β i ( x ) \beta_i(x) βi​(x)必须分别满足: { a i ( x k ) = { 0 , k ≠ i 1 , k = i i , k = 0 , 1 , ⋯   , n a i ′ ( x k ) = 0 \begin{cases} a_i(x_k)=\begin{cases} 0,k\neq i \\ 1,k=i \quad i,k=0,1,\cdots,n\end{cases} \\ a_i'(x_k)=0 \end{cases} ⎩⎪⎨⎪⎧​ai​(xk​)={0,k​=i1,k=ii,k=0,1,⋯,n​ai′​(xk​)=0​ 和 { β i ( x k ) = 0 β i ′ ( x k ) = { 0 , k ≠ i 1 , k = i , i , k = 0 , 1 , ⋯   , n \begin{cases} \beta_i(x_k) = 0\\ \beta_i'(x_k)=\begin{cases}0,k\neq i \\ 1,k=i, \quad i,k=0,1,\cdots,n \end{cases} \end{cases} ⎩⎪⎨⎪⎧​βi​(xk​)=0βi′​(xk​)={0,k​=i1,k=i,i,k=0,1,⋯,n​​ 这样确定的 α i ( x ) \alpha_i(x) αi​(x)和 β i ( x ) \beta_i(x) βi​(x)称为Hermite插值基函数。显然,基函数 a i ( x ) a_i(x) ai​(x)与 β i ( x ) \beta_i(x) βi​(x)一旦确定下来, H e r m i t e Hermite Hermite插值多项式 H ( x ) H(x) H(x)就确定出来了。下面导出 a i ( x ) a_i(x) ai​(x)和 β i ( x ) \beta_i(x) βi​(x)的具体形式:

(1)先确定 β i ( x ) \beta_i(x) βi​(x)。

由 β i ( x k ) = β i ′ ( x k ) = 0 ( k ≠ i ) \beta_i(x_k)=\beta_i'(x_k)=0 \quad(k\neq i) βi​(xk​)=βi′​(xk​)=0(k​=i) 知 β i ( x i ) \beta_i(x_i) βi​(xi​)以 x k ( k ≠ i ) x_k(k\neq i) xk​(k​=i)为二重零点,又由 β i ( x i ) = 0 , β i ′ ( x i ) = 1 ≠ 0 \beta_i(x_i)=0, \quad \beta_i'(x_i)=1\neq 0 βi​(xi​)=0,βi′​(xi​)=1​=0 知 β i ( x ) \beta_i(x) βi​(x)以 x i x_i xi​为一重零点。由于 β i ( x ) \beta_i(x) βi​(x)为次数不超过 2 n + 1 2n+1 2n+1的多项式,再根据Lagrange基函数 l i ( x ) l_i(x) li​(x)的定义,可设 β i ( x ) = β ^ i × ( x − x i ) × l i 2 ( x ) , β ^ i 为 常 数 \beta_i(x)=\hat \beta_i \times(x-x_i)\times l_i^2(x), \quad \hat \beta_i为常数 βi​(x)=β^​i​×(x−xi​)×li2​(x),β^​i​为常数 由 β i ′ ( x i ) = 1 \beta_i'(x_i)=1 βi′​(xi​)=1,得 β ^ i = 1 \hat \beta_i=1 β^​i​=1,故有: β i ( x ) = ( x − x i ) l i 2 ( x ) \beta_i(x)=(x-x_i)l_i^2(x) βi​(x)=(x−xi​)li2​(x) (2)再确定 a i ( x ) a_i(x) ai​(x)

同理,根据 a i ( x ) a_i(x) ai​(x)的定义, a i ( x ) a_i(x) ai​(x)含有因子 l i 2 ( x ) l_i^2(x) li2​(x),故可令 a i ( x ) = ( a x + b ) × l 2 2 ( x ) a_i(x)=(ax+b)\times l_2^2(x) ai​(x)=(ax+b)×l22​(x) 其中,a,b为特定常数。于是由条件 { a i ( x i ) = 1 a i ′ ( x i ) = 0 \begin{cases} a_i(x_i)=1 \\ a_i'(x_i)=0 \end{cases} {ai​(xi​)=1ai′​(xi​)=0​ 可得出: { a x i + b = 1 a + 2 l i ′ ( x i ) = 0 \begin{cases} ax_i+b=1 \\ a + 2l_i'(x_i)=0 \end{cases} {axi​+b=1a+2li′​(xi​)=0​ 所以 { a = − 2 l i ′ ( x i ) b = 1 + 2 x i l i ′ ( x i ) \begin{cases} a = -2l_i'(x_i) \\ b = 1+2x_il_i'(x_i) \end{cases} {a=−2li′​(xi​)b=1+2xi​li′​(xi​)​ 用对数法对 l i ( x ) = ( x − x 0 ) ⋯ ( x − x l − 1 ) ( x − x l + 1 ) ⋯ ( x − x n ) ( x i − x 0 ) ⋯ ( x i − x i − 1 ) ( x i − x i + 1 ) ⋯ ( x i − x n ) l_i(x)=\frac{(x-x_0)\cdots(x-x_{l-1})(x-x_{l+1})\cdots(x-x_n)}{(x_i-x_0)\cdots(x_i-x_{i-1})(x_i-x_{i+1})\cdots(x_i-x_n)} li​(x)=(xi​−x0​)⋯(xi​−xi−1​)(xi​−xi+1​)⋯(xi​−xn​)(x−x0​)⋯(x−xl−1​)(x−xl+1​)⋯(x−xn​)​求导,得 l i ′ ( x i ) = ∑ k = 0 , k ≠ i n 1 x i − x k l_i'(x_i)=\sum_{k=0,k\neq i}^n\frac{1}{x_i-x_k} li′​(xi​)=∑k=0,k​=in​xi​−xk​1​,故 a i ( x ) = ( 1 − 2 ( x − x i ) ∑ k = 0 , k ≠ 1 n 1 x i − x k ) l i 2 ( x ) a_i(x)=(1-2(x-x_i)\sum_{k=0,k\neq 1}^n\frac{1}{x_i-x_k})l_i^2(x) ai​(x)=(1−2(x−xi​)k=0,k​=1∑n​xi​−xk​1​)li2​(x) 即得到Hermite插值多项式为: H ( x ) = ∑ i = 0 n { y i + ( x i − x ) [ ( 2 ∑ k = 0 , k ≠ i n 1 x i − x k ) y i − m i ] } × l i 2 ( x ) H(x)=\sum_{i=0}^n\{y_i+(x_i-x)[(2\sum_{k=0,k\neq i}^n\frac{1}{x_i-x_k})y_i-m_i]\}\times l_i^2(x) H(x)=i=0∑n​{yi​+(xi​−x)[(2k=0,k​=i∑n​xi​−xk​1​)yi​−mi​]}×li2​(x) (3)最后证明Hermit插值多项式惟一性

假设另有一个不超过 2 n + 1 2n+1 2n+1次的多项式 h ( x ) h(x) h(x)并满足Hermite插值条件,设 φ ( x ) = H ( x ) − h ( x ) \varphi(x)=H(x)-h(x) φ(x)=H(x)−h(x) 则有 φ ( x i ) = H ( x i ) − h ( x i ) = f ( x i ) − f ( x i ) = 0 , ( i = 0 , 1 , ⋯   , n ) \varphi(x_i)=H(x_i)-h(x_i)=f(x_i)-f(x_i)=0, \quad(i=0,1,\cdots,n) φ(xi​)=H(xi​)−h(xi​)=f(xi​)−f(xi​)=0,(i=0,1,⋯,n)

φ ′ ( x i ) = H ′ ( x i ) − h ′ ( x i ) = m i − m i = 0 ( i = 0 , 1 , ⋯   , n ) \varphi'(x_i)=H'(x_i)-h'(x_i)=m_i-m_i=0 \quad(i=0,1,\cdots,n) φ′(xi​)=H′(xi​)−h′(xi​)=mi​−mi​=0(i=0,1,⋯,n)

于是 φ ( x ) \varphi(x) φ(x)有2n+2个零点,但是由于 φ ( x ) \varphi(x) φ(x)是次数不超过 2 n + 1 2n+1 2n+1的多项式,所以 φ ( x ) ≡ 0 \varphi(x) \equiv 0 φ(x)≡0,从而有: H ( x ) = h ( x ) H(x)=h(x) H(x)=h(x)

2. Hermite插值余项

设 f ( x ) f(x) f(x)在插值区间上有2n+2阶导数,令 R ( x ) = f ( x ) − H ( x ) R(x)=f(x)-H(x) R(x)=f(x)−H(x),由 H ( x ) H(x) H(x)的定义知, x i ( i = 0 , 1 , ⋯   , n ) x_i(i=0,1,\cdots,n) xi​(i=0,1,⋯,n)是 R ( x ) R(x) R(x)的二重零点,因此 R ( x ) R(x) R(x)含有 ( x − x i ) (x-x_i) (x−xi​)因子,故可设 R ( x ) = k ( x ) ∏ 2 ( x ) = k ( x ) ⋅ [ ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n ) ] 2 R(x)=k(x)\prod^2(x)=k(x)·[(x-x_0)(x-x_1)\cdots(x-x_n)]^2 R(x)=k(x)∏2​(x)=k(x)⋅[(x−x0​)(x−x1​)⋯(x−xn​)]2 作辅助函数 φ ( t ) = f ( t ) − H ( t ) − k ( x ) ∏ 2 ( t ) \varphi(t)=f(t)-H(t)-k(x)\prod^2(t) φ(t)=f(t)−H(t)−k(x)∏2​(t) 则有 φ ( x i ) = 0 , φ ′ ( x i ) = 0 ( i = 0 , 1 , ⋯   , n ) \varphi(x_i)=0, \quad \varphi'(x_i)=0 \quad(i=0,1,\cdots,n) φ(xi​)=0,φ′(xi​)=0(i=0,1,⋯,n)

φ ( x ) = 0 \varphi(x)=0 φ(x)=0

所以, φ ( t ) \varphi(t) φ(t)至少有n+1个二重零点 x i ( i = 0 , 1 , ⋯   , n ) x_i(i=0,1,\cdots,n) xi​(i=0,1,⋯,n)和一个单零点x。按照Rolle定理, φ ′ ( t ) \varphi '(t) φ′(t)在 x 0 , x 1 , ⋯   , x n , x x_0,x_1,\cdots,x_n,x x0​,x1​,⋯,xn​,x每相邻两个零点之间各有一个零点,且 x 0 , x 1 , ⋯   , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​仍是 φ ′ ( t ) \varphi'(t) φ′(t)的零点。所以 φ ′ ( t ) \varphi'(t) φ′(t)至少有2n+2个零点。同理 φ ′ ′ ( t ) \varphi''(t) φ′′(t)在插值区间内至少有2n+1个零点,依次类推, φ ( 2 n + 2 ) ( t ) \varphi^{(2n+2)}(t) φ(2n+2)(t)在插值区间内至少有一个零点 ξ \xi ξ,即: φ ( 2 n + 2 ) ( ξ ) = f ( 2 n + 2 ) ( ξ ) − k ( x ) ⋅ ( 2 n + 2 ) ! = 0 \varphi^{(2n+2)}(\xi)=f^{(2n+2)}(\xi)-k(x)·(2n+2)!=0 φ(2n+2)(ξ)=f(2n+2)(ξ)−k(x)⋅(2n+2)!=0 所以

由此得余项为: R ( x ) = f ( 2 n + 2 ) ( ξ ) ( 2 n + 2 ) ! ∏ 2 ( 2 ) 其 中 ξ 依 赖 于 变 量 x R(x)=\frac{f^{(2n+2)}(\xi)}{(2n+2)!}\prod^2(2) \quad 其中\xi依赖于变量x R(x)=(2n+2)!f(2n+2)(ξ)​∏2​(2)其中ξ依赖于变量x



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3