插值法
字数 2521 2025-10-26 09:01:43

插值法

插值法是计算数学中一种通过已知的离散数据点,构造一个简单函数(称为插值函数),使其精确通过所有给定点,并用于估算未知点函数值的方法。

  1. 问题引入与基本概念
    • 核心问题:我们通常只能通过实验、测量或复杂计算获得函数在有限个点上的值(即一组数据点)。但我们需要知道函数在非数据点处的值。例如,测量了一天内每隔两小时的气温,但需要估算下午三点时的温度。
  • 插值的定义:给定一组互不相同的节点 \(x_0, x_1, \dots, x_n\) 及其对应的函数值 \(y_0, y_1, \dots, y_n\),即已知数据点 \((x_i, y_i) (i=0,1,\dots,n)\)。目标是构造一个相对简单的函数 \(p(x)\),使其满足插值条件:\(p(x_i) = y_i\) 对于所有 \(i=0,1,\dots,n\) 都成立。这个函数 \(p(x)\) 就称为插值函数。
    • 插值函数的选择:常用的插值函数有多项式、分段多项式、三角函数等。多项式因其形式简单、易于计算导数和积分而被广泛应用。
  1. 拉格朗日插值
  • 存在性与唯一性:对于 n+1 个数据点,存在唯一一个次数不超过 n 的多项式 \(p_n(x)\) 能够通过所有这些点。这被称为插值多项式的存在唯一性定理。
  • 拉格朗日法的思想:构造这个唯一多项式的一种直观方法是使用“基函数”的线性组合。拉格朗日法的核心是为一每个数据点 \((x_i, y_i)\) 构造一个特定的基函数 \(l_i(x)\),这个基函数在 \(x_i\) 处取值为1,而在其他所有节点 \(x_j (j \neq i)\) 处取值为0。
    • 拉格朗日基函数:第 i 个拉格朗日基函数定义为:

\[ l_i(x) = \prod_{j=0, j\neq i}^{n} \frac{x - x_j}{x_i - x_j} \]

容易验证,\(l_i(x_i) = 1\),且当 \(j \neq i\) 时,\(l_i(x_j) = 0\)
* 插值多项式:有了这组基函数,插值多项式可以简单地写为:

\[ p_n(x) = \sum_{i=0}^{n} y_i l_i(x) \]

这个多项式自动满足所有插值条件 \(p_n(x_i) = y_i\)
* 优点与缺点:拉格朗日插值形式对称、理论优美。但当增加或减少一个数据点时,所有基函数都需要重新计算,效率较低。

  1. 牛顿插值
    • 思想:牛顿插值提供了另一种构造插值多项式的方法,它具有良好的承袭性。当增加一个新的数据点时,可以在原有插值多项式的基础上增加一项,而不需要全部重新计算。
    • 差商的概念:这是牛顿插值的核心工具。差商是函数值的线性组合,用于刻画函数在不同节点间的变化率。
  • 零阶差商:\(f[x_i] = f(x_i)\)
  • 一阶差商:\(f[x_i, x_j] = \frac{f[x_j] - f[x_i]}{x_j - x_i}\)
  • 二阶差商:\(f[x_i, x_j, x_k] = \frac{f[x_j, x_k] - f[x_i, x_j]}{x_k - x_i}\)
    * 以此类推,可以定义 n 阶差商。
    • 牛顿插值多项式:利用差商,插值多项式可以写为:

\[ p_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) + \dots + f[x_0, \dots, x_n](x-x_0)\dots(x-x_{n-1}) \]

  • 优点:增加一个新节点 \((x_{n+1}, y_{n+1})\) 时,只需计算一个新的 n+1 阶差商 \(f[x_0, \dots, x_{n+1}]\),并在原多项式后添加一项 \(f[x_0, \dots, x_{n+1}](x-x_0)\dots(x-x_n)\) 即可,计算效率高。
  1. 插值误差与龙格现象
  • 插值余项/误差:插值多项式 \(p_n(x)\) 与被逼近的未知函数 \(f(x)\) 之间的误差称为插值余项,记为 \(R_n(x) = f(x) - p_n(x)\)
  • 误差公式:如果函数 \(f(x)\) 在包含节点区间上足够光滑(具有 n+1 阶连续导数),则存在一点 \(\xi\) 属于该区间,使得误差为:

