文章目录

  • 插值与拟合
    • 插值概念与基础理论
      • 插值问题的提法
      • 插值多项式的存在唯一性
      • 插值余项
    • 插值多项式的求法
      • 拉格朗日(Lagrange)型插值多项式
      • 差商与牛顿基本插值多项式
      • 差分与等距结点下的牛顿公式
    • 埃尔米特(Hermite)插值
    • 分段低次插值
      • 分段线性插值与分段二次插值
      • 三次样条插值
        • 三斜率(三转角)方程组
        • 三弯矩方程组(M关系式)
    • 曲线拟合的最小二乘法
      • 最小二乘解的求法
        • 线性最小二乘问题的求法
        • 多项式拟合最小二乘法
      • 加权技巧的应用

插值与拟合

插值概念与基础理论

插值问题的提法

给定函数 f ( x ) f(x) f(x) 在区间 [ a , b ] [a,b] [a,b] 上的 n + 1 n+1 n+1 个函数值:
x x 0 x 1 ⋯ x n f ( x ) f ( x 0 ) f ( x 1 ) ⋯ f ( x n ) \begin{array}{c|ccccc}x & x_0 & x_1 & \cdots & x_n\\ \hline f(x) & f(x_0) & f(x_1) & \cdots & f(x_n)\end{array} xf(x)​x0​f(x0​)​x1​f(x1​)​⋯⋯​xn​f(xn​)​​
x 0 , x 1 , ⋯ , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​ 互不相同。 Φ \Phi Φ 为给定的某一个函数类。若 Φ \Phi Φ 上有函数 φ ( x ) \varphi(x) φ(x),满足
φ ( x i ) = f ( x i ) , i = 0 , 1 , 2 , ⋯ , n \varphi(x_i)=f(x_i),i=0,1,2,\cdots,n φ(xi​)=f(xi​),i=0,1,2,⋯,n
则称 φ ( x ) \varphi(x) φ(x) 为 f ( x ) f(x) f(x) 关于结点 x 0 , x 1 , ⋯ , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​ 在 Φ \Phi Φ 上的插值函数, x 0 , x 1 , ⋯ , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​ 称为插值结点, [ a , b ] [a,b] [a,b] 称为插值区间, f ( x ) f(x) f(x) 称为被插函数

根据插值定义,插值函数实际上是一条经过平面上点 ( x i , f ( x i ) ) i = 0 , 1 , ⋯ , n (x_i,f(x_i))_{i=0,1,\cdots,n} (xi​,f(xi​))i=0,1,⋯,n​ 的曲线,这条平面曲线函数,就可以作为 f ( x ) f(x) f(x) 的逼近函数。

插值函数的存在唯一性:插值函数类 Φ \Phi Φ 为一个函数空间,若插值结点数为 n + 1 n+1 n+1,实际上给出了 n + 1 n+1 n+1 个限制条件,为了保证插值函数的存在唯一性,给出的插值函数空间应是 n + 1 n+1 n+1 维的,即 d i m Φ = n + 1 dim\Phi=n+1 dimΦ=n+1。

任取 Φ \Phi Φ 上 n + 1 n+1 n+1 个线性无关函数 φ 0 ( x ) , φ 1 ( x ) , ⋯ , φ n ( x ) \varphi_0(x),\varphi_1(x),\cdots,\varphi_n(x) φ0​(x),φ1​(x),⋯,φn​(x),它们可作为 Φ \Phi Φ 的一组基,记为:
Φ = s p a n { φ 0 ( x ) , φ 1 ( x ) , ⋯ , φ n ( x ) } \Phi=span\{\varphi_0(x),\varphi_1(x),\cdots,\varphi_n(x)\} Φ=span{φ0​(x),φ1​(x),⋯,φn​(x)}
于是,任取 φ ( x ) ∈ Φ \varphi(x)\in\Phi φ(x)∈Φ,则 φ ( x ) \varphi(x) φ(x) 可唯一地表为:
φ ( x ) = a 0 φ 0 ( x ) + a 1 φ 1 ( x ) + ⋯ + a n φ n ( x ) \varphi(x)=a_0\varphi_0(x)+a_1\varphi_1(x)+\cdots+a_n\varphi_n(x) φ(x)=a0​φ0​(x)+a1​φ1​(x)+⋯+an​φn​(x)
这里 ( a 0 , a 1 , ⋯ , a n ) (a_0,a_1,\cdots,a_n) (a0​,a1​,⋯,an​) 称之为 φ ( x ) \varphi(x) φ(x) 在基 { φ i ( x ) } i = 1 n \{\varphi_i(x)\}^n_{i=1} {φi​(x)}i=1n​ 下的坐标。

