拉格朗日插值基函数求和归一的分析
一. 什么是拉格朗日插值基函数?它们是如何构造的?
[!NOTE] 拉格朗日插值基函数
拉格朗日插值基函数(Basis Function)是构造拉格朗日插值多项式的核心工具,是为每个插值节点单独构造的函数,记为Li(x)L_i(x)Li(x).
构造
其核心特性是:在对应的插值点xix_ixi处取值为1,而在其他所有插值点xj(j≠i)x_j (j\neq i)xj(j=i)处取值为0,即满足克罗内克δ函数条件:
Li(xj)={1,j=i0,j≠i \begin{equation} L_i(x_j)= \begin{cases} 1,\quad j=i\\ 0,\quad j \neq i \\ \end{cases} \end{equation} Li(xj)={1,j=i0,j=i
对于给定的n+1n+1n+1个互异插值节点{x0,x1,…,xn}\{x_0,x_1,…,x_n\}{x0,x1,…,xn},每个基函数Li(x)L_i(x)Li(x)的构造公式为:
Li(x)=∏0≤j≤nj≠ix−xjxi−xj \begin{equation} L_i(x)= \prod_{\substack{0 \leq j \leq n \\ j \neq i}}\frac{x-x_j}{x_i-x_j} \end{equation} Li(x)=0≤j≤nj=i∏xi−xjx−xj
分子:(x−x0)(x−x1)⋯(x−xn−1)(x−xn)(x-x_0)(x-x_1) \cdots (x-x_{n-1})(x-x_{n})(x−x0)(x−x1)⋯(x−xn−1)(x−xn),没有(x−xi)(x-x_i)(x−xi)这一项,nnn项相乘,nnn阶方程.
分母:(xi−x0)(xi−x1)⋯(xi−xn−1)(xi−xn)(x_i-x_0)(x_i-x_1) \cdots (x_i-x_{n-1})(x_i-x_{n})(xi−x0)(xi−x1)⋯(xi−xn−1)(xi−xn),没有(xi−xi)(x_i-x_i)(xi−xi)这一项,nnn项相乘.
某个角度来讲,分子分母对仗工整,其中xix_ixi是定值,xxx为变量,可谓是动中有静,静中有动,动静结合。
例如,对于3个节点(x0,x1,x2)(x_0,x_1,x_2)(x0,x1,x2),基函数L1(x)L_1(x)L1(x)的构造为:
L1(x)=(x−x0)(x−x2)(x1−x0)(x1−x2) L_1(x)=\frac{(x-x_0)(x-x_2)}{(x_1-x_0)(x_1-x_2)} L1(x)=(x1−x0)(x1−x2)(x−x0)(x−x2)
当我们取{x0=0,x1=1,x2=2}\{x_0=0,x_1=1,x_2=2\}{x0=0,x1=1,x2=2}时,示例图如下:
部分性质:
-
局部性:基函数在非对应节点处为0,仅对自身节点的贡献为1,保证了插值多项式的局部精确性
-
和归一性:
- 所有基函数的和恒为1,即∑i=0nLi(x)=1\sum_{i=0}^n L_i(x)=1∑i=0nLi(x)=1,这一性质在误差分析中具有重要意义
二. 拉格朗日插值基函数求和归一的分析
对于给定的(n+1)(n+1)(n+1)个互异插值节点的nnn个朗格朗日插值基函数求和,结果表现出与自变量的无关性,恒等于111.
即:∑i=0nLi(x)=1\sum_{i=0}^{n}L_i(x)=1i=0∑nLi(x)=1
证明:
对于(n+1)(n+1)(n+1)个互异插值节点的拉格朗日插值基函数,它是一个nnn次多项式。
Li(x)=(x−x0)(x−x1)⋯(x−xn)(xi−x0)(xi−x1)⋯(xi−xn),其中分子不包含(x−xi)这一项,分母不包含(xi−xi) L_i(x) = \frac{(x-x_0)(x-x_1) \cdots (x-x_n)}{(x_i-x_0)(x_i-x_1) \cdots (x_i-x_n)},\quad 其中分子不包含(x-x_i)这一项,分母不包含(x_i-x_i) Li(x)=(xi−x0)(xi−x1)⋯(xi−xn)(x−x0)(x−x1)⋯(x−xn),其中分子不包含(x−xi)这一项,分母不包含(xi−xi)
对Li(x)L_i(x)Li(x)进行{i=0⋯n}\{i=0 \cdots n\}{i=0⋯n}的求和,会得到一个nnn阶多项式,"项数"为n+1n+1n+1.
g(x)=∑i=0nLi(x),g(x)为一个n阶,(n+1)项的多项式. g(x)=\sum_{i=0}^{n}L_i(x),\quad g(x)为一个n阶,(n+1)项的多项式. g(x)=i=0∑nLi(x),g(x)为一个n阶,(n+1)项的多项式.
对于每个插值节点xi,i={0,1,⋯ ,n}x_i,i=\{0,1, \cdots ,n\}xi,i={0,1,⋯,n},多项式的结果均为111.
g(xi)=Li(xi)+∑j=0nLj(xi),其中j≠i又:Li(xi)=1,Lj(xi)=0故:g(xi)=1,xi=x0,x1,⋯ ,xn \begin{align} &g(x_i) = L_i(x_i)+\sum_{j=0}^{n}L_j(x_i),\quad 其中j \neq i \\ 又:\quad &L_i(x_i)=1,\quad L_j(x_i)=0 \\ 故:\quad &g(x_i)=1,\quad x_i=x_0,x_1, \cdots ,x_n \end{align} 又:故:g(xi)=Li(xi)+j=0∑nLj(xi),其中j=iLi(xi)=1,Lj(xi)=0g(xi)=1,xi=x0,x1,⋯,xn
则有:
h(x)=g(x)−1.<1>对于:h(x)=0,有n+1个根:{x0,x1,⋯ ,xn}故有:h(x)=a(x−x0)(x−x1)⋯(x−xn);除系数a外n+1项相乘对应它有n+1个根故:h(x)应是一个(n+1)阶多项式,有n+1个根<2>然而:h(x)=g(x)−1,其中g(x)是一个n阶多项式(前面提过)故:h(x)应是一个n阶多项式,最多有n个根<3>综上有:a(x−x0)(x−x1)⋯(x−xn)=∑i=0nLi(x)−1 \begin{aligned} &h(x)=g(x)-1. \\\\ <1> 对于:\quad &h(x)=0 ,\quad 有n+1个根:\{x_0,x_1,\cdots,x_n\} \\ 故有:\quad &h(x)=a(x-x_0)(x-x_1)\cdots(x-x_n);\quad 除系数a外n+1项相乘对应它有n+1个根 \\ 故:\quad &h(x)应是一个(n+1)阶多项式,有n+1个根 \\\\ <2>然而:\quad &h(x)=g(x)-1,其中g(x)是一个n阶多项式(前面提过) \\ 故:\quad &h(x)应是一个n阶多项式,最多有n个根 \\\\ <3>综上有:\quad &a(x-x_0)(x-x_1)\cdots(x-x_n)=\sum_{i=0}^{n}L_i(x)-1 \\ \end{aligned} <1>对于:故有:故:<2>然而:故:<3>综上有:h(x)=g(x)−1.h(x)=0,有n+1个根:{x0,x1,⋯,xn}h(x)=a(x−x0)(x−x1)⋯(x−xn);除系数a外n+1项相乘对应它有n+1个根h(x)应是一个(n+1)阶多项式,有n+1个根h(x)=g(x)−1,其中g(x)是一个n阶多项式(前面提过)h(x)应是一个n阶多项式,最多有n个根a(x−x0)(x−x1)⋯(x−xn)=i=0∑nLi(x)−1
看起来好像是矛盾的,一个n+1n+1n+1阶多项式怎么会等于一个nnn阶多项式呢?
g(x)−1g(x)-1g(x)−1是一个nnn阶多项式,故其最多有nnn个根,这与已知的其“有”n+1n+1n+1个根是矛盾的,故g(x)−1g(x)-1g(x)−1定是一个零多项式,零多项式恒为000,故理论上有无数个根,如此以来也就可以“有”n+1n+1n+1个根了。这是“代数基本定理”的推论的应用。
问题有趣的地方就在这里。如果左项的系数aaa等于000,左项为0、且右项为0的话,此时等式是成立的,也无关乎什么阶数的问题了。
故:当且仅当h(x)恒为0时,等式成立.故:g(x)恒为1,即g(x)=1 \begin{align} 故:\quad &当且仅当h(x)恒为0时,等式成立. \\\\ 故:\quad &g(x)恒为1,\quad 即g(x)=1 \\ \end{align} 故:故:当且仅当h(x)恒为0时,等式成立.g(x)恒为1,即g(x)=1
至此“拉格朗日插值基函数求和归一”得证.
%%
其实若是想硬证明(直接验证)也可以尝试,可以找个”低阶的“,算算试试。
例如:
L0(x)=(x−x1)(x−x2)(x0−x1)(x0−x2),L1(x)=(x−x0)(x−x2)(x1−x0)(x1−x2)L2(x)=(x−x0)(x−x1)(x2−x0)(x2−x1)L0(x)+L1(x)+L2(x)=(x1−x2)(x−x1)(x−x2)(x0−x1)(x0−x2)(x1−x2)+(x2−x0)(x−x0)(x−x2)(x0−x1)(x0−x2)(x1−x2)+(x0−x1)(x−x0)(x−x1)(x0−x1)(x0−x2)(x1−x2)要证:L0(x)+L1(x)+L2(x)=1,即证:(x1−x2)(x−x1)(x−x2)+(x2−x0)(x−x0)(x−x2)+(x0−x1)(x−x0)(x−x1)(x0−x1)(x0−x2)(x1−x2)=1即证:(x1−x2)(x−x1)(x−x2)+(x2−x0)(x−x0)(x−x2)+(x0−x1)(x−x0)(x−x1)−(x0−x1)(x0−x2)(x1−x2)=0即证:(x1−x2)[x2−(x1+x2)x+x1x2]+(x2−x0)[x2−(x0+x2)x+x0x2]+(x0−x1)[x2−(x0+x1)x+x0x1]−(x0−x1)(x0−x2)(x1−x2)=0然后我们可以将x2的系数相加:(x1−x2+x2−x0+x0−x1)=0x的系数相加:(x22−x12+x02−x22+x12−x02)=0常数项相加:(x1−x2)x1x2+(x2−x0)x2x0+(x0−x1)x0x1−(x0−x1)(x0−x2)(x1−x2)=0,(是等于零的哈,这里我就不展开算了)L0(x)+L1(x)+L2(x)=1得证. \begin{aligned} &L_0(x)=\frac{(x-x_1)(x-x_2)}{(x_0-x_1)(x_0-x_2)}, \qquad L_1(x)=\frac{(x-x_0)(x-x_2)}{(x_1-x_0)(x_1-x_2)} \qquad L_2(x)=\frac{(x-x_0)(x-x_1)}{(x_2-x_0)(x_2-x_1)} \\ &L_0(x)+L_1(x)+L_2(x)=\frac{(x_1-x_2)(x-x_1)(x-x_2)}{(x_0-x_1)(x_0-x_2)(x_1-x_2)}+\frac{(x_2-x_0)(x-x_0)(x-x_2)}{(x_0-x_1)(x_0-x_2)(x_1-x_2)}+\frac{(x_0-x_1)(x-x_0)(x-x_1)}{(x_0-x_1)(x_0-x_2)(x_1-x_2)} \\ &要证: L_0(x)+L_1(x)+L_2(x)=1, \\ &即证:\frac{(x_1-x_2)(x-x_1)(x-x_2)+(x_2-x_0)(x-x_0)(x-x_2)+(x_0-x_1)(x-x_0)(x-x_1)}{(x_0-x_1)(x_0-x_2)(x_1-x_2)}=1 \\\\ &即证:(x_1-x_2)(x-x_1)(x-x_2)+(x_2-x_0)(x-x_0)(x-x_2)+(x_0-x_1)(x-x_0)(x-x_1)-(x_0-x_1)(x_0-x_2)(x_1-x_2)=0 \\ &即证:(x_1-x_2)[x^2-(x_1+x_2)x+x_1x_2]+(x_2-x_0)[x^2-(x_0+x_2)x+x_0x_2]+(x_0-x_1)[x^2-(x_0+x_1)x+x_0x_1]-(x_0-x_1)(x_0-x_2)(x_1-x_2)=0 \\ &然后我们可以将x^2的系数相加:(x_1-x_2+x_2-x_0+x_0-x_1)=0 \\ &x的系数相加:(x_2^2-x_1^2+x_0^2-x_2^2+x_1^2-x_0^2)=0 \\ &常数项相加:(x_1-x_2)x_1x_2+(x_2-x_0)x_2x_0+(x_0-x_1)x_0x_1-(x_0-x_1)(x_0-x_2)(x_1-x_2)=0,\quad(是等于零的哈,这里我就不展开算了) \\ &L_0(x)+L_1(x)+L_2(x)=1得证. \end{aligned} L0(x)=(x0−x1)(x0−x2)(x−x1)(x−x2),L1(x)=(x1−x0)(x1−x2)(x−x0)(x−x2)L2(x)=(x2−x0)(x2−x1)(x−x0)(x−x1)L0(x)+L1(x)+L2(x)=(x0−x1)(x0−x2)(x1−x2)(x1−x2)(x−x1)(x−x2)+(x0−x1)(x0−x2)(x1−x2)(x2−x0)(x−x0)(x−x2)+(x0−x1)(x0−x2)(x1−x2)(x0−x1)(x−x0)(x−x1)要证:L0(x)+L1(x)+L2(x)=1,即证:(x0−x1)(x0−x2)(x1−x2)(x1−x2)(x−x1)(x−x2)+(x2−x0)(x−x0)(x−x2)+(x0−x1)(x−x0)(x−x1)=1即证:(x1−x2)(x−x1)(x−x2)+(x2−x0)(x−x0)(x−x2)+(x0−x1)(x−x0)(x−x1)−(x0−x1)(x0−x2)(x1−x2)=0即证:(x1−x2)[x2−(x1+x2)x+x1x2]+(x2−x0)[x2−(x0+x2)x+x0x2]+(x0−x1)[x2−(x0+x1)x+x0x1]−(x0−x1)(x0−x2)(x1−x2)=0然后我们可以将x2的系数相加:(x1−x2+x2−x0+x0−x1)=0x的系数相加:(x22−x12+x02−x22+x12−x02)=0常数项相加:(x1−x2)x1x2+(x2−x0)x2x0+(x0−x1)x0x1−(x0−x1)(x0−x2)(x1−x2)=0,(是等于零的哈,这里我就不展开算了)L0(x)+L1(x)+L2(x)=1得证.
%%
一些个人思考:
这也是拉格朗日插值基函数精妙的地方之一,基函数其实某个角度来讲有点像是一个“权重”,插值基函数求和恒为一,即权重的总和恒为一,这是很合理的一件事,不是吗?
拉格朗日插值多项式:
P(x)=∑i=0nyiLi(x) \begin{align} P(x)=\sum_{i=0}^n y_i L_i(x) \end{align} P(x)=i=0∑nyiLi(x)
其中yiy_iyi为插值节点自变量所对应的“真实因变量”,(x1,y1),(x2,y2)⋯(xn,yn)(x_1,y_1),(x_2,y_2)\cdots(x_n,y_n)(x1,y1),(x2,y2)⋯(xn,yn)某个角度来讲可以看作是nnn个“样本”,根据样本构建插值多项式,某个角度来讲就是根据已有的样本信息,对自变量与因变量之间的关系进行了某种程度上的相对合理的预测或者说推测。
拉格朗日插值多项式中的每一项yiLi(x)y_iL_i(x)yiLi(x)某个角度来讲体现的是(xi,yi)(x_i,y_i)(xi,yi)这个样本点的信息,又可以讲拉格朗日插值基函数Li(x)L_i(x)Li(x)是插值多项式中已知信息中的(xi,yi)(x_i,y_i)(xi,yi)这个点在整体推测和表现中的权重的动态体现。
示例图:
当输入样本点时,x=xi,Li(xi)=1,Lj(xi)=0,j≠ix=x_i,L_i(x_i)=1,L_j(x_i)=0,j\neq ix=xi,Li(xi)=1,Lj(xi)=0,j=i,表示此时这个点在整体推测和表现中所占权重为111,即为“整体”,插值多项式映射出yiy_iyi .当输入非样本点时,各部分样本信息在整体推测和表现中的权重均不为零,映射出的yyy值某个角度来讲相当于是“采样”了所有已知的“样本点信息“的结果。
在插值多项式的构建过程中,所有“样本点”的信息都在被尝试充分利用和体现,而所有“样本点”的插值基函数的求和又恒为1,体现了在整体的推测和表现中,所有“样本点”的权重总和为1的性质,即“预测”结果是根据所有“样本点”的信息而得出的结果,即推测的依据和信息的采样的“整体域”在所有“样本点”。
总结
总的而言,拉格朗日插值基函数求和归一的性质,也可以说是其合理性的部分体现。
更多推荐
所有评论(0)