拉格朗日插值 基於scipy實現

2021-07-26 16:30:44 字數 824 閱讀 3832

在節點上給出節點基函式,然後做基函式的線性組合,組合係數為節點函式值,這種插值多項式稱為拉格朗日插值公式

已最簡單的兩點插值為例,已知函式y = f (x)在給定互異點x0, x1上的值為y0= f (x0),y1=f (x1)線性插值就是構造乙個一次多項式

p1(x) = ax + b

使它滿足條件

p1 (x0) = y0 ,p1 (x1) = y1

其幾何解釋就是一條直線,通過已知點a (x0, y0),b(x1, y1)。

線性插值計算方便、應用很廣,但由於它是用直線去代替曲線,因而一般要求[x0, x1]比較小,且f(x)在[x0, x1]上變化比較平穩,否則線性插值的誤差可能很大。為了克服這一缺點,有時用簡單的曲線去近似地代替複雜的曲線,最簡單的曲線是二次曲線,用二次曲線去逼近複雜曲線的情形。

具體可見:

from scipy.interpolate  import lagrange

x = [3, 6, 9]

y = [10, 8, 4]

lagrange(x,y)

#poly1d([ -0.11111111, 0.33333333, 10. ])

以上 lagrange(x,y) 的輸出值 poly1d([−0.11111111,0.33333333,10.]) 值的是多項式的三個係數

即: a0=−0.11111,a1=0.3333333,a2=10.

如果要進行插值操作,可以:

lagrange(x, y)(10)

# 2.222222

拉格朗日插值

拉格朗日插值基函式 li x x x 0 x xi 1 x xi 1 x x n x i x0 xi xi 1 xi xi 1 xi xn 拉格朗日差值函式 ln x i 0 nyil i x 其中,x為缺失值對應的下表序號,ln x 為缺失值的插值結果,xi 為缺失值yi 的下表序號。對全部缺失值...

拉格朗日插值

function s larg1 x,y,xi m length x 求出插值節點向量長度 n length y if m n error 向量x與y的長度必須一致 這裡肯定一致,只是為了消除直接選取x,y資料的時候出錯而設定的 end s 0 for i 1 n z ones 1,length x...

拉格朗日插值

存在性和唯一性的證明以後再補。拉格朗日插值,emmmm,名字挺高階的 joy 它有什麼應用呢?我們在fft中講到過 設 n 1 次多項式為 y sum a i x i 有乙個顯然的結論 如果給定 n 個互不相同的點 x,y 則該 n 1 次多項式被唯一確定 那麼如果給定了這互不相同的 n 個點,利用...