(*)定理: { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 为 [ a , b ] [a,b] [a,b] 上 n + 1 n+1 n+1 个互异点, Φ = s p a n { φ 0 ( x ) , φ 1 ( x ) , ⋯ , φ n ( x ) } \Phi=span\{\varphi_0(x),\varphi_1(x),\cdots,\varphi_n(x)\} Φ=span{φ0​(x),φ1​(x),⋯,φn​(x)} 为 n + 1 n+1 n+1 维函数空间,定义在 [ a , b ] [a,b] [a,b] 上的函数 f ( x ) f(x) f(x) 关于结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 在 Φ \Phi Φ 上的插值函数存在且唯一的充要条件为行列式:
∣ φ 0 ( x 0 ) φ 1 ( x 0 ) ⋯ φ n ( x 0 ) φ 0 ( x 1 ) φ 1 ( x 1 ) ⋯ φ n ( x 1 ) ⋯ ⋯ φ 0 ( x n − 1 ) φ 1 ( x n − 1 ) ⋯ φ n ( x n − 1 ) φ 0 ( x n ) φ 1 ( x n ) ⋯ φ n ( x n ) ∣ ≠ 0 \left|\begin{matrix}\varphi_0(x_0) & \varphi_1(x_0) & \cdots & \varphi_n(x_0)\\\varphi_0(x_1) & \varphi_1(x_1) & \cdots & \varphi_n(x_1)\\&\cdots&\cdots\\\varphi_0(x_{n-1}) & \varphi_1(x_{n-1}) & \cdots & \varphi_n(x_{n-1})\\\varphi_0(x_n) & \varphi_1(x_n) & \cdots & \varphi_n(x_n)\end{matrix}\right|\neq0 ∣∣∣∣∣∣∣∣∣∣​φ0​(x0​)φ0​(x1​)φ0​(xn−1​)φ0​(xn​)​φ1​(x0​)φ1​(x1​)⋯φ1​(xn−1​)φ1​(xn​)​⋯⋯⋯⋯⋯​φn​(x0​)φn​(x1​)φn​(xn−1​)φn​(xn​)​∣∣∣∣∣∣∣∣∣∣​​=0

插值多项式的存在唯一性

记 P n = { a 0 + a 1 x + ⋯ + a n x n ∣ a i ∈ R } P_n=\{a_0+a_1x+\cdots+a_nx^n|a_i\in R\} Pn​={a0​+a1​x+⋯+an​xn∣ai​∈R},则 P n P_n Pn​ 为一个 n + 1 n+1 n+1 维的线性空间( n n n 次多项式空间)。

若 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 为 [ a , b ] [a,b] [a,b] 上互异点, f ( x ) f(x) f(x) 为定义在 [ a , b ] [a,b] [a,b] 上的函数,若有 P n ( x ) ∈ P n P_n(x)\in P_n Pn​(x)∈Pn​,满足 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,则称 P n ( x ) P_n(x) Pn​(x) 为 f ( x ) f(x) f(x) 关于结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 的 n n n 次插值多项式

定理1: f ( x ) f(x) f(x) 关于 n + 1 n+1 n+1 个互异结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 的 n n n 次插值多项式存在且唯一。

证明:设插值多项式: P n ( x ) = a 0 + a 1 x + ⋯ + a n x n P_n(x)=a_0+a_1x+\cdots+a_nx^n Pn​(x)=a0​+a1​x+⋯+an​xn,满足 a 0 + a 1 x i + ⋯ + a n x i n = f ( x i ) , i = 0 , 1 , ⋯ , n a_0+a_1x_i+\cdots+a_nx_i^n=f(x_i),i=0,1,\cdots,n a0​+a1​xi​+⋯+an​xin​=f(xi​),i=0,1,⋯,n,而
D = ∣ 1 x 0 x 0 2 ⋯ x 0 n 1 x 1 x 1 2 ⋯ x 1 n ⋮ ⋮ ⋮ ⋮ 1 x n x n 2 ⋯ x n n ∣ = ∏ n ≥ i > j ≥ 0 ( x i − x j ) ≠ 0 D=\left|\begin{matrix}1&x_0&x_0^2&\cdots&x_0^n\\1&x_1&x_1^2&\cdots&x_1^n\\\vdots&\vdots&\vdots&&\vdots\\1&x_n&x_n^2&\cdots&x_n^n\end{matrix}\right|=\prod_{n\geq i>j\geq0}(x_i-x_j)\neq0 D=∣∣∣∣∣∣∣∣∣​11⋮1​x0​x1​⋮xn​​x02​x12​⋮xn2​​⋯⋯⋯​x0n​x1n​⋮xnn​​∣∣∣∣∣∣∣∣∣​=n≥i>j≥0∏​(xi​−xj​)​=0
由克莱姆法则得 a 0 , a 1 , ⋯ , a n a_0,a_1,\cdots,a_n a0​,a1​,⋯,an​ 存在唯一,即 P n P_n Pn​ 上存在且唯一的有 P n ( x ) P_n(x) Pn​(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。

同时, n n n 次插值多项式 P ( x ) P(x) P(x) 可表示为 P n ( x ) = a 0 + a 1 x + ⋯ + a n x n P_n(x)=a_0+a_1x+\cdots+a_nx^n Pn​(x)=a0​+a1​x+⋯+an​xn,其中 a i = D i D , i = 0 , 1 , 2 , ⋯ , n a_i=\frac{D_i}{D},i=0,1,2,\cdots,n ai​=DDi​​,i=0,1,2,⋯,n。
D i = ∣ 1 x 0 ⋯ x 0 i − 1 f ( x 0 ) x 0 i + 1 ⋯ x 0 n 1 x 1 ⋯ x 1 i − 1 f ( x 1 ) x 1 i + 1 ⋯ x 1 n ⋯ ⋯ 1 x n ⋯ x n i − 1 f ( x n ) x n i + 1 ⋯ x n n ∣ D_i=\left|\begin{matrix}1&x_0&\cdots&x_0^{i-1}&f(x_0)&x_0^{i+1}&\cdots&x_0^n\\1&x_1&\cdots&x_1^{i-1}&f(x_1)&x_1^{i+1}&\cdots&x_1^n\\&&&\cdots&\cdots\\1&x_n&\cdots&x_n^{i-1}&f(x_n)&x_n^{i+1}&\cdots&x_n^n\end{matrix}\right| Di​=∣∣∣∣∣∣∣∣​111​x0​x1​xn​​⋯⋯⋯​x0i−1​x1i−1​⋯xni−1​​f(x0​)f(x1​)⋯f(xn​)​x0i+1​x1i+1​xni+1​​⋯⋯⋯​x0n​x1n​xnn​​∣∣∣∣∣∣∣∣​

插值余项

R n ( x ) = f ( x ) − P n ( x ) R_n(x)=f(x)-P_n(x) Rn​(x)=f(x)−Pn​(x) 称为插值余项(或称误差)。

定理2:若 f ∈ C n + 1 [ a , b ] f\in C^{n+1}[a,b] f∈Cn+1[a,b],互异点 { x i } i = 0 n ⊂ [ a , b ] \{x_i\}^n_{i=0}\subset[a,b] {xi​}i=0n​⊂[a,b],则 f ( x ) f(x) f(x) 以 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 为插值结点的 n n n 次插值多项式余项:
R n ( x ) = f ( n + 1 ) ( ξ ) ( n + 1 ) ! ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n ) 其 中 : m i n { x 0 , x 1 , ⋯ , x n , x } ≤ ξ = ξ ( x ) ≤ m a x { x 0 , x 1 , ⋯ , x n , x } R_n(x)=\frac{f^{(n+1)}(\xi)}{(n+1)!}(x-x_0)(x-x_1)\cdots(x-x_n)\\其中:min\{x_0,x_1,\cdots,x_n,x\}\leq\xi=\xi(x)\leq max\{x_0,x_1,\cdots,x_n,x\} Rn​(x)=(n+1)!f(n+1)(ξ)​(x−x0​)(x−x1​)⋯(x−xn​)其中:min{x0​,x1​,⋯,xn​,x}≤ξ=ξ(x)≤max{x0​,x1​,⋯,xn​,x}
推论: 若 f ( x ) ∈ C ( n + 1 ) [ a , b ] f(x)\in C^{(n+1)}[a,b] f(x)∈C(n+1)[a,b],且 ∣ f ( n + 1 ) ( x ) ∣ ≤ M n + 1 ( a ≤ x ≤ b ) |f^{(n+1)}(x)|\leq M_{n+1}(a\leq x\leq b) ∣f(n+1)(x)∣≤Mn+1​(a≤x≤b),则 f ( x ) f(x) f(x) 以 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 为插值结点的 n n n 次插值多项式余项
∣ R n ( x ) ∣ ≤ M n + 1 ( n + 1 ) ! ∣ ω n + 1 ( x ) ∣ |R_n(x)|\leq\frac{M_{n+1}}{(n+1)!}|\omega_{n+1}(x)| ∣Rn​(x)∣≤(n+1)!Mn+1​​∣ωn+1​(x)∣
其中: ω n + 1 ( x ) = ∏ i = 0 n ( x − x i ) \omega_{n+1}(x)=\prod^n_{i=0}(x-x_i) ωn+1​(x)=∏i=0n​(x−xi​)

注: 若插值点 x x x 位于插值区间 [ m i n 1 ≤ i ≤ n x i , m a x 1 ≤ i ≤ n x i ] [min_{1\leq i\leq n}x_i,max_{1\leq i\leq n}x_i] [min1≤i≤n​xi​,max1≤i≤n​xi​] 内,则该插值过程称为内插,否则称为外插。一般情况下,内插效果要比外插好一点,所以,插值结点尽可能选取在插值区间内。

插值多项式的求法

拉格朗日(Lagrange)型插值多项式

对于给定的 n + 1 n+1 n+1 个互异结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​,如果能找到 P n P_n Pn​ 上 n + 1 n+1 n+1 个多项式 { l i ( x ) } i = 0 n \{l_i(x)\}^n_{i=0} {li​(x)}i=0n​,满足
l i ( x j ) = δ i j = { 1 , i = j 0 , i ≠ j , i , j = 0 , 1 , ⋯ , n l_i(x_j)=\delta_{ij}=\begin{cases}1,i=j\\0,i\neq j\end{cases},i,j=0,1,\cdots,n li​(xj​)=δij​={1,i=j0,i​=j​,i,j=0,1,⋯,n
那么 L n ( x ) = ∑ i = 0 n l i ( x ) f ( x i ) L_n(x)=\sum^n_{i=0}l_i(x)f(x_i) Ln​(x)=∑i=0n​li​(x)f(xi​) 就是 f ( x ) f(x) f(x) 关于结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 的 n n n 次插值多项式。其中, { l i ( x ) } i = 0 n ⊂ P n \{l_i(x)\}^n_{i=0}\subset P_n {li​(x)}i=0n​⊂Pn​,有 ∑ i = 0 n l i ( x ) f ( x i ) ∈ P n \sum^n_{i=0}l_i(x)f(x_i)\in P_n ∑i=0n​li​(x)f(xi​)∈Pn​,且有
L n ( x k ) = ∑ i = 0 n l i ( x k ) f ( x i ) = f ( x k ) , k = 0 , 1 , ⋯ , n L_n(x_k)=\sum^n_{i=0}l_i(x_k)f(x_i)=f(x_k),k=0,1,\cdots,n Ln​(xk​)=i=0∑n​li​(xk​)f(xi​)=f(xk​),k=0,1,⋯,n
l i ( x ) l_i(x) li​(x) 的构造: l i ( x j ) = 0 ( j ≠ i ) l_i(x_j)=0(j\neq i) li​(xj​)=0(j​=i):
l i ( x ) = ∏ j = 0 , j ≠ i n x − x j x i − x j = ( x − x 0 ) ⋯ ( x − x i − 1 ) ( x − x i + 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)=\prod^n_{j=0,j\neq i}\frac{x-x_j}{x_i-x_j}=\frac{(x-x_0)\cdots(x-x_{i-1})(x-x_{i+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)=j=0,j​=i∏n​xi​−xj​x−xj​​=(xi​−x0​)⋯(xi​−xi−1​)(xi​−xi+1​)⋯(xi​−xn​)(x−x0​)⋯(x−xi−1​)(x−xi+1​)⋯(x−xn​)​
{ l i ( x ) } i = 0 n \{l_i(x)\}^n_{i=0} {li​(x)}i=0n​ 是一组线性无关的函数,可作为 P n P_n Pn​ 的一组基,称为关于结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​的Lagrange基,其插值多项式称为Lagrange型插值多项式,记为 L n ( x , f ) L_n(x,f) Ln​(x,f) 或 L n ( x ) L_n(x) Ln​(x),即
L n ( x ) = ∑ i = 0 n l i ( x ) f ( x i ) = ∑ i = 0 n ( ∏ j = 0 , j ≠ i n x − x j x i − x j ) f ( x i ) L_n(x)=\sum^n_{i=0}l_i(x)f(x_i)=\sum^n_{i=0}(\prod^n_{j=0,j\neq i}\frac{x-x_j}{x_i-x_j})f(x_i) Ln​(x)=i=0∑n​li​(x)f(xi​)=i=0∑n​(j=0,j​=i∏n​xi​−xj​x−xj​​)f(xi​)
记 ω n + 1 ( x ) = ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n ) , ω n + 1 ′ ( x i ) = ∏ j = 0 , j ≠ i n ( x i − x j ) \omega_{n+1}(x)=(x-x_0)(x-x_1)\cdots(x-x_n),\omega'_{n+1}(x_i)=\prod^n_{j=0,j\neq i}(x_i-x_j) ωn+1​(x)=(x−x0​)(x−x1​)⋯(x−xn​),ωn+1′​(xi​)=∏j=0,j​=in​(xi​−xj​),得
l i ( x ) = ω n + 1 ( x ) ( x − x i ) ω n + 1 ′ ( x i ) L n ( x ) = ∑ i = 0 n ω n + 1 ( x ) ( x − x i ) ω n + 1 ′ ( x i ) f ( x i ) l_i(x)=\frac{\omega_{n+1}(x)}{(x-x_i)\omega'_{n+1}(x_i)}\\L_n(x)=\sum^n_{i=0}\frac{\omega_{n+1}(x)}{(x-x_i)\omega'_{n+1}(x_i)}f(x_i) li​(x)=(x−xi​)ωn+1′​(xi​)ωn+1​(x)​Ln​(x)=i=0∑n​(x−xi​)ωn+1′​(xi​)ωn+1​(x)​f(xi​)
当 n = 1 n=1 n=1 时,可得 f ( x ) f(x) f(x) 关于 x 0 , x 1 x_0,x_1 x0​,x1​ 的线性插值多项式的Lagrange型式:
L 1 ( x ) = x − x 1 x 0 − x 1 f ( x 0 ) + x − x 0 x 1 − x 0 f ( x 1 ) L_1(x)=\frac{x-x_1}{x_0-x_1}f(x_0)+\frac{x-x_0}{x_1-x_0}f(x_1) L1​(x)=x0​−x1​x−x1​​f(x0​)+x1​−x0​x−x0​​f(x1​)
当 n = 2 n=2 n=2 时,可得 f ( x ) f(x) f(x) 关于 x 0 , x 1 , x 2 x_0,x_1,x_2 x0​,x1​,x2​ 的线性插值多项式的Lagrange型式:
L 2 ( x ) = l 0 ( x ) f ( x 0 ) + l 1 ( x ) f ( x 1 ) + l 2 f ( x 2 ) = ( x − x 1 ) ( x − x 2 ) ( x 0 − x 1 ) ( x 0 − x 2 ) f ( x 0 ) + ( x − x 0 ) ( x − x 2 ) ( x 1 − x 0 ) ( x 1 − x 2 ) f ( x 1 ) + ( x − x 0 ) ( x − x 1 ) ( x 2 − x 0 ) ( x 2 − x 1 ) f ( x 2 ) L_2(x)=l_0(x)f(x_0)+l_1(x)f(x_1)+l_2f(x_2)\\=\frac{(x-x_1)(x-x_2)}{(x_0-x_1)(x_0-x_2)}f(x_0)+\frac{(x-x_0)(x-x_2)}{(x_1-x_0)(x_1-x_2)}f(x_1)+\frac{(x-x_0)(x-x_1)}{(x_2-x_0)(x_2-x_1)}f(x_2) L2​(x)=l0​(x)f(x0​)+l1​(x)f(x1​)+l2​f(x2​)=(x0​−x1​)(x0​−x2​)(x−x1​)(x−x2​)​f(x0​)+(x1​−x0​)(x1​−x2​)(x−x0​)(x−x2​)​f(x1​)+(x2​−x0​)(x2​−x1​)(x−x0​)(x−x1​)​f(x2​)

三点插值又称抛物插值

误差的事后估计方法: 定理 2 给出了当被插函数充分光滑时的插值误差表达式,推论给出了误差的界。但在实际计算中,涉及到高价导数,很难给出较精确的估计,所以常用误差的事后估计

记 L n ( x ) L_n(x) Ln​(x) 为 f ( x ) f(x) f(x) 以 x 0 , x 1 , ⋯ , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​ 为结点的插值多项式,对确定的 x x x,我们需要对误差 f ( x ) − L n ( x ) f(x)-L_n(x) f(x)−Ln​(x) 做出估计。为此,另取一个结点 x n + 1 x_{n+1} xn+1​,记 L n ( 1 ) ( x ) L^{(1)}_n(x) Ln(1)​(x) 为 f ( x ) f(x) f(x) 以 x 1 , x 2 , ⋯ , x n , x n + 1 x_1,x_2,\cdots,x_n,x_{n+1} x1​,x2​,⋯,xn​,xn+1​ 为结点的插值多项式,由定理2,可得到:
f ( x ) − L n ( x ) = f ( n + 1 ) ( ξ ) ( n + 1 ) ! ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n ) f ( x ) − L n ( 1 ) ( x ) = f ( n + 1 ) ( ξ 2 ) ( n + 1 ) ! ( x − x 1 ) ( x − x 2 ) ⋯ ( x − x n ) ( x − x n + 1 ) f(x)-L_n(x)=\frac{f^{(n+1)}(\xi)}{(n+1)!}(x-x_0)(x-x_1)\cdots(x-x_n)\\f(x)-L^{(1)}_n(x)=\frac{f^{(n+1)}(\xi_2)}{(n+1)!}(x-x_1)(x-x_2)\cdots(x-x_n)(x-x_{n+1}) f(x)−Ln​(x)=(n+1)!f(n+1)(ξ)​(x−x0​)(x−x1​)⋯(x−xn​)f(x)−Ln(1)​(x)=(n+1)!f(n+1)(ξ2​)​(x−x1​)(x−x2​)⋯(x−xn​)(x−xn+1​)
若 f ( n + 1 ) ( x ) f^{(n+1)}(x) f(n+1)(x) 在插值区间上变化不大时,则:
f ( x ) − L n ( x ) f ( x ) − L n ( 1 ) ( x ) ≈ x − x 0 x − x n + 1 ( x − x n + 1 ) ( f ( x ) − L n ( x ) ) ≈ ( x − x 0 ) ( f ( x ) − L n ( 1 ) ( x ) ) f ( x ) ≈ x − x n + 1 x 0 − x n + 1 L n ( x ) + x − x 0 x n + 1 − x 0 L n ( 1 ) ( x ) 即 : f ( x ) − L n ( x ) ≈ x − x 0 x 0 − x n + 1 ( L n ( x ) − L n ( 1 ) ( x ) ) \frac{f(x)-L_n(x)}{f(x)-L^{(1)}_n(x)}\approx\frac{x-x_0}{x-x_{n+1}}\\(x-x_{n+1})(f(x)-L_n(x))\approx(x-x_0)(f(x)-L^{(1)}_n(x))\\f(x)\approx\frac{x-x_{n+1}}{x_0-x_{n+1}}L_n(x)+\frac{x-x_0}{x_{n+1}-x_0}L^{(1)}_n(x)\\即:f(x)-L_n(x)\approx\frac{x-x_0}{x_0-x_{n+1}}(L_n(x)-L^{(1)}_n(x)) f(x)−Ln(1)​(x)f(x)−Ln​(x)​≈x−xn+1​x−x0​​(x−xn+1​)(f(x)−Ln​(x))≈(x−x0​)(f(x)−Ln(1)​(x))f(x)≈x0​−xn+1​x−xn+1​​Ln​(x)+xn+1​−x0​x−x0​​Ln(1)​(x)即:f(x)−Ln​(x)≈x0​−xn+1​x−x0​​(Ln​(x)−Ln(1)​(x))
上式较好地给出了插值误差的实际估计。

差商与牛顿基本插值多项式

对于给定的 n + 1 n+1 n+1 个结点 x 0 , x 1 , ⋯ , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​,考虑 n n n 次多项式: N n ( x ) = a 0 + a 1 ( x − x 0 ) + a 2 ( x − x 0 ) ( x − x 1 ) + ⋯ + a n ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n − 1 ) N_n(x)=a_0+a_1(x-x_0)+a_2(x-x_0)(x-x_1)+\cdots+a_n(x-x_0)(x-x_1)\cdots(x-x_{n-1}) Nn​(x)=a0​+a1​(x−x0​)+a2​(x−x0​)(x−x1​)+⋯+an​(x−x0​)(x−x1​)⋯(x−xn−1​) 满足插值条件: N n ( x i ) = f ( x i ) = y i , i = 0 , 1 , ⋯ , n N_n(x_i)=f(x_i)=y_i,i=0,1,\cdots,n Nn​(xi​)=f(xi​)=yi​,i=0,1,⋯,n,称 N n ( x ) N_n(x) Nn​(x) 是以 x 0 , x 1 , ⋯ , x n x_0,x_1,\cdots,x_n x0​,x1​,⋯,xn​ 为结点的 n n n 次牛顿型插值多项式。

定义1:设函数 f ( x ) f(x) f(x) 在点 x 0 , x 1 , x 2 , ⋯ x_0,x_1,x_2,\cdots x0​,x1​,x2​,⋯ 上的值依次为 f ( x 0 ) , f ( x 1 ) , f ( x 2 ) , ⋯ f(x_0),f(x_1),f(x_2),\cdots f(x0​),f(x1​),f(x2​),⋯,则称
f [ x i , x j ] = f ( x j ) − f ( x i ) x j − x i f[x_i,x_j]=\frac{f(x_j)-f(x_i)}{x_j-x_i} f[xi​,xj​]=xj​−xi​f(xj​)−f(xi​)​
为 f ( x ) f(x) f(x) 在 x i , x i x_i,x_i xi​,xi​ 处的一阶差商。称
f [ x i , x j , x k ] = f [ x j , x k ] − f [ x i , x j ] x k − x i f[x_i,x_j,x_k]=\frac{f[x_j,x_k]-f[x_i,x_j]}{x_k-x_i} f[xi​,xj​,xk​]=xk​−xi​f[xj​,xk​]−f[xi​,xj​]​
为 f ( x ) f(x) f(x) 在 x i , x j , x k x_i,x_j,x_k xi​,xj​,xk​ 处的二阶差商。一般地,称 m − 1 m-1 m−1 阶差商的差商:
f [ x i 0 , x i 1 , ⋯ , x i m ] = f [ x i 1 , ⋯ , x i m ] − f [ x i 0 , ⋯ , x i m − 1 ] x i m − x i 0 f[x_{i0},x_{i1},\cdots,x_{im}]=\frac{f[x_{i1},\cdots,x_{im}]-f[x_{i0},\cdots,x_{im-1}]}{x_{im}-x_{i0}} f[xi0​,xi1​,⋯,xim​]=xim​−xi0​f[xi1​,⋯,xim​]−f[xi0​,⋯,xim−1​]​
为 f ( x ) f(x) f(x) 在 x i 0 , x i 1 , ⋯ , x i m x_{i0},x_{i1},\cdots,x_{im} xi0​,xi1​,⋯,xim​ 处的 m m m 阶差商

特别的,规定零阶差商为: f [ x i ] = f ( x i ) f[x_i]=f(x_i) f[xi​]=f(xi​)。

通过归纳法, m m m 阶差商可表示成 f ( x 0 ) , f ( x 1 ) , ⋯ , f ( x m ) f(x_0),f(x_1),\cdots,f(x_m) f(x0​),f(x1​),⋯,f(xm​) 的线性组合:
f [ x 0 , x 1 , ⋯ , x m ] = ∑ j = 0 m f ( x j ) ( x j − x 0 ) ⋯ ( x j − x j − 1 ) ( x j − x j + 1 ) ⋯ ( x j − x m ) f[x_0,x_1,\cdots,x_m]=\sum_{j=0}^m\frac{f(x_j)}{(x_j-x_0)\cdots(x_j-x_{j-1})(x_j-x_{j+1})\cdots(x_j-x_m)} f[x0​,x1​,⋯,xm​]=j=0∑m​(xj​−x0​)⋯(xj​−xj−1​)(xj​−xj+1​)⋯(xj​−xm​)f(xj​)​

差商具有对称性:任意调换结点的次序,不影响差商的值。 例如:
f [ x 0 , x 1 , x 2 ] = f [ x 1 , x 2 , x 0 ] = f [ x 1 , x 0 , x 2 ] f[x_0,x_1,x_2]=f[x_1,x_2,x_0]=f[x_1,x_0,x_2] f[x0​,x1​,x2​]=f[x1​,x2​,x0​]=f[x1​,x0​,x2​]
由插值条件 N n ( x i ) = f ( x i ) N_n(x_i)=f(x_i) Nn​(xi​)=f(xi​),可得
N n ( x 0 ) = a 0 = f ( x 0 ) → a 0 = f ( x 0 ) N n ( x 1 ) = a 0 + a 1 ( x 1 − x 0 ) = f ( x 1 ) → a 1 = f ( x 1 ) − f ( x 0 ) x 1 − x 0 = f [ x 0 , x 1 ] N n ( x 2 ) = a 0 + a 1 ( x 2 − x 0 ) + a 2 ( x 2 − x 0 ) ( x 2 − x 1 ) = f ( x 2 ) → a 2 = f [ x 0 , x 2 ] − f [ x 0 , x 1 ] x 2 − x 0 = f [ x 0 , x 1 , x 2 ] N_n(x_0)=a_0=f(x_0)\rightarrow a_0=f(x_0)\\N_n(x_1)=a_0+a_1(x_1-x_0)=f(x_1)\rightarrow a_1=\frac{f(x_1)-f(x_0)}{x_1-x_0}=f[x_0,x_1]\\N_n(x_2)=a_0+a_1(x_2-x_0)+a_2(x_2-x_0)(x_2-x_1)=f(x_2)\rightarrow a_2=\frac{f[x_0,x_2]-f[x_0,x_1]}{x_2-x_0}=f[x_0,x_1,x_2] Nn​(x0​)=a0​=f(x0​)→a0​=f(x0​)Nn​(x1​)=a0​+a1​(x1​−x0​)=f(x1​)→a1​=x1​−x0​f(x1​)−f(x0​)​=f[x0​,x1​]Nn​(x2​)=a0​+a1​(x2​−x0​)+a2​(x2​−x0​)(x2​−x1​)=f(x2​)→a2​=x2​−x0​f[x0​,x2​]−f[x0​,x1​]​=f[x0​,x1​,x2​]
由归纳法可得:
a k = f [ x 0 , x 1 , ⋯ , x k ] ( k = 0 , 1 , ⋯ , n ) a_k=f[x_0,x_1,\cdots,x_k](k=0,1,\cdots,n) ak​=f[x0​,x1​,⋯,xk​](k=0,1,⋯,n)
以 x 0 , x 1 , ⋯ , x n x_0,x_1,\cdots,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 2 ] ( x − x 0 ) ( x − x 1 ) + ⋯ + f [ x 0 , x 1 , ⋯ , x n ] ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n − 1 ) N_n(x)=f(x_0)+f[x_0,x_1](x-x_0)+f[x_0,x_1,x_2](x-x_0)(x-x_1)+\cdots+f[x_0,x_1,\cdots,x_n](x-x_0)(x-x_1)\cdots(x-x_{n-1}) Nn​(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−xn−1​)
当新增加一个结点 x n + 1 x_{n+1} xn+1​ 时:
N n + 1 ( x ) = N n ( x ) + f [ x 0 , x 1 , ⋯ , x n , x n + 1 ] ( x − x 0 ) ( x − x 1 ) ⋯ ( x − x n − 1 ) ( x − x n ) N_{n+1}(x)=N_n(x)+f[x_0,x_1,\cdots,x_n,x_{n+1}](x-x_0)(x-x_1)\cdots(x-x_{n-1})(x-x_n) Nn+1​(x)=Nn​(x)+f[x0​,x1​,⋯,xn​,xn+1​](x−x0​)(x−x1​)⋯(x−xn−1​)(x−xn​)
插值多项式的误差(差商形式)表示:
f ( x ) ≡ f ( x 0 ) + f [ x 0 , x 1 ] ( x − x 0 ) + ⋯ + f [ x 0 , x 1 , ⋯ , x n ] ( x − x 0 ) ⋯ ( x − x n − 1 ) + f [ x 0 , x 1 , ⋯ , x n , x ] ( x − x 0 ) ⋯ ( x − x n ) = N n ( x ) + f [ x 0 , x 1 , ⋯ , x n , x ] ( x − x 0 ) ⋯ ( x − x n ) f(x)\equiv f(x_0)+f[x_0,x_1](x-x_0)+\cdots+f[x_0,x_1,\cdots,x_n](x-x_0)\cdots(x-x_{n-1})+f[x_0,x_1,\cdots,x_n,x](x-x_0)\cdots(x-x_n)\\=N_n(x)+f[x_0,x_1,\cdots,x_n,x](x-x_0)\cdots(x-x_n) f(x)≡f(x0​)+f[x0​,x1​](x−x0​)+⋯+f[x0​,x1​,⋯,xn​](x−x0​)⋯(x−xn−1​)+f[x0​,x1​,⋯,xn​,x](x−x0​)⋯(x−xn​)=Nn​(x)+f[x0​,x1​,⋯,xn​,x](x−x0​)⋯(x−xn​)
若 f ( x ) ∈ C n + 1 [ a , b ] f(x)\in C^{n+1}[a,b] f(x)∈Cn+1[a,b],则有
R n ( x ) = f ( x ) − N n ( x ) = f [ x 0 , x 1 , ⋯ , x n , x ] ( x − x 0 ) ⋯ ( x − x n ) f [ x 0 , x 1 , ⋯ , x n , x ] = f ( n + 1 ) ( ξ ) ( n + 1 ) ! R_n(x)=f(x)-N_n(x)=f[x_0,x_1,\cdots,x_n,x](x-x_0)\cdots(x-x_n)\\f[x_0,x_1,\cdots,x_n,x]=\frac{f^{(n+1)}(\xi)}{(n+1)!} Rn​(x)=f(x)−Nn​(x)=f[x0​,x1​,⋯,xn​,x](x−x0​)⋯(x−xn​)f[x0​,x1​,⋯,xn​,x]=(n+1)!f(n+1)(ξ)​
一般地,若 f ( x ) ∈ C n + 1 [ a , b ] f(x)\in C^{n+1}[a,b] f(x)∈Cn+1[a,b],则存在 ξ ∈ ( a , b ) \xi\in(a,b) ξ∈(a,b),使得
f [ x 0 , x 1 , ⋯ , x n ] = f ( n ) ( ξ ) n ! f[x_0,x_1,\cdots,x_n]=\frac{f^{(n)}(\xi)}{n!} f[x0​,x1​,⋯,xn​]=n!f(n)(ξ)​

