插值原理(数值计算方法)

插值原理(数值计算方法)

一. 原理介绍

  1. 在数学中,插值(Interpolation)是指通过已知的离散数据点,构造一个连续的函数,该函数能够精确地通过这些数据点,并用来估算在数据点之间或之外的值。

  2. S = ( x 1 , y 1 ) , ( x 2 , y 2 ) , … , ( x n , y n ) S = {(x_1, y_1), (x_2, y_2), \dots, (x_n, y_n)} S=(x1,y1),(x2,y2),,(xn,yn)是一组已知的离散数据点,其中插值问题的目标是找一个函数 f ( x ) f(x) f(x)使得:
    f ( x i ) = y i ( i = 1 , 2 , … , n ) f(x_i) = y_i \quad( i = 1, 2, \dots, n) f(xi)=yi(i=1,2,,n)
    对所有的数据点都同时成立.
    即函数f(x)必须通过所有给定的数据点。


二. 图例

例如我们有上述通过多项式插值方法得到的曲线图样:

(1)在插值点处,插值曲线和插值点的取值完全相同(或者说插值曲线完全经过所有数据点)
(2)在非插值点处没有任何参照指标,函数曲线的图样经过的点对于真实值可能存在较大偏差
(3)可以证明插值函数具有唯一性

这里解释一下插值函数的唯一性
我们假设数据点有n+1个

  1. 插值函数的唯一性描述的是取其中一种具有相同表达形式的插值函数(例如多项式插值),关于这个多项式插值的不同次项系数是可以唯一确定的。常见的我们取n次多项式来进行数据点的插值。
  2. 假设取高于数据点维数的多项式进行插值,我们可以证明其系数不唯一,例如取n+1次多项式进行插值,等同于求解变量(n+2)大于方程数(n+1)的方程组,基于我们已知的数据点,所求解的方程存在无数组解。
  3. 如果取一非线性函数对数据点进行插值,若存在n+1个待求解的系数(包含常数项),且系数之间相互独立,则该方程具有唯一解,也就是说对于n维的非线性插值函数也是唯一的。

我们说插值的函数是不唯一的,但当我们选定要插值的函数时,其待求解的系数和数据点数量等同时,插值函数是唯一的,由此我们说插值函数具有唯一性


三. 唯一性表述

这里给出其中一种关于n次多项式作为插值函数的唯一性的标准证明过程


  1. 问题表述

给定 n+1个插值点 ( x 0 , y 0 ) , ( x 1 , y 1 ) , … , ( x n , y n ) (x_0, y_0), (x_1, y_1), \ldots, (x_n, y_n) (x0,y0),(x1,y1),,(xn,yn),希望找到一个次数不超过n的多项式

P ( x ) = a 0 + a 1 x + a 2 x 2 + ⋯ + a n x n P(x) = a_0 + a_1 x + a_2 x^2 + \cdots + a_n x^n P(x)=a0+a1x+a2x2++anxn

使得对每个插值点 ( x i , y i ) (x_i, y_i) (xi,yi),都有 P ( x i ) = y i P(x_i) = y_i P(xi)=yi
现证明其中参数 a 0 、 a 1 、 . . . 、 a n a_0、a_1、...、a_n a0a1...an都可唯一确定。


  1. 建立方程组

(1)将插值点代入 P ( x ) P(x) P(x),可得方程组:
P ( x 0 ) = y 0 ⇒ a 0 + a 1 x 0 + a 2 x 0 2 + ⋯ + a n x 0 n = y 0 , P ( x 1 ) = y 1 ⇒ a 0 + a 1 x 1 + a 2 x 1 2 + ⋯ + a n x 1 n = y 1 , ⋮ P ( x n ) = y n ⇒ a 0 + a 1 x n + a 2 x n 2 + ⋯ + a n x n n = y n . \begin{aligned} & P(x_0) = y_0 \quad \Rightarrow \quad a_0 + a_1 x_0 + a_2 x_0^2 + \cdots + a_n x_0^n = y_0, \\ & P(x_1) = y_1 \quad \Rightarrow \quad a_0 + a_1 x_1 + a_2 x_1^2 + \cdots + a_n x_1^n = y_1, \\ & \quad \vdots \\ & P(x_n) = y_n \quad \Rightarrow \quad a_0 + a_1 x_n + a_2 x_n^2 + \cdots + a_n x_n^n = y_n. \end{aligned} P(x0)=y0a0+a1x0+a2x02++anx0n=y0,P(x1)=y1a0+a1x1+a2x12++anx1n=y1,P(xn)=yna0+a1xn+a2xn2++anxnn=yn.

(2)写成矩阵形式:

[ 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 ] [ a 0 a 1 a 2 ⋮ a n ] = [ y 0 y 1 y 2 ⋮ y n ] . \begin{bmatrix} 1 & x_0 & x_0^2 & \cdots & x_0^n \\ 1 & x_1 & x_1^2 & \cdots & x_1^n \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & x_n & x_n^2 & \cdots & x_n^n \end{bmatrix} \begin{bmatrix} a_0 \\ a_1 \\ a_2 \\ \vdots \\ a_n \end{bmatrix}= \begin{bmatrix} y_0 \\ y_1 \\ y_2 \\ \vdots \\ y_n \end{bmatrix}. 111x0x1xnx02x12xn2x0nx1nxnn a0a1a2an = y0y1y2yn .

记系数矩阵为 V V V,即:

V = [ 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 ] . V = \begin{bmatrix} 1 & x_0 & x_0^2 & \cdots & x_0^n \\ 1 & x_1 & x_1^2 & \cdots & x_1^n \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & x_n & x_n^2 & \cdots & x_n^n \end{bmatrix}. V= 111x0x1xnx02x12xn2x0nx1nxnn .

该矩阵即为我们熟知的 范德蒙德矩阵(Vandermonde Matrix)


  1. 解的结构

该线性方程组有解的充分必要条件是系数矩阵行列式 ∣ V ∣ |V| V 不为零,即 d e t ( V ) ≠ 0 det(V) \neq 0 det(V)=0
范德蒙德矩阵行列式表示为:
det ⁡ ( V ) = ∏ 0 ≤ i < j ≤ n ( x j − x i ) , \det(V) = \prod_{0 \leq i < j \leq n} (x_j - x_i), det(V)=0i<jn(xjxi),

即有:

  • 若对任意两个 x i x_i xi互不相同,则 d e t ( V ) ≠ 0 det(V) \neq 0 det(V)=0,方程组有唯一解。

显然,插值点之间互不相同,相互独立⇒该方程组有唯一解(得证)


希望能够帮到迷途之中的你,知识有限,如有学术错误请及时指正,感谢大家的阅读

(^^)/▽ ▽\(^^)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是你呀星途

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值