数值分析(4)-多项式插值: 埃尔米塔插值法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kevin_zhao_zl/article/details/90514326

整理一下数值分析的笔记~
目录:

1. 误差
2. 多项式插值与样条插值(THIS)
3. 函数逼近
4. 数值积分与数值微分
5. 线性方程组的直接解法
6. 线性方程组的迭代解法
7. 非线性方程求根
8. 特征值和特征向量的计算
9. 常微分方程初值问题的数值解

1. 埃尔米特插值多项式

定义:设 f ( x ) f(x) 在节点 a x 0 , x 1 , . . . , x n b a\leq x_0,x_1,...,x_n \leq b 处的函数值为 y 0 , y 1 , . . . , y n y_0,y_1,...,y_n ,设 P ( x ) f ( x ) P(x)为f(x) 在区间[a,b]上具有一阶导数的插值函数,

(1) 若要求 P ( x ) P(x) 在区间[a,b]上具有一阶导数(一阶光滑度),显然 P ( x ) P(x) 在节点 x 0 , x 1 , . . . , x n x_0,x_1,...,x_n 处必须满足:

P ( x i ) = f ( x i ) = y i , i = 0 , 1 , . . . , n P ( x i ) = f ( x i ) = y i , i = 0 , 1 , . . . , n P(x_i)=f(x_i)=y_i,i=0,1,...,n\\ P'(x_i)=f'(x_i)=y'_i,i=0,1,...,n

共2n+2个方程解出2n+2个待定的系数,因此P(x)可以是最高次数为2n+1次的多项式,两个节点就是三次多项式作为插值函数。

(2) 若要求P(x)在[a,b]上具有m阶导数(m阶光滑度),显示P(x)在节点 x 0 , x 1 , . . . , x n x_0,x_1,...,x_n 处必须满足:

P ( x i ) = f ( x i ) = y i P ( x i ) = f ( x i ) = y i P ( x i ) = f ( x i ) = y i , i = 0 , 1 , . . . n . . . P m ( x i ) = f m ( x i ) = y i m P(x_i)=f(x_i)=y_i\\ P'(x_i)=f'(x_i)=y'_i\\ P''(x_i)=f''(x_i)=y''_i,i=0,1,...n\\ ... P^{m}(x_i)=f^{m}(x_i)=y^{m}_i

称满足(1)(2)的插值多项式为诶尔米特插值多项式,记为 H k ( x ) H_k(x) ,k为多项式次数。(k过大会影响收敛性和稳定性)

2. 重节点均差

f C n [ a , b ] , x 0 , x 1 , . . . , x n f \in C^n[a,b],x_0,x_1,...,x_n 为[a,b]上的相异节点,则 f [ x 0 , x 1 , . . . , x n ] f[x_0,x_1,...,x_n] 是其变量的连续函数,根据均差定义,若 f C 1 [ a , b ] f\in C^1[a,b] ,则有:

l i m x x 0 f [ x 0 , x ] = l i m x x 0 f ( x ) f ( x 0 ) x x 0 = f ( x 0 ) lim_{x \rarr x_0}f[x_0,x]=\\ lim_{x \rarr x_0}\frac{f(x)-f(x_0)}{x-x_0}=f'(x_0)

由此定义一阶重节点均差:

f [ x 0 , x 0 ] = l i m x x 0 f [ x 0 , x ] = f ( x 0 ) f[x_0,x_0]=lim_{x \rarr x_0} f[x_0,x]=f'(x_0)

类似地可以定义重节点的n阶均差:

f [ x 0 , x 0 , . . . , x 0 ( n ) ] = l i m x i x 0 f [ x 0 , x 1 , . . . , x n ] = 1 n ! f ( n ) ( x 0 ) f[x_0,x_0,...,x_0{(共n个)}]=\\ lim_{x_i \rarr x_0}f[x_0,x_1,...,x_n]=\\ \frac{1}{n!}f^{(n)}(x_0)

3. 两点三次Hermite插值

x x x 0 x_0 x 1 x_1
f ( x ) f(x) y 0 y_0 y 1 y_1
f ( x ) f'(x) y 0 y_0' y 1 y_1'

两个节点最高可用三次Hermite多项式 H 3 ( x ) H_3(x) 作为插值函数,满足:

H 3 ( x i ) = y i , H 3 ( x i ) = y i ( i = 0 , 1 ) H_3(x_i)=y_i,H'_3(x_i)=y'_i(i=0,1)