差分与等距结点下的牛顿公式

设函数 f ( x ) f(x) f(x) 在等距结点 x k = x 0 + k h ( k = 0 , 1 , 2 , ⋯ ) x_k=x_0+kh(k=0,1,2,\cdots) xk​=x0​+kh(k=0,1,2,⋯) 上的值 f ( x k ) f(x_k) f(xk​) 已知,步长 h h h 为常数。

定义2:函数 y = f ( x ) y=f(x) y=f(x) 在 x k x_k xk​ 处以 h h h 为步长的一阶向前差分与二阶向前差分:
Δ y k = Δ f ( x k ) = f ( x k + 1 ) − f ( x k ) Δ 2 y k = Δ 2 f ( x k ) = Δ ( Δ f ( x k ) ) = Δ f ( x k + 1 ) − Δ f ( x k ) = f ( x k + 2 ) − 2 f ( x k + 1 ) + f ( x k ) \Delta y_k=\Delta f(x_k)=f(x_{k+1})-f(x_k)\\\Delta^2y_k=\Delta^2f(x_k)=\Delta(\Delta f(x_k))=\Delta f(x_{k+1})-\Delta f(x_k)=f(x_{k+2})-2f(x_{k+1})+f(x_k) Δyk​=Δf(xk​)=f(xk+1​)−f(xk​)Δ2yk​=Δ2f(xk​)=Δ(Δf(xk​))=Δf(xk+1​)−Δf(xk​)=f(xk+2​)−2f(xk+1​)+f(xk​)
一般性, m m m 阶向前差分:
Δ m y k = Δ m f ( x k ) = Δ ( Δ m − 1 f ( x k ) ) = Δ m − 1 f ( x k + 1 ) − Δ m − 1 f ( x k ) \Delta^my_k=\Delta^mf(x_k)=\Delta(\Delta^{m-1}f(x_k))=\Delta^{m-1}f(x_{k+1})-\Delta^{m-1}f(x_k) Δmyk​=Δmf(xk​)=Δ(Δm−1f(xk​))=Δm−1f(xk+1​)−Δm−1f(xk​)

定义3:函数 y = f ( x ) y=f(x) y=f(x) 在 x k x_k xk​ 处以 h h h 为步长的一阶向后差分与二阶向后差分:
▽ y k = ▽ f ( x k ) = f ( x k ) − f ( x k − 1 ) ▽ 2 y k = ▽ 2 f ( x k ) = ▽ ( ▽ f ( x k ) ) = ▽ f ( x k ) − ▽ f ( x k − 1 ) = f ( x k ) − 2 f ( x k − 1 ) + f ( x k − 2 ) \triangledown y_k=\triangledown f(x_k)=f(x_k)-f(x_{k-1})\\\triangledown^2y_k=\triangledown^2f(x_k)=\triangledown(\triangledown f(x_k))=\triangledown f(x_k)- \triangledown f(x_{k-1})=f(x_k)-2f(x_{k-1})+f(x_{k-2}) ▽yk​=▽f(xk​)=f(xk​)−f(xk−1​)▽2yk​=▽2f(xk​)=▽(▽f(xk​))=▽f(xk​)−▽f(xk−1​)=f(xk​)−2f(xk−1​)+f(xk−2​)
一般性, m m m 阶向后差分:
▽ m y k = ▽ m f ( x k ) = ▽ ( ▽ m − 1 f ( x k ) ) = ▽ m − 1 f ( x k ) − ▽ m − 1 f ( x k − 1 ) \triangledown^my_k=\triangledown^mf(x_k)=\triangledown(\triangledown^{m-1}f(x_k))=\triangledown^{m-1}f(x_k)-\triangledown^{m-1}f(x_{k-1}) ▽myk​=▽mf(xk​)=▽(▽m−1f(xk​))=▽m−1f(xk​)−▽m−1f(xk−1​)

差商与差分关系
f [ x 0 , x 1 , ⋯ , x m ] = Δ m f ( x 0 ) m ! h m f [ x n , x n − 1 , ⋯ , x n − m ] = ▽ m f ( x n ) m ! h m f[x_0,x_1,\cdots,x_m]=\frac{\Delta^mf(x_0)}{m!h^m}\\f[x_n,x_{n-1},\cdots,x_{n-m}]=\frac{\triangledown^mf(x_n)}{m!h^m} f[x0​,x1​,⋯,xm​]=m!hmΔmf(x0​)​f[xn​,xn−1​,⋯,xn−m​]=m!hm▽mf(xn​)​

等距结点的Newton型多项式插值的差分形式:引入变量 t t t ,设 x = x 0 + t h x=x_0+th x=x0​+th (有 x − x i = ( t − i ) h x-x_i=(t-i)h x−xi​=(t−i)h),则等距结点的Newton插值公式
N n ( x 0 + t h ) = f ( x 0 ) + t Δ f ( x 0 ) + t ( t − 1 ) 2 ! Δ 2 f ( x 0 ) + ⋯ + t ( t − 1 ) ⋯ ( t − n + 1 ) n ! Δ n f ( x 0 ) N_n(x_0+th)=f(x_0)+t\Delta f(x_0)+\frac{t(t-1)}{2!}\Delta^2f(x_0)+\cdots+\frac{t(t-1)\cdots(t-n+1)}{n!}\Delta^nf(x_0) Nn​(x0​+th)=f(x0​)+tΔf(x0​)+2!t(t−1)​Δ2f(x0​)+⋯+n!t(t−1)⋯(t−n+1)​Δnf(x0​)
若 f ( x ) ∈ C n + 1 [ a , b ] f(x)\in C^{n+1}[a,b] f(x)∈Cn+1[a,b],则插值误差可表示为
R n ( x ) = R n ( x 0 + t h ) = t ( t − 1 ) ⋯ ( t − n ) ( n + 1 ) ! h n + 1 f ( n + 1 ) ( ζ ) , ζ ∈ ( x 0 , x n ) R_n(x)=R_n(x_0+th)=\frac{t(t-1)\cdots(t-n)}{(n+1)!}h^{n+1}f^{(n+1)}(\zeta),\zeta\in(x_0,x_n) Rn​(x)=Rn​(x0​+th)=(n+1)!t(t−1)⋯(t−n)​hn+1f(n+1)(ζ),ζ∈(x0​,xn​)
(1)牛顿表初公式牛顿向前差分公式:若 x x x 在 x 0 x_0 x0​ 附近,选取的牛顿型插值公式为
N n ( x 0 + t h ) = f ( x 0 ) + t Δ f ( x 0 ) + t ( t − 1 ) 2 ! Δ 2 f ( x 0 ) + ⋯ + t ( t − 1 ) ⋯ ( t − n + 1 ) n ! Δ n f ( x 0 ) N_n(x_0+th)=f(x_0)+t\Delta f(x_0)+\frac{t(t-1)}{2!}\Delta^2f(x_0)+\cdots+\frac{t(t-1)\cdots(t-n+1)}{n!}\Delta^nf(x_0) Nn​(x0​+th)=f(x0​)+tΔf(x0​)+2!t(t−1)​Δ2f(x0​)+⋯+n!t(t−1)⋯(t−n+1)​Δnf(x0​)
(2)牛顿表末公式牛顿向后差分公式:若 x x x 在 x n x_n xn​ 附近,选取的牛顿型插值公式为
N n ( x ) = N n ( x n + t h ) = f ( x n ) + f [ x n , x n − 1 ] ( x − x n ) + f [ x n , x n − 1 , x n − 2 ] ( x − x n ) ( x − x n − 1 ) + f [ x n , x n − 1 , ⋯ , x 0 ] ( x − x n ) ( x − x n − 1 ) ⋯ ( x − x 1 ) = f ( x n ) + t ▽ f ( x n ) + t ( t + 1 ) 2 ! ▽ 2 f ( x n ) + ⋯ + t ( t + 1 ) ⋯ ( t + n − 1 ) n ! ▽ n f ( x n ) 其 中 , x k = x n − ( n − k ) h R n ( x ) = R n ( x n + t h ) = t ( t + 1 ) ⋯ ( t + n ) ( n + 1 ) ! h n + 1 f ( n + 1 ) ( ζ ) , ζ ∈ ( x 0 , x n ) N_n(x)=N_n(x_n+th)=f(x_n)+f[x_n,x_{n-1}](x-x_n)+f[x_n,x_{n-1},x_{n-2}](x-x_n)(x-x_{n-1})\\+f[x_n,x_{n-1},\cdots,x_0](x-x_n)(x-x_{n-1})\cdots(x-x_1)\\=f(x_n)+t\triangledown f(x_n)+\frac{t(t+1)}{2!}\triangledown^2f(x_n)+\cdots+\frac{t(t+1)\cdots(t+n-1)}{n!}\triangledown^nf(x_n)\\其中,x_k=x_n-(n-k)h\\R_n(x)=R_n(x_n+th)=\frac{t(t+1)\cdots(t+n)}{(n+1)!}h^{n+1}f^{(n+1)}(\zeta),\zeta\in(x_0,x_n) Nn​(x)=Nn​(xn​+th)=f(xn​)+f[xn​,xn−1​](x−xn​)+f[xn​,xn−1​,xn−2​](x−xn​)(x−xn−1​)+f[xn​,xn−1​,⋯,x0​](x−xn​)(x−xn−1​)⋯(x−x1​)=f(xn​)+t▽f(xn​)+2!t(t+1)​▽2f(xn​)+⋯+n!t(t+1)⋯(t+n−1)​▽nf(xn​)其中,xk​=xn​−(n−k)hRn​(x)=Rn​(xn​+th)=(n+1)!t(t+1)⋯(t+n)​hn+1f(n+1)(ζ),ζ∈(x0​,xn​)
(3)牛顿表中插值公式

定义4: δ y k = f ( x k + h 2 ) − f ( x k − h 2 ) = y k + 1 2 − y k − 1 2 \delta y_k=f(x_k+\frac{h}{2})-f(x_k-\frac{h}{2})=y_{k+\frac{1}{2}}-y_{k-\frac{1}{2}} δyk​=f(xk​+2h​)−f(xk​−2h​)=yk+21​​−yk−21​​ 称为一阶中心差分。

δ m y k = δ m − 1 y k + 1 2 − δ m − 1 y k − 1 2 \delta^my_k=\delta^{m-1}y_{k+\frac{1}{2}}-\delta^{m-1}y_{k-\frac{1}{2}} δmyk​=δm−1yk+21​​−δm−1yk−21​​ 称为 m m m 阶中心差分。

埃尔米特(Hermite)插值

插值在给定的结点处,不但要求插值多项式的函数值与被插函数的函数值相同,同时还要求在结点处,插值多项式的一阶直至指定阶的导数值也与被插函数的相应阶导数值相等。

设 f ( x ) f(x) f(x) 为 [ a , b ] [a,b] [a,b] 上充分光滑函数,对给定的插值结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 及相应的重数标号 { m i } i = 0 n \{m_i\}^n_{i=0} {mi​}i=0n​,当 ∑ i = 0 n m i = N + 1 \sum_{i=0}^nm_i=N+1 ∑i=0n​mi​=N+1 时,若有 H ( x ) ∈ P n H(x)\in P_n H(x)∈Pn​ 满足:
H ( l ) ( x i ) = f ( l ) ( x i ) , l = 0 , 1 , ⋯ , m i − 1 , i = 0 , 1 , ⋯ , n H^{(l)}(x_i)=f^{(l)}(x_i),l=0,1,\cdots,m_i-1,i=0,1,\cdots,n H(l)(xi​)=f(l)(xi​),l=0,1,⋯,mi​−1,i=0,1,⋯,n
则称 H ( x ) H(x) H(x) 为 f ( x ) f(x) f(x) 关于结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 及重数标号 { m i } i = 0 n \{m_i\}^n_{i=0} {mi​}i=0n​ 的埃尔米特插值多项式。

二重( m i = 2 m_i=2 mi​=2): f ( x ) ∈ C 2 [ a , b ] f(x)\in C^2[a,b] f(x)∈C2[a,b],若有 H 2 n + 1 ( x i ) = f ( x i ) , H 2 n + 1 ′ ( x i ) = f ′ ( x i ) , i = 0 , 1 , ⋯ , n H_{2n+1}(x_i)=f(x_i),H'_{2n+1}(x_i)=f'(x_i),i=0,1,\cdots,n H2n+1​(xi​)=f(xi​),H2n+1′​(xi​)=f′(xi​),i=0,1,⋯,n,称 H 2 n + 1 ( x ) H_{2n+1}(x) H2n+1​(x) 为 f ( x ) f(x) f(x) 关于结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 的二重埃尔米特插值多项式,其存在且唯一(由克拉默法则易得)。

