等距結點下的Newton插值多項式係數計算(向前差分)

插值多項式的牛頓法

1.爲什麼須要牛頓法?

​ 使用Lagrange插值法不具有繼承性。當求好通過\(({x_0},{y_0})-({x_n},{y_n})\)共n+1個點的插值曲線時候,若是再增長一個點,由Lagrange插值法通式\[\sum_{k=0}^{n}\frac{\prod_{i=0,i\ne k}^{n}(x-x_i)}{\prod_{i=0,i\ne k}^{n}(x_k-x_i)}y_k\]能夠知道,當再增長一個點時候,Lagrange 多項式還要從新計算以肯定係數。spa

2.牛頓插值多項式

由線性代數的知識能夠知道,任何n次多項式均可以表示成1,\((x-x_0)\)\((x-x_0)(x-x_1)\)\({\ldots}\)\((x-x_0)(x-x_1){\ldots}(x-x_{n-2})(x-x_{n-1})\) 的線性組合形式,牛頓插值多項式正是基於這一點。\(N_n\)(x)=\(a_0\)+\(a_1\)(\(x-x_0\))+\(a_2\)(\(x-x_0\))(\(x-x_1\))+\({\ldots}\)+\(a_n(x-x_0)(x-x_1)(x-x_2){\ldots}(x-x_{n-1})\),其中\(a_k\)爲插值多項式的待定係數。(一下關於牛頓插值多項式係數計算是基於各x結點的等距條件)繼承

3.牛頓向前差分公式

假設\(x=x_k,\)則此時\(y=y_k\),這樣,若\(a_0,a_1,a_2\dots\)則能夠求出\(a_k\)。由於\(N(x_k)=y_k\),而對於含有\(a_{k+1},a_{k+2}\dots a_{n}\)項代入\(x_k\)後值爲0。那麼所求\(a_k\)=\[\frac{y_k-()}{\prod_{i=0}^{k-1}x_k-x_i}\],在假設\(x_k\)爲等距結點的時候,\(x_k\)能夠表示爲\(x_k=x_0+kh\),其中h爲步長。那麼所求\(a_k\)近似可表示爲\(a_k=\frac{y_k-()}{k!h^k}\)class

定義 f(x)在\(x_k\)處的向前差分爲\(\Delta y=y_{k+1}-y_k\),相應的咱們能夠定義\(\Delta y\)的差分,也就是y的二階向前差分\(\Delta^{2} y_k=\Delta y_{k+1}-\Delta y_k\); 這樣,相似咱們能夠定義y的m階向前差分\(\Delta ^{m} y_k = \Delta ^{m-1} y_{k+1} -\Delta ^{m-1} y_k\)。在等距結點\(x=x_0+kh\) 的條件下咱們能夠利用向前差分來導出係數的計算。

4.牛頓向前差分公式係數計算

\(N_n(x_0)=y_0\)能夠獲得\(a_0\)的表達式爲\(a_0=y_0\),這樣咱們能夠定義y的零階向前差分\(\Delta ^0 y=y0\),這樣利用3中推出的\(a_k\)表達式能夠將這個結果化爲這樣的形式\(a_0=\frac{\Delta^0 y_0}{0!h^0}\)。咱們再來看\(a_1\)的表達式。由於\(N_n(x_1)=y_1=a_0+a_1(x_1-x_0)\),而\(a_0\)\(y_0\),則\(a_1=\frac{y_1-y_0}{x_1-x_0}=\frac{\Delta^1 y_0}{1!h^1}\)。一樣的,咱們來計算\(a_2\)的表達式。\(N_n(x_2)=a_0+a_1(x_2-x_0)+a_2(x2-x_0)(x_2-x_1)=y_2\),而又由於\(x_2-x_0=2h,a1\)能夠表示成\(\frac{\Delta y_0}{h}\),於是能夠將\(a_2\)表示爲\(a_2=\frac{y2-y0-\frac{\Delta y_0}{h}2h}{(x_2-x_0)(x_2-x_1)}=\frac{y_2-y_0-2(y_1-y_0)}{2!h^2}=\frac{(y_2-y_1)-(y_1-y_0)}{2!h^2}=\frac{\Delta^2 y_0}{2!h^2}\),這樣規律就很明顯了。事實上,經過計算咱們能夠獲得\(a_k\)的表達式爲\(a_k=\frac{\Delta ^k y_0}{k!h^k}(k=0,1,\cdots {n-1},{n})\),因而咱們能夠將牛頓多項式完整的表達出來了---\(N_n(x)=\frac{\Delta ^0 y_0}{0!h^0}+\frac{\Delta ^1 y_0}{1!h^1}(x-x_0)+\frac{\Delta ^2 y_0}{2!h^2}(x-x_0)(x-x_1)+\cdots+\frac{\Delta ^k y_0}{k!h^k}(x-x_0)(x-x1)\cdots(x-x_{k-1})+\)\(\cdots+\frac{\Delta ^n y_0}{n!h^n}(x-x_0)(x-x_1)\cdots(x-x_{n-1})\)。這樣咱們就獲得了牛頓插值公式的完整表達,經過計算\(y_0\)的n階向前差分就能夠獲得結果了。方法

5.如何再化簡?

​ 咱們再x等距取樣條件下獲得了牛頓插值多項式的表達式,一樣的,能夠充分利用這個條件。也就是設x=\(x_0+th\),其中h爲步長。這樣\[\sum_{i=0}^{k-1}(x-x_i)=th*(t-1)h*\cdots*(t-k+1)h=A_t^kh^k\],而係數\(a_k=\frac{\Delta ^k y_0}{k!h^k}\),所要整合式子能夠獲得\(N_n(x_0+th)=y_0+t\Delta y_0+\frac{t(t-1)\Delta ^2 y_0}{2!}+\cdots+\frac{t(t-1)\cdots(t-n+1\Delta ^ny_0)}{n!}\)=\(\sum_{k=0}^{n}\frac{A_t^k \Delta ^k y_0}{k!}\)di

最後說明

這裏只是利用了等距取點條件計算的牛頓插值公式表達式,實際狀況下取的點不必定等距,所以,在不等距的條件下相應還要計算方法(後面我會逐漸整理的)。除此以外,還能夠用向後差分,中心差分法,限於時間,日後再整理了。時間

相關文章
相關標籤/搜索