直接设 H 3 ( x ) = a x 3 + b x 2 + c x + d H_3(x)=ax^3+bx^2+cx+d ,待定系数使计算复杂,不易推广到高次,可以引入四个基函数:

α 0 ( x ) , α 1 ( x ) , β 0 ( x ) , β 1 ( x ) \alpha_0(x),\alpha_1(x),\beta_0(x),\beta_1(x)

使之满足:

α 0 ( x 0 ) = 1 , α 1 ( x 0 ) = 0 , β 0 ( x 0 ) = 0 , β 1 ( x 0 ) = 0 α 0 ( x 1 ) = 0 , α 1 ( x 1 ) = 1 , β 0 ( x 1 ) = 0 , β 1 ( x 1 ) = 0 α 0 ( x 0 ) = 0 , α 1 ( x 0 ) = 0 , β 0 ( x 0 ) = 1 , β 1 ( x 0 ) = 0 α 0 ( x 1 ) = 0 , α 1 ( x 1 ) = 0 , β 0 ( x 1 ) = 0 , β 1 ( x 1 ) = 1 \alpha_0(x_0)=1,\alpha_1(x_0)=0,\beta_0(x_0)=0,\beta_1(x_0)=0\\ \alpha_0(x_1)=0,\alpha_1(x_1)=1,\beta_0(x_1)=0,\beta_1(x_1)=0\\ \alpha'_0(x_0)=0,\alpha'_1(x_0)=0,\beta'_0(x_0)=1,\beta'_1(x_0)=0\\ \alpha'_0(x_1)=0,\alpha'_1(x_1)=0,\beta'_0(x_1)=0,\beta'_1(x_1)=1

又插值函数应满足:

H 3 ( x 0 ) = y 0 , H 3 ( x 1 ) = y 1 H 3 ( x 0 ) = y 0 , H 3 ( x 1 ) = y 1 H_3(x_0)=y_0,H_3(x_1)=y_1\\ H_3'(x_0)=y_0',H_3'(x_1)=y_1'

H 3 ( x ) H_3(x) 用四个插值基函数表示,假设:

H 3 ( x ) = y 0 α 0 ( x ) + y 1 α 1 ( x ) + y 0 β 0 ( x ) + y 1 β 1 ( x ) H 3 ( x ) = y 0 α 0 ( x ) + y 1 α 1 ( x ) + y 0 β 0 ( x ) + y 1 β 1 ( x ) H_3(x)=y_0\alpha_0(x)+y_1\alpha_1(x)+y_0'\beta_0(x)+y_1'\beta_1(x)\\ H_3'(x)=y_0\alpha_0'(x)+y_1\alpha_1'(x)+y_0'\beta_0'(x)+y_1'\beta_1'(x)

由上面的插值基函数的函数值和导函数值可知: x 1 x_1 α 0 ( x ) \alpha_0(x) 的二重零点{ x 1 x_1 处函数值导函数值均为0},即可假设:

α 0 ( x ) = ( x x 1 ) 2 ( a x + b ) \alpha_0(x)=(x-x_1)^2(ax+b)

α 0 ( x 0 ) = 1 , α 0 ( x 0 ) = 0 \alpha_0(x_0)=1,\alpha_0'(x_0)=0 得:

a = 2 ( x 0 x 1 ) 3 , b = 1 ( x 0 x 1 ) 2 + 2 x 0 ( x 0 x 1 ) 3 a=-\frac{2}{(x_0-x_1)^3},\\ b=\frac{1}{(x_0-x_1)^2}+\frac{2x_0}{(x_0-x_1)^3}

使用类似方法可得:

α 0 ( x ) = ( 1 + 2 l 1 ( x ) ) l 0 2 ( x ) = ( 1 + 2 x x 0 x 1 x 0 ) ( x x 1 x 0 x 1 ) 2 \alpha_0(x)=(1+2l_1(x))\cdot l^2_0(x)=\\ \left(1+2\frac{x-x_0}{x_1-x_0}\right)\left(\frac{x-x_1}{x_0-x_1}\right)^2

α 1 ( x ) = ( 1 + 2 l 0 ( x ) ) l 1 2 ( x ) = ( 1 + 2 x x 1 x 0 x 1 ) ( x x 0 x 1 x 0 ) 2 \alpha_1(x)=(1+2l_0(x))\cdot l^2_1(x)=\\ \left(1+2\frac{x-x_1}{x_0-x_1}\right)\left(\frac{x-x_0}{x_1-x_0}\right)^2