基函数构造法:
H 2 n + 1 ( x ) = ∑ i = 0 n A i ( x ) f ( x i ) + ∑ i = 0 n B i ( x ) f ′ ( x i ) H_{2n+1}(x)=\sum_{i=0}^nA_i(x)f(x_i)+\sum_{i=0}^nB_i(x)f'(x_i) H2n+1​(x)=i=0∑n​Ai​(x)f(xi​)+i=0∑n​Bi​(x)f′(xi​)
在 P 2 n + 1 P_{2n+1} P2n+1​ 上构造 2 n + 2 2n+2 2n+2 个基函数 { A i ( x ) , B i ( x ) } i = 0 n \{A_i(x),B_i(x)\}^n_{i=0} {Ai​(x),Bi​(x)}i=0n​,分别满足
{ A i ( x j ) = δ i j A i ′ ( x j ) = 0 , j = 0 , 1 , ⋯ , n , i = 0 , 1 , ⋯ , n { B i ( x j ) = 0 B i ′ ( x j ) = δ i j , j = 0 , 1 , ⋯ , n , i = 0 , 1 , ⋯ , n \begin{cases}A_i(x_j)=\delta_{ij}\\A'_i(x_j)=0\end{cases},j=0,1,\cdots,n,i=0,1,\cdots,n\\\begin{cases}B_i(x_j)=0\\B'_i(x_j)=\delta_{ij}\end{cases},j=0,1,\cdots,n,i=0,1,\cdots,n {Ai​(xj​)=δij​Ai′​(xj​)=0​,j=0,1,⋯,n,i=0,1,⋯,n{Bi​(xj​)=0Bi′​(xj​)=δij​​,j=0,1,⋯,n,i=0,1,⋯,n
可得 x 0 , x 1 , ⋯ , x i − 1 , x i + 1 , ⋯ , x n x_0,x_1,\cdots,x_{i-1},x_{i+1},\cdots,x_n x0​,x1​,⋯,xi−1​,xi+1​,⋯,xn​ 为 A i ( x ) A_i(x) Ai​(x) 的二重零点, A i ( x ) ∈ P 2 n + 1 A_i(x)\in P_{2n+1} Ai​(x)∈P2n+1​,有:
A i ( x ) = ( a i x + b i ) [ ( x − x 0 ) 2 ( x − x 1 ) 2 ⋯ ( x − x i − 1 ) 2 ( x − x i + 1 ) 2 ⋯ ( x − x n ) 2 ] 也 可 设 : A i ( x ) = [ a i ( x − x i ) + b i ] ∏ j = 0 , j ≠ i n ( x − x j ) 2 A_i(x)=(a_ix+b_i)[(x-x_0)^2(x-x_1)^2\cdots(x-x_{i-1})^2(x-x_{i+1})^2\cdots(x-x_n)^2]\\也可设:A_i(x)=[a_i(x-x_i)+b_i]\prod_{j=0,j\neq i}^n(x-x_j)^2 Ai​(x)=(ai​x+bi​)[(x−x0​)2(x−x1​)2⋯(x−xi−1​)2(x−xi+1​)2⋯(x−xn​)2]也可设:Ai​(x)=[ai​(x−xi​)+bi​]j=0,j​=i∏n​(x−xj​)2
由 A i ( x i ) = 1 , A i ′ ( x i ) = 0 A_i(x_i)=1,A'_i(x_i)=0 Ai​(xi​)=1,Ai′​(xi​)=0 得
b i = 1 / ∏ j = 0 , j ≠ i n ( x i − x j ) 2 A i ( x ) = [ 1 − 2 ( x − x i ) ∑ j = 0 , j ≠ i n 1 x i − x j ] l i 2 ( x ) b_i=1/\prod_{j=0,j\neq i}^n(x_i-x_j)^2\\A_i(x)=[1-2(x-x_i)\sum_{j=0,j\neq i}^n\frac{1}{x_i-x_j}]l_i^2(x) bi​=1/j=0,j​=i∏n​(xi​−xj​)2Ai​(x)=[1−2(x−xi​)j=0,j​=i∑n​xi​−xj​1​]li2​(x)
其中, l i ( x ) l_i(x) li​(x) 为关于点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 的Lagrange 基函数。用类似的方法,可得到
B i ( x ) = ( x − x i ) l i 2 ( x ) H 2 n + 1 ( x ) = ∑ i = 0 n A i ( x ) f ( x i ) + ∑ i = 0 n B i ( x ) f ′ ( x i ) B_i(x)=(x-x_i)l_i^2(x)\\H_{2n+1}(x)=\sum_{i=0}^nA_i(x)f(x_i)+\sum_{i=0}^nB_i(x)f'(x_i) Bi​(x)=(x−xi​)li2​(x)H2n+1​(x)=i=0∑n​Ai​(x)f(xi​)+i=0∑n​Bi​(x)f′(xi​)
二重埃尔米特插值多项式的误差分析:若 f ∈ C 2 n + 2 [ a , b ] f\in C^{2n+2}[a,b] f∈C2n+2[a,b],则 f ( x ) f(x) f(x) 关于 [ a , b ] [a,b] [a,b] 上结点 { x i } i = 0 n \{x_i\}^n_{i=0} {xi​}i=0n​ 的二重埃尔米特插值多项式误差为
f ( x ) − H 2 n + 1 ( x ) = f ( 2 n + 2 ) ( ξ ) ( 2 n + 2 ) ! ω n + 1 2 ( x ) m i n { x 0 , x 1 , ⋯ , x n , x } ≤ ξ = ξ ( x ) ≤ m a x { x 0 , x 1 , ⋯ , x n , x } f(x)-H_{2n+1}(x)=\frac{f^{(2n+2)}(\xi)}{(2n+2)!}\omega^2_{n+1}(x)\\min\{x_0,x_1,\cdots,x_n,x\}\leq\xi=\xi(x)\leq max\{x_0,x_1,\cdots,x_n,x\} f(x)−H2n+1​(x)=(2n+2)!f(2n+2)(ξ)​ωn+12​(x)min{x0​,x1​,⋯,xn​,x}≤ξ=ξ(x)≤max{x0​,x1​,⋯,xn​,x}
具有两个结点 x 0 , x 1 x_0,x_1 x0​,x1​ 的二重埃尔米特插值为一个三次多项式,基函数分别为:
A 0 ( x ) = [ 1 − 2 x − x 0 x 0 − x 1 ] ( x − x 1 x 0 − x 1 ) 2 A 1 ( x ) = [ 1 − 2 x − x 1 x 1 − x 0 ] ( x − x 1 x 0 − x 1 ) 2 B 0 ( x ) = ( x − x 0 ) ( x − x 1 x 0 − x 1 ) 2 B 1 ( x ) = ( x − x 1 ) ( x − x 1 x 0 − x 1 ) 2 A_0(x)=[1-2\frac{x-x_0}{x_0-x_1}](\frac{x-x_1}{x_0-x_1})^2\\A_1(x)=[1-2\frac{x-x_1}{x_1-x_0}](\frac{x-x_1}{x_0-x_1})^2\\B_0(x)=(x-x_0)(\frac{x-x_1}{x_0-x_1})^2\\B_1(x)=(x-x_1)(\frac{x-x_1}{x_0-x_1})^2 A0​(x)=[1−2x0​−x1​x−x0​​](x0​−x1​x−x1​​)2A1​(x)=[1−2x1​−x0​x−x1​​](x0​−x1​x−x1​​)2B0​(x)=(x−x0​)(x0​−x1​x−x1​​)2B1​(x)=(x−x1​)(x0​−x1​x−x1​​)2
所以,二重埃尔米特插值多项式为:
H 3 ( x ) = A 0 ( x ) f ( x 0 ) + A 1 ( x ) f ( x 1 ) + B 0 ( x ) f ′ ( x 0 ) + B 1 ( x ) f ′ ( x 1 ) H_3(x)=A_0(x)f(x_0)+A_1(x)f(x_1)+B_0(x)f'(x_0)+B_1(x)f'(x_1) H3​(x)=A0​(x)f(x0​)+A1​(x)f(x1​)+B0​(x)f′(x0​)+B1​(x)f′(x1​)
若 f ∈ C 4 [ a , b ] f\in C^4[a,b] f∈C4[a,b],则有误差表达式:
R 3 ( x ) = f ( x ) − H 3 ( x ) = f ( 4 ) ( ξ ) 4 ! ( x − x 0 ) 2 ( x − x 1 ) 2 R_3(x)=f(x)-H_3(x)=\frac{f^{(4)}(\xi)}{4!}(x-x_0)^2(x-x_1)^2 R3​(x)=f(x)−H3​(x)=4!f(4)(ξ)​(x−x0​)2(x−x1​)2

一般形式的Hermite插值问题:求一个次数不大于 n + r + 1 n+r+1 n+r+1 的代数多项式 H ( x ) H(x) H(x) ,满足:
H ( x i ) = f ( x i ) , i = 0 , 1 , 2 , ⋯ , n H ′ ( x i ) = f ′ ( x i ) , i = 0 , 1 , 2 , ⋯ , r ( r ≤ n ) H(x_i)=f(x_i),i=0,1,2,\cdots,n\\H'(x_i)=f'(x_i),i=0,1,2,\cdots,r(r\leq n) H(xi​)=f(xi​),i=0,1,2,⋯,nH′(xi​)=f′(xi​),i=0,1,2,⋯,r(r≤n)
令 H ( x ) = ∑ k = 0 n h k ( x ) f ( x k ) + ∑ k = 0 r h ˉ k ( x ) f ′ ( x k ) H(x)=\sum_{k=0}^nh_k(x)f(x_k)+\sum_{k=0}^r\bar{h}_k(x)f'(x_k) H(x)=∑k=0n​hk​(x)f(xk​)+∑k=0r​hˉk​(x)f′(xk​),其中 h k ( x ) 、 h ˉ k ( x ) h_k(x)、\bar{h}_k(x) hk​(x)、hˉk​(x) 都是 n + r + 1 n+r+1 n+r+1 次待定多项式,并且满足:
h k ( x i ) = { 1 i = k 0 i ≠ k i , k = 0 , 1 , ⋯ , n h k ′ ( x i ) = 0 , k = 0 , 1 , ⋯ , n ; i = 0 , 1 , ⋯ , r h ˉ k ′ ( x i ) = { 1 i = k 0 i ≠ k i , k = 0 , 1 , ⋯ , r h ˉ k ( x i ) = 0 , k = 0 , 1 , ⋯ , r ; i = 0 , 1 , ⋯ , n h_k(x_i)=\begin{cases}1\ \ i=k\\0\ \ i\neq k\end{cases}\ \ \ \ i,k=0,1,\cdots,n\\h'_k(x_i)=0,\ \ k=0,1,\cdots,n;i=0,1,\cdots,r\\\bar{h}_k'(x_i)=\begin{cases}1\ \ i=k\\0\ \ i\neq k\end{cases}\ \ \ \ i,k=0,1,\cdots,r\\\bar{h}_k(x_i)=0,\ \ k=0,1,\cdots,r;i=0,1,\cdots,n hk​(xi​)={1  i=k0  i​=k​    i,k=0,1,⋯,nhk′​(xi​)=0,  k=0,1,⋯,n;i=0,1,⋯,rhˉk′​(xi​)={1  i=k0  i​=k​    i,k=0,1,⋯,rhˉk​(xi​)=0,  k=0,1,⋯,r;i=0,1,⋯,n
1、求解 h k ( x ) ( k = 0 , 1 , ⋯ , n ) h_k(x)(k=0,1,\cdots,n) hk​(x)(k=0,1,⋯,n):由条件可得, x i ( i = 0 , 1 , ⋯ , r ; i ≠ k ) x_i(i=0,1,\cdots,r;i\neq k) xi​(i=0,1,⋯,r;i​=k) 是 h k ( x ) h_k(x) hk​(x) 的二重零点, x i ( i = r + 1 , r + 2 , ⋯ , n ; i ≠ k ) x_i(i=r+1,r+2,\cdots,n;i\neq k) xi​(i=r+1,r+2,⋯,n;i​=k) 是 h k ( x ) h_k(x) hk​(x) 的零点。

当 0 ≤ k ≤ r 0\leq k\leq r 0≤k≤r 时:
h k ( x ) = ( A x + B ) ( x − x 0 ) 2 ⋯ ( x − x k − 1 ) 2 ( x − x k + 1 ) 2 ⋯ ( x − x r ) 2 ( x − x r + 1 ) ⋯ ( x − x n ) = ( A x + B ) ∏ i = 0 , i ≠ k r ( x − x i ) 2 ∏ i = r + 1 n ( x − x i ) h_k(x)=(Ax+B)(x-x_0)^2\cdots(x-x_{k-1})^2(x-x_{k+1})^2\cdots(x-x_r)^2(x-x_{r+1})\cdots(x-x_n)\\=(Ax+B)\prod_{i=0,i\neq k}^r(x-x_i)^2\prod_{i=r+1}^n(x-x_i) hk​(x)=(Ax+B)(x−x0​)2⋯(x−xk−1​)2(x−xk+1​)2⋯(x−xr​)2(x−xr+1​)⋯(x−xn​)=(Ax+B)i=0,i​=k∏r​(x−xi​)2i=r+1∏n​(x−xi​)

又由 h k ( x k ) = 1 , h k ′ ( x k ) = 0 h_k(x_k)=1,h_k'(x_k)=0 hk​(xk​)=1,hk′​(xk​)=0 得:
( A x k + B ) ∏ i = 0 , i ≠ k r ( x k − x i ) 2 ∏ i = r + 1 n ( x k − x i ) = 1 A ∏ i = 0 i ≠ k r ( x k − x i ) 2 ∏ i = r + 1 n ( x k − x i ) + 2 ( A x k + B ) ∑ j = 0 r ( x k − x j ) ∏ i = 0 i ≠ j i ≠ k r ( x k − x i ) 2 ∏ i = r + 1 n ( x k − x i ) + ( A x k + B ) ∑ j = r + 1 n ∏ i = 0 i ≠ k r ( x k − x i ) 2 ∏ i = r + 1 i ≠ j n ( x k − x i ) = 0 (Ax_k+B)\prod_{i=0,i\neq k}^r(x_k-x_i)^2\prod_{i=r+1}^n(x_k-x_i)=1\\A\prod_{i=0\\i\neq k}^r(x_k-x_i)^2\prod_{i=r+1}^n(x_k-x_i)+2(Ax_k+B)\sum_{j=0}^r(x_k-x_j)\prod_{i=0\\i\neq j\\i\neq k}^r(x_k-x_i)^2\prod_{i=r+1}^n(x_k-x_i)+(Ax_k+B)\sum_{j=r+1}^n\prod_{i=0\\i\neq k}^r(x_k-x_i)^2\prod_{i=r+1\\i\neq j}^n(x_k-x_i)=0 (Axk​+B)i=0,i​=k∏r​(xk​−xi​)2i=r+1∏n​(xk​−xi​)=1Ai=0i​=k∏r​(xk​−xi​)2i=r+1∏n​(xk​−xi​)+2(Axk​+B)j=0∑r​(xk​−xj​)i=0i​=ji​=k∏r​(xk​−xi​)2i=r+1∏n​(xk​−xi​)+(Axk​+B)j=r+1∑n​i=0i​=k∏r​(xk​−xi​)2i=r+1i​=j∏n​(xk​−xi​)=0
解得
A = − 2 ∑ j = 0 r 1 x k − x j + ∑ j = r + 1 n 1 x k − x j ∏ i = 0 i ≠ k r ( x k − x i ) 2 ∏ i = r + 1 n ( x k − x i ) B = − 1 − A x k ∏ i = 0 i ≠ k r ( x k − x i ) 2 ∏ i = r + 1 n ( x k − x i ) h k ( x ) = { 1 − ( x − x k ) [ l k n ′ ( x k ) + l k r ′ ( x k ) ] } l k n ( x ) l k r ( x ) , k = 0 , 1 , ⋯ , r 其 中 : l k n ( x ) = ∏ i = 0 i ≠ k n x − x i x k − x i l k r ( x ) = ∏ i = 0 i ≠ k r x − x i x k − x i l k n ′ ( x k ) = ∏ i = 0 i ≠ k n 1 x k − x i l k r ′ ( x k ) = ∏ i = 0 i ≠ k r 1 x k − x i A=-\frac{2\sum_{j=0}^r\frac{1}{x_k-x_j}+\sum_{j=r+1}^n\frac{1}{x_k-x_j}}{\prod_{i=0\\i\neq k}^r(x_k-x_i)^2\prod_{i=r+1}^n(x_k-x_i)}\\B=-\frac{1-Ax_k}{\prod_{i=0\\i\neq k}^r(x_k-x_i)^2\prod_{i=r+1}^n(x_k-x_i)}\\h_k(x)=\{1-(x-x_k)[l'_{kn}(x_k)+l'_{kr}(x_k)]\}l_{kn}(x)l_{kr}(x),k=0,1,\cdots,r\\其中:l_{kn}(x)=\prod_{i=0\\i\neq k}^n\frac{x-x_i}{x_k-x_i}\\l_{kr}(x)=\prod_{i=0\\i\neq k}^r\frac{x-x_i}{x_k-x_i}\\l'_{kn}(x_k)=\prod_{i=0\\i\neq k}^n\frac{1}{x_k-x_i}\\l'_{kr}(x_k)=\prod_{i=0\\i\neq k}^r\frac{1}{x_k-x_i} A=−∏i=0i​=kr​(xk​−xi​)2∏i=r+1n​(xk​−xi​)2∑j=0r​xk​−xj​1​+∑j=r+1n​xk​−xj​1​​B=−∏i=0i​=kr​(xk​−xi​)2∏i=r+1n​(xk​−xi​)1−Axk​​hk​(x)={1−(x−xk​)[lkn′​(xk​)+lkr′​(xk​)]}lkn​(x)lkr​(x),k=0,1,⋯,r其中:lkn​(x)=i=0i​=k∏n​xk​−xi​x−xi​​lkr​(x)=i=0i​=k∏r​xk​−xi​x−xi​​lkn′​(xk​)=i=0i​=k∏n​xk​−xi​1​lkr′​(xk​)=i=0i​=k∏r​xk​−xi​1​
当 r + 1 ≤ k ≤ n r+1\leq k \leq n r+1≤k≤n 时, h k ( x ) h_k(x) hk​(x) 具有如下形式:
h k ( x ) = C ∏ i = 0 r ( x − x i ) 2 ∏ i = r + 1 i ≠ k n ( x − x i ) h_k(x)=C\prod_{i=0}^r(x-x_i)^2\prod_{i=r+1\\i\neq k}^n(x-x_i) hk​(x)=Ci=0∏r​(x−xi​)2i=r+1i​=k∏n​(x−xi​)
由 h k ( x k ) = 1 h_k(x_k)=1 hk​(xk​)=1 得:
C = 1 ∏ i = 0 r ( x k − x i ) 2 ∏ i = r + 1 i ≠ k n ( x k − x i ) h k ( x ) = w r ( x ) w r ( x k ) l k n ( x ) , k = r + 1 , r + 2 , ⋯ , n 其 中 : w r ( x ) = ∏ i = 0 r ( x − x i ) w r ( x k ) = ∏ i = 0 r ( x k − x i ) l k n ( x ) = ∏ i = 0 i ≠ k n x − x i x k − x i C=\frac{1}{\prod_{i=0}^r(x_k-x_i)^2\prod_{i=r+1\\i\neq k}^n(x_k-x_i)}\\h_k(x)=\frac{w_r(x)}{w_r(x_k)}l_{kn}(x),k=r+1,r+2,\cdots,n\\其中:w_r(x)=\prod_{i=0}^r(x-x_i)\\w_r(x_k)=\prod_{i=0}^r(x_k-x_i)\\l_{kn}(x)=\prod_{i=0\\i\neq k}^n\frac{x-x_i}{x_k-x_i} C=∏i=0r​(xk​−xi​)2∏i=r+1i​=kn​(xk​−xi​)1​hk​(x)=wr​(xk​)wr​(x)​lkn​(x),k=r+1,r+2,⋯,n其中:wr​(x)=i=0∏r​(x−xi​)wr​(xk​)=i=0∏r​(xk​−xi​)lkn​(x)=i=0i​=k∏n​xk​−xi​x−xi​​
2、求解 h ˉ k ( x ) ( k = 0 , 1 , ⋯ , n ) \bar{h}_k(x)(k=0,1,\cdots,n) hˉk​(x)(k=0,1,⋯,n):由条件可得, x i ( i = 0 , 1 , ⋯ , r ; i ≠ k ) x_i(i=0,1,\cdots,r;i\neq k) xi​(i=0,1,⋯,r;i​=k) 是 h ˉ k ( x ) \bar{h}_k(x) hˉk​(x) 的二重零点, x i ( i = k , r + 1 , r + 2 , ⋯ , n ) x_i(i=k,r+1,r+2,\cdots,n) xi​(i=k,r+1,r+2,⋯,n) 是 h ˉ k ( x ) \bar{h}_k(x) hˉk​(x) 的零点。

当 0 ≤ k ≤ r 0\leq k\leq r 0≤k≤r 时:
h ˉ k ( x ) = D ∏ i = 0 n ( x − x i ) ∏ i = 0 i ≠ k r ( x − x i ) \bar{h}_k(x)=D\prod_{i=0}^n(x-x_i)\prod_{i=0\\i\neq k}^r(x-x_i) hˉk​(x)=Di=0∏n​(x−xi​)i=0i​=k∏r​(x−xi​)
由 h ˉ k ′ ( x k ) = 1 \bar{h}'_k(x_k)=1 hˉk′​(xk​)=1得
D = 1 ∑ j = 0 n ∏ i = 0 i ≠ j n ( x k − x i ) ∏ i = 0 i ≠ k r ( x k − x i ) + ∑ j = 0 j ≠ k r ∏ i = 0 n ( x k − x i ) ∏ i = 0 i ≠ k i ≠ j r ( x k − x i ) h ˉ k ( x ) = ( x − x k ) l k n ( x ) l k r ( x ) , k = 0 , 1 , ⋯ , r D=\frac{1}{\sum_{j=0}^n\prod_{i=0\\i\neq j}^n(x_k-x_i)\prod_{i=0\\i\neq k}^r(x_k-x_i)+\sum_{j=0\\j\neq k}^r\prod_{i=0}^n(x_k-x_i)\prod_{i=0\\i\neq k\\i\neq j}^r(x_k-x_i)}\\\bar{h}_k(x)=(x-x_k)l_{kn}(x)l_{kr}(x),k=0,1,\cdots,r D=∑j=0n​∏i=0i​=jn​(xk​−xi​)∏i=0i​=kr​(xk​−xi​)+∑j=0j​=kr​∏i=0n​(xk​−xi​)∏i=0i​=ki​=jr​(xk​−xi​)1​hˉk​(x)=(x−xk​)lkn​(x)lkr​(x),k=0,1,⋯,r

补充:重节点差商
f [ x 0 , x 1 , x 2 , x 1 ] = f [ x 1 , x 2 , x 1 ] − f [ x 0 , x 1 , x 2 ] x 1 − x 0 f [ x 1 , x 2 , x 1 ] = f [ x 2 , x 1 ] − f [ x 1 , x 1 ] x 2 − x 1 f [ x 1 , x 1 ] = lim ⁡ x 2 → x 1 f [ x 1 , x 2 ] = lim ⁡ x 2 → x 1 f ( x 2 ) − f ( x 1 ) x 2 − x 1 = f ′ ( x 1 ) 类 似 的 , f [ x 1 , x 1 , x 1 ] = 1 2 ! f ′ ′ ( x 1 ) f [ x 1 , x 1 , ⋯ , x 1 ⏟ n + 1 个 ] = 1 n ! f ( n ) ( x 1 ) f[x_0,x_1,x_2,x_1]=\frac{f[x_1,x_2,x_1]-f[x_0,x_1,x_2]}{x_1-x_0}\\f[x_1,x_2,x_1]=\frac{f[x_2,x_1]-f[x_1,x_1]}{x_2-x_1}\\f[x_1,x_1]=\lim_{x_2\rightarrow x_1}f[x_1,x_2]=\lim_{x_2\rightarrow x_1}\frac{f(x_2)-f(x_1)}{x_2-x_1}=f'(x_1)\\类似的,f[x_1,x_1,x_1]=\frac{1}{2!}f''(x_1)\\f[\underbrace{x_1,x_1,\cdots,x_1}_{n+1个}]=\frac{1}{n!}f^{(n)}(x_1) f[x0​,x1​,x2​,x1​]=x1​−x0​f[x1​,x2​,x1​]−f[x0​,x1​,x2​]​f[x1​,x2​,x1​]=x2​−x1​f[x2​,x1​]−f[x1​,x1​]​f[x1​,x1​]=x2​→x1​lim​f[x1​,x2​]=x2​→x1​lim​x2​−x1​f(x2​)−f(x1​)​=f′(x1​)类似的,f[x1​,x1​,x1​]=2!1​f′′(x1​)f[n+1个 x1​,x1​,⋯,x1​​​]=n!1​f(n)(x1​)
例如,已知 f ( x ) f(x) f(x) 在结点 x 0 , x 1 , x 2 x_0,x_1,x_2 x0​,x1​,x2​ 上的函数值和在 x 1 x_1 x1​ 处的导数值,求次数不超过3次的多项式 P ( x ) P(x) P(x):
P ( x ) = f ( x 0 ) + f [ x 0 , x 1 ] ( x − x 0 ) + f [ x 0 , x 1 , x 2 ] ( x − x 0 ) ( x − x 1 ) + f [ x 0 , x 1 , x 2 , x 1 ] ( x − x 0 ) ( x − x 1 ) ( x − x 2 ) P(x)=f(x_0)+f[x_0,x_1](x-x_0)+f[x_0,x_1,x_2](x-x_0)(x-x_1)+f[x_0,x_1,x_2,x_1](x-x_0)(x-x_1)(x-x_2) P(x)=f(x0​)+f[x0​,x1​](x−x0​)+f[x0​,x1​,x2​](x−x0​)(x−x1​)+f[x0​,x1​,x2​,x1​](x−x0​)(x−x1​)(x−x2​)

分段低次插值

龙格(Runge)现象:为减少逼近误差,盲目地提高插值阶是不可取的。一个解决办法:缩小插值区间,即分段低次插值

分段线性插值与分段二次插值

对给定区间 [ a , b ] [a,b] [a,b] 作分割: a = x 0 < x 1 < x 2 < ⋯ < x n = b a=x_0<x_1<x_2<\cdots<x_n=b a=x0​<x1​<x2​<⋯<xn​=b。在每个小区间 [ x i − 1 , x i ] [x_{i-1},x_i] [xi−1​,xi​] 上作 f ( x ) f(x) f(x) 以 x i − 1 , x i x_{i-1},x_i xi−1​,xi​ 为结点的线性插值,记为 L 1 ( x ) L_1(x) L1​(x),则
f ( x ) ≈ L 1 ( x ) = f ( x i − 1 ) x − x i x i − 1 − x i + f ( x i ) x − x i − 1 x i − x i − 1 f(x)\approx L_1(x)=f(x_{i-1})\frac{x-x_i}{x_{i-1}-x_i}+f(x_i)\frac{x-x_{i-1}}{x_i-x_{i-1}} f(x)≈L1​(x)=f(xi−1​)xi−1​−xi​x−xi​​+f(xi​)xi​−xi−1​x−xi−1​​
即为分段线性插值(折线插值)

特点:

  1. L 1 ( x ) ∈ C [ a , b ] L_1(x)\in C[a,b] L1​(x)∈C[a,b]。
  2. L 1 ( x ) L_1(x) L1​(x) 在 [ x i − 1 , x i ] [x_{i-1},x_i] [xi−1​,xi​] 上为一个不高于一次的多项式。

误差:若 f ( x ) ∈ C 2 [ a , b ] f(x)\in C^2[a,b] f(x)∈C2[a,b],则 ∣ f ( x ) − L 1 ( x ) ∣ ≤ M 2 8 h 2 |f(x)-L_1(x)|\leq\frac{M_2}{8}h^2 ∣f(x)−L1​(x)∣≤8M2​​h2,其中 M 2 = max ⁡ a ≤ x ≤ b ∣ f ′ ′ ( x ) ∣ , h i = x i − x i − 1 , h = max ⁡ 1 ≤ i ≤ n h i M_2=\max_{a\leq x\leq b}|f''(x)|,h_i=x_i-x_{i-1},h=\max_{1\leq i\leq n}h_i M2​=maxa≤x≤b​∣f′′(x)∣,hi​=xi​−xi−1​,h=max1≤i≤n​hi​

证明:当 x ∈ [ x i − 1 , x i ] x\in[x_{i-1},x_i] x∈[xi−1​,xi​] 时,可得:
f ( x ) − L 1 ( x ) = f ′ ′ ( ξ ) 2 ! ( x − x i − 1 ) ( x − x i ) ∣ f ( x ) − L 1 ( x ) ∣ ≤ M 2 2 ∣ ( x − x i − 1 ) ( x − x i ) ∣ ≤ M 2 2 ⋅ 1 4 ( x i − x i − 1 ) 2 ≤ M 2 8 h 2 f(x)-L_1(x)=\frac{f''(\xi)}{2!}(x-x_{i-1})(x-x_i)\\|f(x)-L_1(x)|\leq\frac{M_2}{2}|(x-x_{i-1})(x-x_i)|\leq\frac{M_2}{2}·\frac{1}{4}(x_i-x_{i-1})^2\leq\frac{M_2}{8}h^2 f(x)−L1​(x)=2!f′′(ξ)​(x−xi−1​)(x−xi​)∣f(x)−L1​(x)∣≤2M2​​∣(x−xi−1​)(x−xi​)∣≤2M2​​⋅41​(xi​−xi−1​)2≤8M2​​h2

由此可知,当区间分割加密,即 max ⁡ i ( x i − x i − 1 ) → 0 \max_i(x_i-x_{i-1})\rightarrow0 maxi​(xi​−xi−1​)→0,分段线性插值 L 1 ( x ) L_1(x) L1​(x) 收敛于 f ( x ) f(x) f(x)。

分段线性插值有很好的收敛性质,但却是不光滑的。

分段二次插值(分段抛物插值)
f ( x ) ≈ L 2 ( x ) = ∑ k = i − 1 i + 1 [ f ( x i ) ∏ j = i − 1 j ≠ k i + 1 ( x − x j x k − x j ) ] f(x)\approx L_2(x)=\sum_{k=i-1}^{i+1}[f(x_i)\prod_{j=i-1\\j\neq k}^{i+1}(\frac{x-x_j}{x_k-x_j})] f(x)≈L2​(x)=k=i−1∑i+1​[f(xi​)j=i−1j​=k∏i+1​(xk​−xj​x−xj​​)]

三次样条插值

定义5: △ : a = x 0 < x 1 < x 2 < ⋯ < x n = b \triangle:a=x_0<x_1<x_2<\cdots<x_n=b △:a=x0​<x1​<x2​<⋯<xn​=b 为 [ a , b ] [a,b] [a,b] 上的一个分割,若函数 S ( x ) S(x) S(x) 满足:

  1. S ( x ) S(x) S(x) 在每个子区间 [ x i , x i + 1 ] [x_i,x_{i+1}] [xi​,xi+1​] 上为不高于三次的多项式;
  2. S ( x ) ∈ C 2 ( a , b ) S(x)\in C^2(a,b) S(x)∈C2(a,b);
  3. S ( x i ) = f ( x i ) , i = 0 , 1 , ⋯ , n S(x_i)=f(x_i),i=0,1,\cdots,n S(xi​)=f(xi​),i=0,1,⋯,n

则称 S ( x ) S(x) S(x) 为 f ( x ) f(x) f(x) 在 △ \triangle △ 上的三次样条插值函数

唯一性:需要提出两个限制条件,称为边界条件端点条件,通常有三种提法:

  1. S ( x ) S(x) S(x) 两端的一阶导数值等于预先给定的值,即
    S ′ ( x 0 ) = y 0 ′ , S ′ ( x n ) = y n ′ S'(x_0)=y_0',S'(x_n)=y_n' S′(x0​)=y0′​,S′(xn​)=yn′​
    称为 D 1 D_1 D1​ 样条

  2. S ( x ) S(x) S(x) 两端的二阶导数值等于预先给定的值,即
    S ′ ′ ( x 0 ) = y 0 ′ ′ , S ′ ′ ( x n ) = y n ′ ′ S''(x_0)=y_0'',S''(x_n)=y_n'' S′′(x0​)=y0′′​,S′′(xn​)=yn′′​
    称为 D 2 D_2 D2​ 样条。特别的,当 S ′ ′ ( x 0 ) = S ′ ′ ( x n ) = 0 S''(x_0)=S''(x_n)=0 S′′(x0​)=S′′(xn​)=0 时,为自然样条

  3. 若三次样条为以 b − a b-a b−a 为周期的周期函数( f ( x n ) = f ( x 0 ) , S ( x 0 + 0 ) = S ( x n − 0 ) f(x_n)=f(x_0),S(x_0+0)=S(x_n-0) f(xn​)=f(x0​),S(x0​+0)=S(xn​−0)),则称 S ′ ( x 0 + 0 ) = S ′ ( x n − 0 ) , S ′ ′ ( x 0 + 0 ) = S ′ ′ ( x n − 0 ) S'(x_0+0)=S'(x_n-0),S''(x_0+0)=S''(x_n-0) S′(x0​+0)=S′(xn​−0),S′′(x0​+0)=S′′(xn​−0) 为周期样条

三斜率(三转角)方程组

S ( x ) S(x) S(x) 为一个不高于三次的多项式。设 S ′ ( x i ) = d i , i = 0 , 1 , ⋯ , n S'(x_i)=d_i,i=0,1,\cdots,n S′(xi​)=di​,i=0,1,⋯,n, S ( x ) S(x) S(x) 在 [ x i , x i + 1 ] [x_i,x_{i+1}] [xi​,xi+1​] 上的表达式为 S i ( x ) S_i(x) Si​(x),于是有
S i ( x i ) = f ( x i ) , S i ( x i + 1 ) = f ( x i + 1 ) S i ′ ( x i ) = d i , S i ′ ( x i + 1 ) = d i + 1 h i + 1 = x i + 1 − x i S_i(x_i)=f(x_i),S_i(x_{i+1})=f(x_{i+1})\\S_i'(x_i)=d_i,S_i'(x_{i+1})=d_{i+1}\\h_{i+1}=x_{i+1}-x_i Si​(xi​)=f(xi​),Si​(xi+1​)=f(xi+1​)Si′​(xi​)=di​,Si′​(xi+1​)=di+1​hi+1​=xi+1​−xi​
记:
λ i = h i + 1 h i + h i + 1 , μ i = 1 − λ i = h i h i + h i + 1 , C i = 3 ( λ i f [ x i − 1 , x i ] + μ i f [ x i , x i + 1 ] ) \lambda_i=\frac{h_{i+1}}{h_i+h_{i+1}},\mu_i=1-\lambda_i=\frac{h_i}{h_i+h_{i+1}},C_i=3(\lambda_if[x_{i-1},x_i]+\mu_if[x_i,x_{i+1}]) λi​=hi​+hi+1​hi+1​​,μi​=1−λi​=hi​+hi+1​hi​​,Ci​=3(λi​f[xi−1​,xi​]+μi​f[xi​,xi+1​])
则有三次样条插值的 d d d 关系式(或 m m m 关系式)
λ i d i − 1 + 2 d i + μ i d i + 1 = C i , i = 1 , 2 , ⋯ , n − 1 \lambda_id_{i-1}+2d_i+\mu_id_{i+1}=C_i,i=1,2,\cdots,n-1 λi​di−1​+2di​+μi​di+1​=Ci​,i=1,2,⋯,n−1
加入两个端点条件,才能解得 { d i } i = 0 n \{d_i\}^n_{i=0} {di​}i=0n​,有三种方法:

  1. D 1 D_1 D1​ 样条: S ( x ) S(x) S(x) 两端的一阶导数值等于预先给定的值:
    S ′ ( x 0 ) = y 0 ′ , S ′ ( x n ) = y n ′ S'(x_0)=y_0',S'(x_n)=y_n' S′(x0​)=y0′​,S′(xn​)=yn′​
    求线性方程组,得 d i ( i = 1 , ⋯ , n − 1 ) d_i(i=1,\cdots,n-1) di​(i=1,⋯,n−1):
    [ 2 μ 1 λ 2 2 μ 2 ⋱ ⋱ ⋱ λ n − 2 2 μ n − 2 λ n − 1 2 ] [ d 1 d 2 ⋮ d n − 2 d n − 1 ] = [ C 1 − λ 1 y 0 ′ C 2 ⋮ C n − 2 C n − 1 − μ n − 1 y n ′ ] \left[\begin{matrix}2&\mu_1&&\\\lambda_2&2&\mu_2&\\\ddots&\ddots&\ddots\\&\lambda_{n-2}&2&\mu_{n-2}\\&&\lambda_{n-1}&2\end{matrix}\right]\left[\begin{matrix}d_1\\d_2\\\vdots\\d_{n-2}\\d_{n-1}\end{matrix}\right]=\left[\begin{matrix}C_1-\lambda_1y_0'\\C_2\\\vdots\\C_{n-2}\\C_{n-1}-\mu_{n-1}y_n'\end{matrix}\right] ⎣⎢⎢⎢⎢⎡​2λ2​⋱​μ1​2⋱λn−2​​μ2​⋱2λn−1​​μn−2​2​⎦⎥⎥⎥⎥⎤​⎣⎢⎢⎢⎢⎢⎡​d1​d2​⋮dn−2​dn−1​​⎦⎥⎥⎥⎥⎥⎤​=⎣⎢⎢⎢⎢⎢⎡​C1​−λ1​y0′​C2​⋮Cn−2​Cn−1​−μn−1​yn′​​⎦⎥⎥⎥⎥⎥⎤​

  2. D 2 D_2 D2​ 样条: S ( x ) S(x) S(x) 两端的二阶导数值等于预先给定的值:
    S ′ ′ ( x 0 ) = y 0 ′ ′ , S ′ ′ ( x n ) = y n ′ ′ S''(x_0)=y_0'',S''(x_n)=y_n'' S′′(x0​)=y0′′​,S′′(xn​)=yn′′​
    由 S ′ ′ ( x ) S''(x) S′′(x) 在 [ x i , x i + 1 ] [x_i,x_{i+1}] [xi​,xi+1​] 的表达式,容易得到:
    2 d 0 + d 1 = 3 f [ x 0 , x 1 ] − h 1 2 y 0 ′ ′ d n − 1 + 2 d n = 3 f [ x n − 1 , x n ] − h n 2 y n ′ ′ 2d_0+d_1=3f[x_0,x_1]-\frac{h_1}{2}y_0''\\d_{n-1}+2d_n=3f[x_{n-1},x_n]-\frac{h_n}{2}y_n'' 2d0​+d1​=3f[x0​,x1​]−2h1​​y0′′​dn−1​+2dn​=3f[xn−1​,xn​]−2hn​​yn′′​
    可得关于 { d i } i = 0 n \{d_i\}^n_{i=0} {di​}i=0n​ 的一组线性方程组:
    [ 2 1 λ 1 2 μ 1 ⋱ ⋱ ⋱ λ n − 1 2 μ n − 1 1 2 ] [ d 0 d 1 ⋮ d n − 1 d n ] = [ 3 f [ x 0 , x 1 ] − h 1 2 y 0 ′ ′ C 1 ⋮ C n − 1 3 f [ x n − 1 , x n ] − h n 2 y n ′ ′ ] \left[\begin{matrix}2&1&&\\\lambda_1&2&\mu_1&\\\ddots&\ddots&\ddots\\&\lambda_{n-1}&2&\mu_{n-1}\\&&1&2\end{matrix}\right]\left[\begin{matrix}d_0\\d_1\\\vdots\\d_{n-1}\\d_n\end{matrix}\right]=\left[\begin{matrix}3f[x_0,x_1]-\frac{h_1}{2}y_0''\\C_1\\\vdots\\C_{n-1}\\3f[x_{n-1},x_n]-\frac{h_n}{2}y_n''\end{matrix}\right] ⎣⎢⎢⎢⎢⎡​2λ1​⋱​12⋱λn−1​​μ1​⋱21​μn−1​2​⎦⎥⎥⎥⎥⎤​⎣⎢⎢⎢⎢⎢⎡​d0​d1​⋮dn−1​dn​​⎦⎥⎥⎥⎥⎥⎤​=⎣⎢⎢⎢⎢⎢⎡​3f[x0​,x1​]−2h1​​y0′′​C1​⋮Cn−1​3f[xn−1​,xn​]−2hn​​yn′′​​⎦⎥⎥⎥⎥⎥⎤​

  3. 周期样条:若三次样条为以 b − a b-a b−a 为周期的周期函数, f ( x n ) = f ( x 0 ) , S ( x 0 ) = S ( x n ) , S ′ ( x 0 ) = S ′ ( x n ) , S ′ ′ ( x 0 ) = S ′ ′ ( x n ) f(x_n)=f(x_0),S(x_0)=S(x_n),S'(x_0)=S'(x_n),S''(x_0)=S''(x_n) f(xn​)=f(x0​),S(x0​)=S(xn​),S′(x0​)=S′(xn​),S′′(x0​)=S′′(xn​),可得
    λ n − 1 d n − 2 + 2 d n − 1 + μ n − 1 d 0 = C n − 1 λ 0 d n − 1 + 2 d 0 + μ 0 d 1 = C 0 这 里 : λ 0 = h 1 h n + h 1 , μ 0 = 1 − λ 0 = h n h n + h 1 C 0 = 3 ( λ 0 f [ x n − 1 , x n ] + μ 0 f [ x 0 , x 1 ] ) \lambda_{n-1}d_{n-2}+2d_{n-1}+\mu_{n-1}d_0=C_{n-1}\\\lambda_0d_{n-1}+2d_0+\mu_0d_1=C_0\\这里:\lambda_0=\frac{h_1}{h_n+h_1},\mu_0=1-\lambda_0=\frac{h_n}{h_n+h_1}\\C_0=3(\lambda_0f[x_{n-1},x_n]+\mu_0f[x_0,x_1]) λn−1​dn−2​+2dn−1​+μn−1​d0​=Cn−1​λ0​dn−1​+2d0​+μ0​d1​=C0​这里:λ0​=hn​+h1​h1​​,μ0​=1−λ0​=hn​+h1​hn​​C0​=3(λ0​f[xn−1​,xn​]+μ0​f[x0​,x1​])
    得到关于 { d i } i = 0 n \{d_i\}^n_{i=0} {di​}i=0n​ 的一组线性方程组:
    [ 2 μ 0 λ 0 λ 1 2 μ 1 ⋱ ⋱ ⋱ λ n − 2 2 μ n − 2 μ n − 1 λ n − 1 2 ] [ d 0 d 1 ⋮ d n − 2 d n − 1 ] = [ C 0 C 1 ⋮ C n − 2 C n − 1 ] \left[\begin{matrix}2&\mu_0&&\lambda_0\\\lambda_1&2&\mu_1&\\\ddots&\ddots&\ddots\\&\lambda_{n-2}&2&\mu_{n-2}\\\mu_{n-1}&&\lambda_{n-1}&2\end{matrix}\right]\left[\begin{matrix}d_0\\d_1\\\vdots\\d_{n-2}\\d_{n-1}\end{matrix}\right]=\left[\begin{matrix}C_0\\C_1\\\vdots\\C_{n-2}\\C_{n-1}\end{matrix}\right] ⎣⎢⎢⎢⎢⎡​2λ1​⋱μn−1​​μ0​2⋱λn−2​​μ1​⋱2λn−1​​λ0​μn−2​2​⎦⎥⎥⎥⎥⎤​⎣⎢⎢⎢⎢⎢⎡​d0​d1​⋮dn−2​dn−1​​⎦⎥⎥⎥⎥⎥⎤​=⎣⎢⎢⎢⎢⎢⎡​C0​C1​⋮Cn−2​Cn−1​​⎦⎥⎥⎥⎥⎥⎤​

求出 { d i } i = 0 n \{d_i\}^n_{i=0} {di​}i=0n​ ,即得在 [ x i , x i + 1 ] [x_i,x_{i+1}] [xi​,xi+1​] 上的三次样条插值函数为:
S i ( x ) = 1 h i + 1 3 [ h i + 1 + 2 ( x − x i ) ] ( x − x i + 1 ) 2 f ( x i ) + 1 h i + 1 3 [ h i + 1 − 2 ( x − x i + 1 ) ] ( x − x i ) 2 f ( x i + 1 ) + 1 h i + 1 2 ( x − x i ) ( x − x i + 1 ) 2 d i + 1 h i + 1 2 ( x − x i + 1 ) ( x − x i ) 2 d i + 1 S_i(x)=\frac{1}{h_{i+1}^3}[h_{i+1}+2(x-x_i)](x-x_{i+1})^2f(x_i)\\+\frac{1}{h_{i+1}^3}[h_{i+1}-2(x-x_{i+1})](x-x_i)^2f(x_{i+1})\\+\frac{1}{h_{i+1}^2}(x-x_i)(x-x_{i+1})^2d_i\\+\frac{1}{h_{i+1}^2}(x-x_{i+1})(x-x_i)^2d_{i+1} Si​(x)=hi+13​1​[hi+1​+2(x−xi​)](x−xi+1​)2f(xi​)+hi+13​1​[hi+1​−2(x−xi+1​)](x−xi​)2f(xi+1​)+hi+12​1​(x−xi​)(x−xi+1​)2di​+hi+12​1​(x−xi+1​)(x−xi​)2di+1​

三弯矩方程组(M关系式)

对于样条插值函数 S ( x ) ∈ C 2 ( a , b ) S(x)\in C^2(a,b) S(x)∈C2(a,b),设 S ′ ′ ( x i ) = M i , i = 0 , 1 , ⋯ , n S''(x_i)=M_i,i=0,1,\cdots,n S′′(xi​)=Mi​,i=0,1,⋯,n 为待求参数。

三次样条插值的 M M M 关系式
μ i M i − 1 + 2 M i + λ i M i + 1 = c i , i = 1 , 2 , ⋯ , n − 1 c i = 6 f [ x i − 1 , x i , x i + 1 ] \mu_iM_{i-1}+2M_i+\lambda_iM_{i+1}=c_i,i=1,2,\cdots,n-1\\c_i=6f[x_{i-1},x_i,x_{i+1}] μi​Mi−1​+2Mi​+λi​Mi+1​=ci​,i=1,2,⋯,n−1ci​=6f[xi−1​,xi​,xi+1​]

加入两个端点条件,通过 M M M 关系式可解得 { M i } i = 0 n \{M_i\}^n_{i=0} {Mi​}i=0n​,有三种方法:

  1. D 1 D_1 D1​ 样条: S ( x ) S(x) S(x) 两端的一阶导数值等于预先给定的值:
    S ′ ( x 0 ) = y 0 ′ , S ′ ( x n ) = y n ′ S'(x_0)=y_0',S'(x_n)=y_n' S′(x0​)=y0′​,S′(xn​)=yn′​
    对 i = 0 i=0 i=0 及 i = n − 1 i=n-1 i=n−1 时的 S i ( x ) S_i(x) Si​(x) 求导,并分别对 x 0 , x n x_0,x_n x0​,xn​ 代入,整理得:
    2 M 0 + M 1 = 6 h 1 ( f [ x 0 , x 1 ] − y 0 ′ ) M n − 1 + 2 M n = 6 h n ( y n ′ − f [ x n − 1 , x n ] ) 2M_0+M_1=\frac{6}{h_1}(f[x_0,x_1]-y_0')\\M_{n-1}+2M_n=\frac{6}{h_n}(y_n'-f[x_{n-1},x_n]) 2M0​+M1​=h1​6​(f[x0​,x1​]−y0′​)Mn−1​+2Mn​=hn​6​(yn′​−f[xn−1​,xn​])
    得到关于 { M i } i = 0 n \{M_i\}^n_{i=0} {Mi​}i=0n​ 的方程组:
    [ 2 1 μ 1 2 λ 1 ⋱ ⋱ ⋱ μ n − 1 2 λ n − 1 1 2 ] [ M 0 M 1 ⋮ M n − 1 M n ] = [ 6 h 1 ( f [ x 0 , x 1 ] − y 0 ′ ) c 1 ⋮ c n − 1 6 h n ( y n ′ − f [ x n − 1 , x n ] ) ] \left[\begin{matrix}2&1&&\\\mu_1&2&\lambda_1&\\\ddots&\ddots&\ddots\\&\mu_{n-1}&2&\lambda_{n-1}\\&&1&2\end{matrix}\right]\left[\begin{matrix}M_0\\M_1\\\vdots\\M_{n-1}\\M_n\end{matrix}\right]=\left[\begin{matrix}\frac{6}{h_1}(f[x_0,x_1]-y_0')\\c_1\\\vdots\\c_{n-1}\\\frac{6}{h_n}(y_n'-f[x_{n-1},x_n])\end{matrix}\right] ⎣⎢⎢⎢⎢⎡​2μ1​⋱​12⋱μn−1​​λ1​⋱21​λn−1​2​⎦⎥⎥⎥⎥⎤​⎣⎢⎢⎢⎢⎢⎡​M0​M1​⋮Mn−1​Mn​​⎦⎥⎥⎥⎥⎥⎤​=⎣⎢⎢⎢⎢⎢⎡​h1​6​(f[x0​,x1​]−y0′​)c1​⋮cn−1​hn​6​(yn′​−f[xn−1​,xn​])​⎦⎥⎥⎥⎥⎥⎤​

  2. D 2 D_2 D2​ 样条: S ( x ) S(x) S(x) 两端的二阶导数值等于预先给定的值:
    S ′ ′ ( x 0 ) = y 0 ′ ′ , S ′ ′ ( x n ) = y n ′ ′ S''(x_0)=y_0'',S''(x_n)=y_n'' S′′(x0​)=y0′′​,S′′(xn​)=yn′′​
    得到关于 { M i } i = 0 n \{M_i\}^n_{i=0} {Mi​}i=0n​ 的方程组:
    [ 2 λ 1 μ 2 2 λ 2 ⋱ ⋱ ⋱ μ n − 2 2 λ n − 2 μ n − 1 2 ] [ M 1 M 2 ⋮ M n − 2 M n − 1 ] = [ c 1 − μ 1 y 0 ′ ′ c 2 ⋮ c n − 2 c n − 1 − λ n − 1 y n ′ ′ ] \left[\begin{matrix}2&\lambda_1&&\\\mu_2&2&\lambda_2&\\\ddots&\ddots&\ddots\\&\mu_{n-2}&2&\lambda_{n-2}\\&&\mu_{n-1}&2\end{matrix}\right]\left[\begin{matrix}M_1\\M_2\\\vdots\\M_{n-2}\\M_{n-1}\end{matrix}\right]=\left[\begin{matrix}c_1-\mu_1y_0''\\c_2\\\vdots\\c_{n-2}\\c_{n-1}-\lambda_{n-1}y_n''\end{matrix}\right] ⎣⎢⎢⎢⎢⎡​2μ2​⋱​λ1​2⋱μn−2​​λ2​⋱2μn−1​​λn−2​2​⎦⎥⎥⎥⎥⎤​⎣⎢⎢⎢⎢⎢⎡​M1​M2​⋮Mn−2​Mn−1​​⎦⎥⎥⎥⎥⎥⎤​=⎣⎢⎢⎢⎢⎢⎡​c1​−μ1​y0′′​c2​⋮cn−2​cn−1​−λn−1​yn′′​​⎦⎥⎥⎥⎥⎥⎤​

  3. 周期样条:若三次样条为以 b − a b-a b−a 为周期的周期函数, f ( x n ) = f ( x 0 ) , S ( x 0 ) = S ( x n ) , S ′ ( x 0 ) = S ′ ( x n ) , S ′ ′ ( x 0 ) = S ′ ′ ( x n ) f(x_n)=f(x_0),S(x_0)=S(x_n),S'(x_0)=S'(x_n),S''(x_0)=S''(x_n) f(xn​)=f(x0​),S(x0​)=S(xn​),S′(x0​)=S′(xn​),S′′(x0​)=S′′(xn​),可得:
    μ 0 M n − 1 + 2 M 0 + λ 0 M 1 = 6 h 1 + h n ( f [ x 0 , x 1 ] − f [ x n − 1 , x n ] ) 这 里 : λ 0 = h 1 h 1 + h n , μ 0 = 1 − λ 0 = h n h 1 + h n μ n − 1 M n − 1 + 2 M n − 1 + λ n − 1 M 0 = c n − 1 \mu_0M_{n-1}+2M_0+\lambda_0M_1=\frac{6}{h_1+h_n}(f[x_0,x_1]-f[x_{n-1},x_n])\\这里:\lambda_0=\frac{h_1}{h_1+h_n},\mu_0=1-\lambda_0=\frac{h_n}{h_1+h_n}\\\mu_{n-1}M_{n-1}+2M_{n-1}+\lambda_{n-1}M_0=c_{n-1} μ0​Mn−1​+2M0​+λ0​M1​=h1​+hn​6​(f[x0​,x1​]−f[xn−1​,xn​])这里:λ0​=h1​+hn​h1​​,μ0​=1−λ0​=h1​+hn​hn​​μn−1​Mn−1​+2Mn−1​+λn−1​M0​=cn−1​
    得到关于 { M i } i = 0 n − 1 \{M_i\}^{n-1}_{i=0} {Mi​}i=0n−1​ 的方程组:
    [ 2 λ 0 μ 0 μ 1 2 λ 1 ⋱ ⋱ ⋱ μ n − 2 2 λ n − 2 λ n − 1 μ n − 1 2 ] [ M 0 M 1 ⋮ M n − 2 M n − 1 ] = [ 6 h 1 + h n ( f [ x 0 , x 1 ] − f [ x n − 1 , x n ] ) c 1 ⋮ c n − 2 c n − 1 ] \left[\begin{matrix}2&\lambda_0&&\mu_0\\\mu_1&2&\lambda_1&\\\ddots&\ddots&\ddots\\&\mu_{n-2}&2&\lambda_{n-2}\\\lambda_{n-1}&&\mu_{n-1}&2\end{matrix}\right]\left[\begin{matrix}M_0\\M_1\\\vdots\\M_{n-2}\\M_{n-1}\end{matrix}\right]=\left[\begin{matrix}\frac{6}{h_1+h_n}(f[x_0,x_1]-f[x_{n-1},x_n])\\c_1\\\vdots\\c_{n-2}\\c_{n-1}\end{matrix}\right] ⎣⎢⎢⎢⎢⎡​2μ1​⋱λn−1​​λ0​2⋱μn−2​​λ1​⋱2μn−1​​μ0​λn−2​2​⎦⎥⎥⎥⎥⎤​⎣⎢⎢⎢⎢⎢⎡​M0​M1​⋮Mn−2​Mn−1​​⎦⎥⎥⎥⎥⎥⎤​=⎣⎢⎢⎢⎢⎢⎡​h1​+hn​6​(f[x0​,x1​]−f[xn−1​,xn​])c1​⋮cn−2​cn−1​​⎦⎥⎥⎥⎥⎥⎤​

求出 { M i } i = 0 n \{M_i\}^n_{i=0} {Mi​}i=0n​ ,即得在 [ x i , x i + 1 ] [x_i,x_{i+1}] [xi​,xi+1​] 上的三次样条插值函数为:
S i ( x ) = M i ( x i + 1 − x ) 3 6 h i + 1 + M i + 1 ( x − x i ) 3 6 h i + 1 + ( y i − M i 6 h i + 1 2 ) x i + 1 − x h i + 1 + ( y i + 1 − M i + 1 6 h i + 1 2 ) x − x i h i + 1 S_i(x)=M_i\frac{(x_{i+1}-x)^3}{6h_{i+1}}+M_{i+1}\frac{(x-x_i)^3}{6h_{i+1}}\\+(y_i-\frac{M_i}{6}h_{i+1}^2)\frac{x_{i+1}-x}{h_{i+1}}+(y_{i+1}-\frac{M_{i+1}}{6}h_{i+1}^2)\frac{x-x_i}{h_{i+1}} Si​(x)=Mi​6hi+1​(xi+1​−x)3​+Mi+1​6hi+1​(x−xi​)3​+(yi​−6Mi​​hi+12​)hi+1​xi+1​−x​+(yi+1​−6Mi+1​​hi+12​)hi+1​x−xi​​

定理3:满足3个边界条件其中一个的三次样条插值函数 S ( x ) S(x) S(x) 存在且唯一。

曲线拟合的最小二乘法

选取 φ ( x ) \varphi(x) φ(x),使偏差平方和最小:
∑ i = 1 m δ i 2 = ∑ i = 1 m [ φ ( x i ) − y i ] 2 = min ⁡ \sum_{i=1}^m\delta_i^2=\sum_{i=1}^m[\varphi(x_i)-y_i]^2=\min i=1∑m​δi2​=i=1∑m​[φ(xi​)−yi​]2=min

最小二乘解的求法

设 φ ( x ) = F ( a 0 , a 1 , ⋯ , a n , x ) \varphi(x)=F(a_0,a_1,\cdots,a_n,x) φ(x)=F(a0​,a1​,⋯,an​,x),其中 n < m , a k ( k = 0 , 1 , ⋯ , n ) n<m,a_k(k=0,1,\cdots,n) n<m,ak​(k=0,1,⋯,n) 是待定参数,记
S ( a 0 , a 1 , ⋯ , a n ) = ∑ i = 1 m [ F ( a 0 , a 1 , ⋯ , a n , x i ) − y i ] 2 S(a_0,a_1,\cdots,a_n)=\sum_{i=1}^m[F(a_0,a_1,\cdots,a_n,x_i)-y_i]^2 S(a0​,a1​,⋯,an​)=i=1∑m​[F(a0​,a1​,⋯,an​,xi​)−yi​]2
根据最小二乘法原则,求 a 0 ∗ , ⋯ , a n ∗ a_0^*,\cdots,a_n^* a0∗​,⋯,an∗​,满足:
∂ S ∂ a k = 0 ( k = 0 , 1 , ⋯ , n ) \frac{\partial S}{\partial a_k}=0\ \ \ \ \ (k=0,1,\cdots,n) ∂ak​∂S​=0     (k=0,1,⋯,n)
由上式的解 a 0 ∗ , ⋯ , a n ∗ a_0^*,\cdots,a_n^* a0∗​,⋯,an∗​ 得到的:
φ ∗ ( x ) = F ( a 0 ∗ , a 1 ∗ , ⋯ , a n ∗ , x ) \varphi^*(x)=F(a_0^*,a_1^*,\cdots,a_n^*,x) φ∗(x)=F(a0∗​,a1∗​,⋯,an∗​,x)
就为所求的最小二乘解

线性最小二乘问题的求法

φ ( x ) = a 0 φ 0 ( x ) + a 1 φ 1 ( x ) + ⋯ + a n φ n ( x ) \varphi(x)=a_0\varphi_0(x)+a_1\varphi_1(x)+\cdots+a_n\varphi_n(x) φ(x)=a0​φ0​(x)+a1​φ1​(x)+⋯+an​φn​(x),此时:
S ( a 0 , a 1 , ⋯ , a n ) = ∑ i = 1 m [ ∑ k = 0 n a k φ k ( x i ) − y i ] 2 S(a_0,a_1,\cdots,a_n)=\sum_{i=1}^m[\sum_{k=0}^na_k\varphi_k(x_i)-y_i]^2 S(a0​,a1​,⋯,an​)=i=1∑m​[k=0∑n​ak​φk​(xi​)−yi​]2
由 ∂ S ∂ a k = 0 ( k = 0 , 1 , ⋯ , n ) \frac{\partial S}{\partial a_k}=0\ \ (k=0,1,\cdots,n) ∂ak​∂S​=0  (k=0,1,⋯,n),得
∑ i = 1 m φ k ( x i ) [ ∑ k = 0 n a k φ k ( x i ) − y i ] = 0 , k = 0 , 1 , ⋯ , n a 0 ∑ i = 1 m φ k ( x i ) φ 0 ( x i ) + ⋯ + a n ∑ i = 1 m φ k ( x i ) φ n ( x i ) = ∑ i = 1 m φ k ( x i ) y i \sum_{i=1}^m\varphi_k(x_i)[\sum_{k=0}^na_k\varphi_k(x_i)-y_i]=0,k=0,1,\cdots,n\\a_0\sum_{i=1}^m\varphi_k(x_i)\varphi_0(x_i)+\cdots+a_n\sum_{i=1}^m\varphi_k(x_i)\varphi_n(x_i)=\sum_{i=1}^m\varphi_k(x_i)y_i i=1∑m​φk​(xi​)[k=0∑n​ak​φk​(xi​)−yi​]=0,k=0,1,⋯,na0​i=1∑m​φk​(xi​)φ0​(xi​)+⋯+an​i=1∑m​φk​(xi​)φn​(xi​)=i=1∑m​φk​(xi​)yi​
引入内积记号: ( h , g ) = ∑ i = 1 m h ( x i ) g ( x i ) (h,g)=\sum_{i=1}^mh(x_i)g(x_i) (h,g)=∑i=1m​h(xi​)g(xi​),则上述方程组可以表示为
a 0 ( φ k , φ 0 ) + ⋯ + a n ( φ k , φ n ) = ( φ k , f ) , k = 0 , 1 , ⋯ , n [ ( φ 0 , φ 0 ) ( φ 0 , φ 1 ) ⋯ ( φ 0 , φ n ) ( φ 1 , φ 0 ) ( φ 1 , φ 1 ) ⋯ ( φ 1 , φ n ) ⋮ ⋮ ⋮ ( φ n , φ 0 ) ( φ n , φ 1 ) ⋯ ( φ n , φ n ) ] [ a 0 a 1 ⋮ a n ] = [ ( φ 0 , f ) ( φ 1 , f ) ⋮ ( φ n , f ) ] a_0(\varphi_k,\varphi_0)+\cdots+a_n(\varphi_k,\varphi_n)=(\varphi_k,f),k=0,1,\cdots,n\\ \left[\begin{matrix}(\varphi_0,\varphi_0)&(\varphi_0,\varphi_1)&\cdots&(\varphi_0,\varphi_n)\\(\varphi_1,\varphi_0)&(\varphi_1,\varphi_1)&\cdots&(\varphi_1,\varphi_n)\\\vdots&\vdots&&\vdots\\(\varphi_n,\varphi_0)&(\varphi_n,\varphi_1)&\cdots&(\varphi_n,\varphi_n)\end{matrix}\right] \left[\begin{matrix}a_0\\a_1\\\vdots\\a_n\end{matrix}\right]= \left[\begin{matrix}(\varphi_0,f)\\(\varphi_1,f)\\\vdots\\(\varphi_n,f)\end{matrix}\right] a0​(φk​,φ0​)+⋯+an​(φk​,φn​)=(φk​,f),k=0,1,⋯,n⎣⎢⎢⎢⎡​(φ0​,φ0​)(φ1​,φ0​)⋮(φn​,φ0​)​(φ0​,φ1​)(φ1​,φ1​)⋮(φn​,φ1​)​⋯⋯⋯​(φ0​,φn​)(φ1​,φn​)⋮(φn​,φn​)​⎦⎥⎥⎥⎤​⎣⎢⎢⎢⎡​a0​a1​⋮an​​⎦⎥⎥⎥⎤​=⎣⎢⎢⎢⎡​(φ0​,f)(φ1​,f)⋮(φn​,f)​⎦⎥⎥⎥⎤​
解上述方程组即得到相应的最小二乘解: φ ∗ ( x ) = a 0 ∗ φ 0 ( x ) + a 1 ∗ φ 1 ( x ) + ⋯ + a n ∗ φ n ( x ) \varphi^*(x)=a_0^*\varphi_0(x)+a_1^*\varphi_1(x)+\cdots+a_n^*\varphi_n(x) φ∗(x)=a0∗​φ0​(x)+a1∗​φ1​(x)+⋯+an∗​φn​(x)

多项式拟合最小二乘法

取 φ 0 ( x ) = 1 , φ 1 ( x ) = x , ⋯ , φ n ( x ) = x n \varphi_0(x)=1,\varphi_1(x)=x,\cdots,\varphi_n(x)=x^n φ0​(x)=1,φ1​(x)=x,⋯,φn​(x)=xn,则可得
( φ j , φ k ) = ∑ i = 1 m x i j x i k = ∑ i = 1 m x i j + k , j , k = 0 , 1 , ⋯ , n ( φ i , f ) = ∑ i = 1 m x i j y i , k = 0 , 1 , ⋯ , n (\varphi_j,\varphi_k)=\sum_{i=1}^mx_i^jx_i^k=\sum_{i=1}^mx_i^{j+k},j,k=0,1,\cdots,n\\(\varphi_i,f)=\sum_{i=1}^mx_i^jy_i,k=0,1,\cdots,n (φj​,φk​)=i=1∑m​xij​xik​=i=1∑m​xij+k​,j,k=0,1,⋯,n(φi​,f)=i=1∑m​xij​yi​,k=0,1,⋯,n
方程组为:
[ m ∑ i = 1 m x i ⋯ ∑ i = 1 m x i n ∑ i = 1 m x i ∑ i = 1 m x i 2 ⋯ ∑ i = 1 m x i n + 1 ⋮ ⋮ ⋮ ∑ i = 1 m x i n ∑ i = 1 m x i n + 1 ⋯ ∑ i = 1 m x i 2 n ] [ a 0 a 1 ⋮ a n ] = [ ∑ i = 1 m y i ∑ i = 1 m x i y i ⋮ ∑ i = 1 m x i n y i ] \left[\begin{matrix}m&\sum_{i=1}^mx_i&\cdots&\sum_{i=1}^mx_i^n\\\sum_{i=1}^mx_i&\sum_{i=1}^mx_i^2&\cdots&\sum_{i=1}^mx_i^{n+1}\\\vdots&\vdots&&\vdots\\\sum_{i=1}^mx_i^n&\sum_{i=1}^mx_i^{n+1}&\cdots&\sum_{i=1}^mx_i^{2n}\end{matrix}\right]\left[\begin{matrix}a_0\\a_1\\\vdots\\a_n\end{matrix}\right]=\left[\begin{matrix}\sum_{i=1}^my_i\\\sum_{i=1}^mx_iy_i\\\vdots\\\sum_{i=1}^mx_i^ny_i\end{matrix}\right] ⎣⎢⎢⎢⎡​m∑i=1m​xi​⋮∑i=1m​xin​​∑i=1m​xi​∑i=1m​xi2​⋮∑i=1m​xin+1​​⋯⋯⋯​∑i=1m​xin​∑i=1m​xin+1​⋮∑i=1m​xi2n​​⎦⎥⎥⎥⎤​⎣⎢⎢⎢⎡​a0​a1​⋮an​​⎦⎥⎥⎥⎤​=⎣⎢⎢⎢⎡​∑i=1m​yi​∑i=1m​xi​yi​⋮∑i=1m​xin​yi​​⎦⎥⎥⎥⎤​

求最小二乘法解的步骤:

  1. 根据数据 ( x i , y i ) ( i = 1 , 2 , ⋯ , m ) (x_i,y_i)(i=1,2,\cdots,m) (xi​,yi​)(i=1,2,⋯,m),确定函数空间 Φ \Phi Φ 和基函数 φ 0 ( x ) , φ 1 ( x ) , ⋯ , φ n ( x ) \varphi_0(x),\varphi_1(x),\cdots,\varphi_n(x) φ0​(x),φ1​(x),⋯,φn​(x);
  2. 根据 φ ( x ) \varphi(x) φ(x) 的特点,建立 a k ( k = 0 , 1 , ⋯ , n ) a_k(k=0,1,\cdots,n) ak​(k=0,1,⋯,n) 的法方程组;
  3. 通过解法方程组求取最小二乘解 φ ∗ ( x ) \varphi^*(x) φ∗(x) 对应的参数 a k ∗ ( k = 0 , 1 , ⋯ , n ) a_k^*(k=0,1,\cdots,n) ak∗​(k=0,1,⋯,n)。

思考题:用最小二乘原理,求超定线性方程组: { 2 x + 4 y = 11 3 x − 5 y = 3 x + 2 y = 6 2 x + y = 7 \begin{cases}2x+4y=11\\3x-5y=3\\x+2y=6\\2x+y=7\end{cases} ⎩⎪⎪⎪⎨⎪⎪⎪⎧​2x+4y=113x−5y=3x+2y=62x+y=7​,并给出均方误差。

解: { δ 1 = 2 x + 4 y − 11 δ 2 = 3 x − 5 y − 3 δ 3 = x + 2 y − 6 δ 4 = 2 x + y − 7 , S ( x , y ) = ∑ i = 1 4 δ i 2 → min ⁡ \begin{cases}\delta_1=2x+4y-11\\\delta_2=3x-5y-3\\\delta_3=x+2y-6\\\delta_4=2x+y-7\end{cases},S(x,y)=\sum_{i=1}^4\delta_i^2\rightarrow\min ⎩⎪⎪⎪⎨⎪⎪⎪⎧​δ1​=2x+4y−11δ2​=3x−5y−3δ3​=x+2y−6δ4​=2x+y−7​,S(x,y)=∑i=14​δi2​→min

加权技巧的应用

对给定实验数据 ( x i , y i ) ( i = 1 , 2 , ⋯ , m ) (x_i,y_i)(i=1,2,\cdots,m) (xi​,yi​)(i=1,2,⋯,m),寻求一个函数: φ ∗ ( x ) = a 0 ∗ φ 0 ( x ) + a 1 ∗ φ 1 ( x ) + ⋯ + a n ∗ φ n ( x ) \varphi^*(x)=a_0^*\varphi_0(x)+a_1^*\varphi_1(x)+\cdots+a_n^*\varphi_n(x) φ∗(x)=a0∗​φ0​(x)+a1∗​φ1​(x)+⋯+an∗​φn​(x),使:
∑ i = 1 m W i [ φ ∗ ( x i ) − y i ] 2 = min ⁡ φ ( x ) ∈ Φ ∑ i = 1 m W i [ φ ( x i ) − y i ] 2 \sum_{i=1}^mW_i[\varphi^*(x_i)-y_i]^2=\min_{\varphi(x)\in\Phi}\sum_{i=1}^mW_i[\varphi(x_i)-y_i]^2 i=1∑m​Wi​[φ∗(xi​)−yi​]2=φ(x)∈Φmin​i=1∑m​Wi​[φ(xi​)−yi​]2
其中, φ ( x ) = a 0 φ 0 ( x ) + a 1 φ 1 ( x ) + ⋯ + a n φ n ( x ) \varphi(x)=a_0\varphi_0(x)+a_1\varphi_1(x)+\cdots+a_n\varphi_n(x) φ(x)=a0​φ0​(x)+a1​φ1​(x)+⋯+an​φn​(x), W i W_i Wi​ 是一列正数,称为,它的大小反映了数据 ( x i , y i ) (x_i,y_i) (xi​,yi​) 地位的强弱。

可归结为求多元函数
S ( a 0 , a 1 , ⋯ , a n ) = ∑ i = 1 m W i [ ∑ k = 0 n a k φ k ( x i ) − y i ] 2 S(a_0,a_1,\cdots,a_n)=\sum_{i=1}^mW_i[\sum_{k=0}^na_k\varphi_k(x_i)-y_i]^2 S(a0​,a1​,⋯,an​)=i=1∑m​Wi​[k=0∑n​ak​φk​(xi​)−yi​]2
的极小点 ( a 0 ∗ , a 1 ∗ , ⋯ , a n ∗ ) (a_0^*,a_1^*,\cdots,a_n^*) (a0∗​,a1∗​,⋯,an∗​)

特例:取 φ 0 ( x ) = 1 , φ 1 ( x ) = x , ⋯ , φ n ( x ) = x n \varphi_0(x)=1,\varphi_1(x)=x,\cdots,\varphi_n(x)=x^n φ0​(x)=1,φ1​(x)=x,⋯,φn​(x)=xn,则可得法方程组
[ ∑ i = 1 m W i ∑ i = 1 m W i x i ⋯ ∑ i = 1 m W i x i n ∑ i = 1 m W i x i ∑ i = 1 m W i x i 2 ⋯ ∑ i = 1 m W i x i n + 1 ⋮ ⋮ ⋮ ∑ i = 1 m W i x i n ∑ i = 1 m W i x i n + 1 ⋯ ∑ i = 1 m W i x i 2 n ] [ a 0 a 1 ⋮ a n ] = [ ∑ i = 1 m W i y i ∑ i = 1 m W i x i y i ⋮ ∑ i = 1 m W i x i n y i ] \left[\begin{matrix}\sum_{i=1}^mW_i&\sum_{i=1}^mW_ix_i&\cdots&\sum_{i=1}^mW_ix_i^n\\\sum_{i=1}^mW_ix_i&\sum_{i=1}^mW_ix_i^2&\cdots&\sum_{i=1}^mW_ix_i^{n+1}\\\vdots&\vdots&&\vdots\\\sum_{i=1}^mW_ix_i^n&\sum_{i=1}^mW_ix_i^{n+1}&\cdots&\sum_{i=1}^mW_ix_i^{2n}\end{matrix}\right]\left[\begin{matrix}a_0\\a_1\\\vdots\\a_n\end{matrix}\right]=\left[\begin{matrix}\sum_{i=1}^mW_iy_i\\\sum_{i=1}^mW_ix_iy_i\\\vdots\\\sum_{i=1}^mW_ix_i^ny_i\end{matrix}\right] ⎣⎢⎢⎢⎡​∑i=1m​Wi​∑i=1m​Wi​xi​⋮∑i=1m​Wi​xin​​∑i=1m​Wi​xi​∑i=1m​Wi​xi2​⋮∑i=1m​Wi​xin+1​​⋯⋯⋯​∑i=1m​Wi​xin​∑i=1m​Wi​xin+1​⋮∑i=1m​Wi​xi2n​​⎦⎥⎥⎥⎤​⎣⎢⎢⎢⎡​a0​a1​⋮an​​⎦⎥⎥⎥⎤​=⎣⎢⎢⎢⎡​∑i=1m​Wi​yi​∑i=1m​Wi​xi​yi​⋮∑i=1m​Wi​xin​yi​​⎦⎥⎥⎥⎤​

计算方法(四):插值与拟合相关推荐

  1. matlab中a2=poly(p2),插值与拟合matlab实现

    插值与拟合的Matlab实现 王正盛编写 在科技工程中,除了要进行一定的理论分析外,通过实验.观测数据,做分析.处理也是必不可少的一种途径.由于实验测定实际系统的数据具有一定的代表性,因此在处理时必须 ...

  2. 数学建模-预测模型总结(适用范围、优缺点)【灰色预测模型、插值与拟合、时间序列预测法、马尔科夫预测、差分方程、微分方程模型、神经元网络】

    基于数学建模的预测方法种类繁多,从经典的单耗法.弹性系数法.统计分析法,到目前的灰色预测法.当在使用相应的预测方法建立预测模型时,我们需要知道主要的一些预测方法的研究特点,优缺点和适用范围.下面就当下 ...

  3. matlab插值与拟合例题_MATLAB中数据插值和数据拟合的用法

    一.数据插值: 插值是在一组已知数据点的范围内添加新数据点的技术.可以使用插值来填充缺失的数据.对现有数据进行平滑处理以及进行预测等.MATLAB 中的插值技术可分为适用于网格上的数据点和散点数据点. ...

  4. Matlab的插值与拟合

    文章目录 前言 在命令行窗口中完成插值与拟合 一.插值与拟合 二.使用步骤 1.插值 2.拟合 前言 在命令行窗口中完成插值与拟合 一.插值与拟合 插值:在离散数据的基础上补插连续函数,使得这条连续曲 ...

  5. 插值、拟合、线性和非线性的区别

    插值.拟合.线性和非线性的区别 从一组实验数据Qi(x,y)怎样得到他们的所代表的函数(曲线)f(x)呢?拟合(fitting)就是做这个工作的.当然"插值"也可以做些粗燥的未知值 ...

  6. 数学建模——插值与拟合

    文章目录 一.插值和拟合 1.什么是插值与拟合? 2.常用一维插值方法 (1)分段线性插值 (2)样条插值 3.常用二维插值方法 (1)插值节点为网格数据 (2)插值节点为非网格数据 4.拟合 二.插 ...

  7. matlab slice 斜切,MATLAB插值与拟合

    密件宁静会猎哪吒腔肠发棵安曼前襟.小鲸起航击乐不疑故交浦项.城镇棵儿流驶四砂恩宠穆木,流脓广柑乖顺赤松漂漂!陋劣世俗募捐世医旋木率直北寺南白.补花女将栖身悖谬顺水观花女婴唱盘!度曲忻政型领卖乖便饭. ...

  8. java的拟合与插值库,插值和拟合区别

    插值和拟合都是函数逼近或者数值逼近的重要组成部分.他们的共同点都是通过已知一些离散点集M上的约束,求取一个定义在连续集合S(M包含于S)的未知连续函数,从而达到获取整体规律目的,即通过"窥几 ...

  9. 【机器学习入门到精通系列】插值与拟合

    文章目录 1 插值! 2 一维插值 拉格朗日插值法 分段线性插值法 例题 3 二维插值 网络结点插值法 例题 散乱数据插值 4 拟合! 5 区别与联系 1 插值! 在离散数据的基础上补插连续函数,使得 ...

最新文章

  1. AutoML大提速,谷歌开源自动化寻找最优ML模型新平台
  2. ubuntu 查看内存和cpu使用情况
  3. sdut 2107 DFS
  4. 源代码管理的新15条建议
  5. Java 集合系列17之 TreeSet详细介绍(源码解析)和使用示例
  6. mysql中ak替换键_数据库:唯一性约束_alternate key(替换键) mySQL Oracle 数据库 ak 唯一性约束...
  7. xxd命令转换二进制十六进制文件
  8. 【AMAD】django-activity-stream
  9. 将小写金额转换成大写金额[存储过程版]
  10. CentOS7-Python系列】之一【python-devel教训】
  11. python可以做什么工作-Python可以做什么工作?Python有哪些方向?
  12. java 悬浮提示框_弹出提示框的方式——java
  13. 拓端tecdat|Python多项式Logistic逻辑回归进行多类别分类和交叉验证准确度箱线图可视化
  14. android手机 无电池开机画面,还有这种操作,这款手机无电池也能开机
  15. 东芝机械手tspc安装_日本东芝工四轴机械手THL800
  16. C语言—递归函数有5个人围坐在一起,问第5个人多大年纪,他说比第4个人大2岁;问第4个人,他说比第3个人大2岁;问第3个人,他说比第2个人大2岁;问第2个人,他说比第1个人大2岁。第1个人说自己10岁
  17. Python中字符串的一些操作
  18. 拼音魔法 使用switch case简化复杂的if else
  19. java后台生成含有echarts图表的报告并发送邮件
  20. JS制作蔡徐坤打篮球小游戏(鸡你太美?)

热门文章

  1. python 去掉双引号_你要偷偷的学Python,然后惊呆所有人(第一天) - python阿喵
  2. 微信公众平台消息接口开发(11)地理位置查询 当地天气及附近商家
  3. echarts的多个y轴
  4. java之将两个数组中的“姓”和“名”随机拼接,让其生成新的名字
  5. 蓝桥杯等差数列,双阶乘
  6. 源码学习 - 【FreeRTOS】PRIVILEGED_FUNCTION 含义理解
  7. PostgreSQL谓词之EXISTS
  8. [分享]老歌150首
  9. 欧洲斯托克 50 指数
  10. 注塑机的锁模力怎么定?