\[ R_n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!} \omega_{n+1}(x) \]

其中 \(\omega_{n+1}(x) = (x-x_0)(x-x_1)\dots(x-x_n)\)

  • 龙格现象:这是一个重要的警示。当插值节点等距分布,且对某些函数(如 \(f(x) = 1/(1+x^2)\) 在 [-5,5] 上)使用高次多项式(n 很大)插值时,插值多项式在区间边缘会出现剧烈的振荡,导致误差非常大。这表明并非插值多项式的次数越高,逼近效果就越好。
  1. 分段插值与样条插值
    • 解决龙格现象:为了克服高次多项式插值的振荡问题,最有效的方法是采用低次分段插值。
    • 分段线性插值:将相邻的数据点用直线段连接起来。这种方法简单直观,保证了连续性,但在节点处不可导,图形不光滑。
    • 三次样条插值:这是应用极其广泛的一种分段插值方法。
  • 定义:给定节点和函数值,构造一个函数 \(S(x)\),使其满足:
  1. \(S(x)\) 在每个子区间 \([x_i, x_{i+1}]\) 上是一个三次多项式。
  2. \(S(x_i) = y_i\)(插值条件)。
  3. \(S(x)\)\(S'(x)\)\(S''(x)\) 在整个区间上连续(即连接处直至二阶导数都光滑衔接)。
    * 优点:样条插值既避免了高次多项式的振荡,又比简单的分段线性插值光滑得多,在实际工程和科学计算中非常受欢迎。
插值法 插值法是计算数学中一种通过已知的离散数据点,构造一个简单函数(称为插值函数),使其精确通过所有给定点,并用于估算未知点函数值的方法。 问题引入与基本概念 核心问题 :我们通常只能通过实验、测量或复杂计算获得函数在有限个点上的值(即一组数据点)。但我们需要知道函数在非数据点处的值。例如,测量了一天内每隔两小时的气温,但需要估算下午三点时的温度。 插值的定义 :给定一组互不相同的节点 \( x_ 0, x_ 1, \dots, x_ n \) 及其对应的函数值 \( y_ 0, y_ 1, \dots, y_ n \),即已知数据点 \( (x_ i, y_ i) (i=0,1,\dots,n) \)。目标是构造一个相对简单的函数 \( p(x) \),使其满足插值条件:\( p(x_ i) = y_ i \) 对于所有 \( i=0,1,\dots,n \) 都成立。这个函数 \( p(x) \) 就称为插值函数。 插值函数的选择 :常用的插值函数有多项式、分段多项式、三角函数等。多项式因其形式简单、易于计算导数和积分而被广泛应用。 拉格朗日插值 存在性与唯一性 :对于 n+1 个数据点,存在唯一一个次数不超过 n 的多项式 \( p_ n(x) \) 能够通过所有这些点。这被称为插值多项式的存在唯一性定理。 拉格朗日法的思想 :构造这个唯一多项式的一种直观方法是使用“基函数”的线性组合。拉格朗日法的核心是为一每个数据点 \( (x_ i, y_ i) \) 构造一个特定的基函数 \( l_ i(x) \),这个基函数在 \( x_ i \) 处取值为1,而在其他所有节点 \( x_ j (j \neq i) \) 处取值为0。 拉格朗日基函数 :第 i 个拉格朗日基函数定义为: \[ l_ i(x) = \prod_ {j=0, j\neq i}^{n} \frac{x - x_ j}{x_ i - x_ j} \] 容易验证,\( l_ i(x_ i) = 1 \),且当 \( j \neq i \) 时,\( l_ i(x_ j) = 0 \)。 插值多项式 :有了这组基函数,插值多项式可以简单地写为: \[ p_ n(x) = \sum_ {i=0}^{n} y_ i l_ i(x) \] 这个多项式自动满足所有插值条件 \( p_ n(x_ i) = y_ i \)。 优点与缺点 :拉格朗日插值形式对称、理论优美。但当增加或减少一个数据点时,所有基函数都需要重新计算,效率较低。 牛顿插值 思想 :牛顿插值提供了另一种构造插值多项式的方法,它具有良好的承袭性。当增加一个新的数据点时,可以在原有插值多项式的基础上增加一项,而不需要全部重新计算。 差商的概念 :这是牛顿插值的核心工具。差商是函数值的线性组合,用于刻画函数在不同节点间的变化率。 零阶差商:\( f[ x_ i] = f(x_ i) \)。 一阶差商:\( f[ x_ i, x_ j] = \frac{f[ x_ j] - f[ x_ i]}{x_ j - x_ i} \)。 二阶差商:\( f[ x_ i, x_ j, x_ k] = \frac{f[ x_ j, x_ k] - f[ x_ i, x_ j]}{x_ k - x_ i} \)。 以此类推,可以定义 n 阶差商。 牛顿插值多项式 :利用差商,插值多项式可以写为: \[ p_ n(x) = f[ x_ 0] + f x_ 0, x_ 1 + f x_ 0, x_ 1, x_ 2 (x-x_ 1) + \dots + f x_ 0, \dots, x_ n \dots(x-x_ {n-1}) \] 优点 :增加一个新节点 \( (x_ {n+1}, y_ {n+1}) \) 时,只需计算一个新的 n+1 阶差商 \( f[ x_ 0, \dots, x_ {n+1}] \),并在原多项式后添加一项 \( f x_ 0, \dots, x_ {n+1} \dots(x-x_ n) \) 即可,计算效率高。 插值误差与龙格现象 插值余项/误差 :插值多项式 \( p_ n(x) \) 与被逼近的未知函数 \( f(x) \) 之间的误差称为插值余项,记为 \( R_ n(x) = f(x) - p_ n(x) \)。 误差公式 :如果函数 \( f(x) \) 在包含节点区间上足够光滑(具有 n+1 阶连续导数),则存在一点 \( \xi \) 属于该区间,使得误差为: \[ R_ n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!} \omega_ {n+1}(x) \] 其中 \( \omega_ {n+1}(x) = (x-x_ 0)(x-x_ 1)\dots(x-x_ n) \)。 龙格现象 :这是一个重要的警示。当插值节点等距分布,且对某些函数(如 \( f(x) = 1/(1+x^2) \) 在 [ -5,5 ] 上)使用高次多项式(n 很大)插值时,插值多项式在区间边缘会出现剧烈的振荡,导致误差非常大。这表明并非插值多项式的次数越高,逼近效果就越好。 分段插值与样条插值 解决龙格现象 :为了克服高次多项式插值的振荡问题,最有效的方法是采用低次分段插值。 分段线性插值 :将相邻的数据点用直线段连接起来。这种方法简单直观,保证了连续性,但在节点处不可导,图形不光滑。 三次样条插值 :这是应用极其广泛的一种分段插值方法。 定义 :给定节点和函数值,构造一个函数 \( S(x) \),使其满足: \( S(x) \) 在每个子区间 \( [ x_ i, x_ {i+1} ] \) 上是一个三次多项式。 \( S(x_ i) = y_ i \)(插值条件)。 \( S(x) \)、\( S'(x) \)、\( S''(x) \) 在整个区间上连续(即连接处直至二阶导数都光滑衔接)。 优点 :样条插值既避免了高次多项式的振荡,又比简单的分段线性插值光滑得多,在实际工程和科学计算中非常受欢迎。