已知(x1,y1) (x2,y2) (x3,y3)三個點,分別求取兩種插值公式
1.牛頓插值公式
過前兩個點的函式f
f = y1 + a1*(x - x1) 將(x2,y2)帶入得 a1=y1+(y2-y1)/(x2-x1)*(x-x1)
過三個點的函式f'
f' = y1 + a1*(x - x1) + a2*(x - x1)*(x - x2) 將(x3,y3)帶入得 [(y3-y2)/(x3-x2) + (y2-y1)/(x2-x1)] / (x3-x1)
如何得出a2 ?
y3 = y1 + a1*(x3 - x1) + a2*(x3 - x1)*(x3 - x2) 式1
將 x3-x1 = x3-x2 + x2-x1 帶入式1得 a2
2. 拉格朗日插值公式
過三個點的函式f
f = y1*f1(x) + y2*f2(x) + y3*f3(x)
當 x=x1 時 f(x1) = y1 即 f1(x1)為1,f2(x1)為0,f3(x1)為0
當 x=x2 時 f(x2) = y2 即 f1(x2)為0,f2(x2)為1,f3(x2)為0
當 x=x3 時 f(x3) = y3 即 f1(x3)為0,f2(x3)為0,f3(x3)為1
即要得到這樣的 fi(xj) 使得 i != j時 fi為0,i = j時 fi為1
取為:f1 = [(x-x2)(x-x3)] / [(x1-x2)(x1-x3)]
f2 = [(x-x1)(x-x3)] / [(x2-x1)(x2-x3)]
f3 = [(x-x1)(x-x2)] / [(x3-x1)(x3-x2)]
3. 例項
取函式 y=3x+x**2+1 上的三點 (0,1) (2,11) (3,19)
牛頓插值法,得a1=5 a2=1
f = 1 + 5*(x-0) + (x-0)*(x-2) = x**2 + 3x + 1
拉格朗日插值法,得
f1=[(x-2)(x-3)] / [(0-2)(0-3)]
f2=[(x-0)(x-3)] / [(2-0)(2-3)]
f3=[(x-0)(x-2)] / [(3-0)(3-2)]
f = f1*1 + f2*11 + f3*19 = x**2 + 3x + 1
可見,結果一樣,但是拉格朗日插值法比較複雜。關於兩者的用途,精度還需討論。
拉格朗日插值法與牛頓插值法
double f double xx 利用拉格朗日插值函式 f x sigma x xj xk xj yk k 1,2,3,4,總結 拉格朗日插值法和牛頓插值法可以使得插值函式完美的匹配給定的節點,在一般情況下,拉格朗日插值法就能滿足我們對於給定樣本進行插值的要求,但是當我們給定的節點個數在不斷增多...
拉格朗日插值的優缺點 拉格朗日與牛頓插值法的比較
第頁共 頁拉格朗日插值法與牛頓插值法的比較 一 背景 在工程和科學研究 現的函式是多種多樣的。常常會遇到這樣的情況 在某個實際 問題中,雖然可以斷定所考慮的函式xf 在區間b a上存在且連續,但卻難以找到它的 解析表示式,只能通過實驗和觀測得到在有限個點上的函式值 即一張函式表 顯然,要利用這張函式...
拉格朗日插值法
拉格朗日插值法 拉格朗日插值法可以幫助我們解決以下的問題 已知x取值0,1,1,2時,f取值2,2,0,6 求x 3時f的值。示例1 intxs intys f 3 intval lagrangepolynomial 3,xs,ys staticint lagrangepolynomial intx...