python之拉格朗日插值演算法完成計算

2021-10-23 09:16:32 字數 1586 閱讀 9576

拉格朗日插值法,如何計算數值?

插值法就是利用已知的點(x,y)建立合適的插值函式y=f(x),將未知點w帶入插值函式 f(x)可以求出函式值 f(w)。對於平面上相異(無兩點在一條直線上)的 n個點,我們可以找到乙個 n次多項式

使這個多項式函式經過這些點。有n+1個未知數(a),我只需要知道n+1個點的函式值就可以解出這n+1個未知數,拉格朗日插值法就是求得這個多項式函式。

1、拉格朗日插值法

(1)將n+1個點代入多項式得

(2)方程的係數矩陣為a的行列式為

1、要求

根據上述基本原理,用python程式語言將已知多點資料畫出影象,並利用這組數值計算一組資料[-3,2,3,-1]對應的拉格朗日插值,並將其形成的多個對應點在影象中標出如圖1

2、具體**

import pylab as pl

import numpy as np

deflagrange

(x,y,w)

: n =

len(x)

res=

0for i in

range

(n):

temp =

1for j in

range

(n):

if i!=j: temp = temp *

(w-x[j])/

(x[i]

- x[j]

) res += temp * y[i]

return res

x =[16,

9,25]

y =[4,

3,5]

lagrange(x,y,

10)

x1=np.linspace(-5

,5,20

)y1= x1**

2+np.random.uniform(-1

,1,20

)x2=[-

3,2,

3,-1

]y2=

for i in x2:

)pl.plot(x1,y1,

'r')

pl.scatter(x2,y2)

pl.xlim(-6

,6)pl.ylim(-5

,30)pl.show(

)

3、執行結果

拉格朗日插值

拉格朗日插值基函式 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 個點,利用...