β 0 ( x ) = ( x x 0 ) l 0 2 ( x ) = ( x x 0 ) ( x x 1 x 0 x 1 ) 2 \beta_0(x)=(x-x_0) \cdot l^2_0(x)=\\ (x-x_0)\left(\frac{x-x_1}{x_0-x_1}\right)^2

β 1 ( x ) = ( x x 1 ) l 1 2 ( x ) = ( x x 1 ) ( x x 0 x 1 x 0 ) 2 \beta_1(x)=(x-x_1) \cdot l^2_1(x)=\\ (x-x_1)\left(\frac{x-x_0}{x_1-x_0}\right)^2

由此可得两点三次Hermite插值公式

H 3 ( x ) = y 0 α 0 ( x ) + y 1 α 1 ( x ) + y 0 β 0 ( x ) + y 1 β 1 ( x ) y 0 ( 1 + 2 l 1 ( x ) ) l 0 2 ( x ) + y 1 ( 1 + 2 l 0 ( x ) ) l 1 2 ( x ) + y 0 ( x x 0 ) l 0 2 ( x ) + y 1 ( x x 1 ) l 1 2 ( x ) = y 0 ( 1 + 2 x x 0 x 1 x 0 ) ( x x 1 x 0 x 1 ) 2 + y 1 ( 1 + 2 x x 1 x 0 x 1 ) ( x x 0 x 1 x 0 ) 2 + y 0 ( x x 0 ) ( x x 1 x 0 x 1 ) 2 + y 1 ( x x 1 ) ( x x 0 x 1 x 0 ) 2 H_3(x)=y_0\alpha_0(x)+y_1\alpha_1(x)+y_0'\beta_0(x)+y_1'\beta_1(x)\\y_0(1+2l_1(x))\cdot l^2_0(x)+y_1(1+2l_0(x))\cdot l^2_1(x)\\ +y_0'(x-x_0) \cdot l^2_0(x)+y_1'(x-x_1) \cdot l^2_1(x)\\ =y_0\left(1+2\frac{x-x_0}{x_1-x_0}\right)\left(\frac{x-x_1}{x_0-x_1}\right)^2\\ +y_1\left(1+2\frac{x-x_1}{x_0-x_1}\right)\left(\frac{x-x_0}{x_1-x_0}\right)^2\\ +y_0'(x-x_0)\left(\frac{x-x_1}{x_0-x_1}\right)^2\\ +y_1'(x-x_1)\left(\frac{x-x_0}{x_1-x_0}\right)^2

两点三次Hermite插值的余项:

R 3 ( x ) = f ( 4 ) ( ξ ) 4 ! ( x x 0 ) 2 ( x x 1 ) 2 , x 0 ξ x 1 R_3(x)=\frac{f^{(4)}(\xi)}{4!}(x-x_0)^2(x-x_1)^2,\\x_0 \leq \xi \leq x_1

eg.求作二次多项式使其满足:

φ 2 ( 0 ) = y 0 , φ 2 ( 0 ) , φ 1 ( 1 ) = y 1 \varphi_2(0)=y_0,\varphi_2'(0),\varphi_1(1)=y_1

解:

先求基函数 α 0 ( x ) , α 1 ( x ) , β 0 ( x ) \alpha_0(x),\alpha_1(x),\beta_0(x) 满足:

α 0 ( 0 ) = 1 , α 1 ( 0 ) = 0 , β 0 ( 0 ) = 0 α 0 ( 1 ) = 0 , α 1 ( 1 ) = 1 , β 0 ( 1 ) = 0 , α 0 ( 0 ) = 0 , α 1 ( 0 ) = 0 , β 0 ( 0 ) = 1 \alpha_0(0)=1,\alpha_1(0)=0,\beta_0(0)=0\\ \alpha_0(1)=0,\alpha_1(1)=1,\beta_0(1)=0,\\ \alpha'_0(0)=0,\alpha'_1(0)=0,\beta'_0(0)=1

可令:

α 0 ( x ) = ( a + b x ) ( x 1 ) α 1 ( x ) = c x 2 β 0 ( x ) = d x ( x 1 ) \alpha_0(x)=(a+bx)(x-1)\\ \alpha_1(x)=cx^2\\ \beta_0(x)=dx(x-1)

可得a=b=-1,c=1,d=-1,则:

φ 2 ( x ) = y 0 ( 1 x ) 2 + y 1 x 2 + y 0 x ( 1 x ) \varphi_2(x)=y_0(1-x)^2+y_1x^2+y_0'x(1-x)


{持续更新}
欢迎扫描二维码关注微信公众号 深度学习与数学   [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾]
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/kevin_zhao_zl/article/details/90514326
今日推荐