版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系我們

[科普中國]-插值

科學(xué)百科
原創(chuàng)
科學(xué)百科為用戶提供權(quán)威科普內(nèi)容,打造知識科普陣地
收藏

在離散數(shù)據(jù)的基礎(chǔ)上補(bǔ)插連續(xù)函數(shù),使得這條連續(xù)曲線通過全部給定的離散數(shù)據(jù)點(diǎn)。1

插值是離散函數(shù)逼近的重要方法,利用它可通過函數(shù)在有限個點(diǎn)處的取值狀況,估算出函數(shù)在其他點(diǎn)處的近似值。

插值:用來填充圖像變換時像素之間的空隙。

發(fā)展歷史早在6世紀(jì),中國的劉焯已將等距二次插值用于天文計(jì)算。

17世紀(jì)之后,I.牛頓,J.-L.拉格朗日分別討論了等距和非等距的一般插值公式。在近代,插值法仍然是數(shù)據(jù)處理和編制函數(shù)表的常用工具,又是數(shù)值積分、數(shù)值微分、非線性方程求根和微分方程數(shù)值解法的重要基礎(chǔ),許多求解計(jì)算公式都是以插值為基礎(chǔ)導(dǎo)出的。

定義給定 n個離散數(shù)據(jù)點(diǎn)(稱為節(jié)點(diǎn) ,k=1,2,...,n。對于 ,求 x所對應(yīng)的 y的值稱為內(nèi)插。2

f(x)為定義在區(qū)間 [a,b]上的函數(shù)。為[a,b]上n個互不相同的點(diǎn), G為給定的某一函數(shù)類。若G上有函數(shù) g(x)滿足:

則稱g(x)為f(x)關(guān)于節(jié)點(diǎn)在 G上的插值函數(shù)。

主要內(nèi)涵插值問題的提法是:假定區(qū)間[a,b]上的實(shí)值函數(shù)f(x)在該區(qū)間上 n+1個互不相同點(diǎn)x0,x1,……,xn 處的值是f (x0),……f(xn),要求估算f(x)在[a,b]中某點(diǎn)x*的值?;舅悸肥?,找到一個函數(shù)P(x),在x0,x1,……,xn的節(jié)點(diǎn)上與f(x)函數(shù)值相同(有時,甚至一階導(dǎo)數(shù)值也相同),用P(x*)的值作為函數(shù)f(x*)的近似。

其通常的做法是:在事先選定的一個由簡單函數(shù)構(gòu)成的有n+1個參數(shù)C0,C1,……Cn的函數(shù)類Φ(C0,C1,……Cn)中求出滿足條件P(xi)=f(xi)(i=0,1,…… n)的函數(shù)P(x),并以P()作為f()的估值。此處f(x)稱為被插值函數(shù),x0,x1,……,xn稱為插值結(jié)(節(jié))點(diǎn),Φ(C0,C1,……Cn)稱為插值函數(shù)類,上面等式稱為插值條件,Φ(C0,C1,……Cn)中滿足上式的函數(shù)稱為插值函數(shù),R(x)= f(x)-P(x)稱為插值余項(xiàng)。當(dāng)估算點(diǎn)屬于包含x0,x1,……,xn的最小閉區(qū)間時,相應(yīng)的插值稱為內(nèi)插,否則稱為外插。

基本類型多項(xiàng)式這是最常見的一種函數(shù)插值。在一般插值問題中,若選取Φ為n次多項(xiàng)式類,由插值條件可以唯一確定一個n次插值多項(xiàng)式滿足上述條件。從幾何上看可以理解為:已知平面上n+1個不同點(diǎn),要尋找一條n次多項(xiàng)式曲線通過這些點(diǎn)。插值多項(xiàng)式一般有兩種常見的表達(dá)形式,一個是拉格朗日插值多項(xiàng)式,另一個是牛頓插值多項(xiàng)式。1

埃爾米特對于函數(shù)f(x),常常不僅知道它在一些點(diǎn)的函數(shù)值,而且還知道它在這些點(diǎn)的導(dǎo)數(shù)值。這時的插值函數(shù)P(x),自然不僅要求在這些點(diǎn)等于f(x)的函數(shù)值,而且要求P(x)的導(dǎo)數(shù)在這些點(diǎn)也等于f(x)的導(dǎo)數(shù)值。這就是埃爾米特插值問題,也稱帶導(dǎo)數(shù)的插值問題。從幾何上看,這種插值要尋求的多項(xiàng)式曲線不僅要通過平面上的已知點(diǎn)組,而且在這些點(diǎn)(或者其中一部分)與原曲線“密切”,即它們有相同的斜率。可見埃爾米特插值多項(xiàng)式比起一般多項(xiàng)式插值有較高的光滑逼近要求。

分段分段插值與樣條插值

為了避免高次插值可能出現(xiàn)的大幅度波動現(xiàn)象,在實(shí)際應(yīng)用中通常采用分段低次插值來提高近似程度,比如可用分段線性插值或分段三次埃爾米特插值來逼近已知函數(shù),但它們的總體光滑性較差。為了克服這一缺點(diǎn),一種全局化的分段插值方法——三次樣條插值成為比較理想的工具。見樣條函數(shù)。

三角函數(shù)當(dāng)被插函數(shù)是以2π為周期的函數(shù)時,通常用n階三角多項(xiàng)式作為插值函數(shù),并通過高斯三角插值表出。

辛克插值 在抽樣信號中我們以使用辛克插值,它可以由樣品值完美地重建原始信號。著名的抽樣定理表述,對于正確的抽樣信號s(t),原始信號可以由抽樣值sk進(jìn)行重建,其公式為:

s(t) = ∑ sksincπ(t-tk) (注:k為下標(biāo))

這里sk代表在時間tk=t0+k*T時的抽樣值,T是抽樣時間,它的倒數(shù)1/T叫做抽樣頻率。此公式表示,已知在規(guī)則分布的區(qū)間中的抽樣值sk,我們就可以根據(jù)辛克函數(shù)先測出抽樣值,然后將它們相加,這樣計(jì)算出任意時間t上的值。

編程使用matlab中使用插值函數(shù)

插值函數(shù)(the function of interpolation )

interp1

調(diào)用函數(shù)的格式(Syntax)

yi = interp1(x,Y,xi)

yi = interp1(Y,xi)

yi = interp1(x,Y,xi,method)

yi = interp1(x,Y,xi,method,'extrap')

yi = interp1(x,Y,xi,method,extrapval)

pp = interp1(x,Y,method,'pp')

調(diào)用格式說明(Description)

yi = interp1(x,Y,xi) 返回矢量X和Y決定的根據(jù)輸入的節(jié)點(diǎn)xi時對應(yīng)的y的值.矢量Y是矢量X的一個函數(shù)映射.

如果Y是一個矩陣,那么插值結(jié)果是一個對應(yīng)的矩陣.

[===================================================

yi = interp1(x,Y,xi) returns vector yi containing elements corresponding to the elements of xi and determined by interpolation within vectors x and Y. The vector x specifies the points at which the data Y is given. If Y is a matrix, then the interpolation is performed for each column of Y and yi is length(xi)-by-size(Y,2).

===================================================]

yi = interp1(x,Y,xi,method)插值中可以使用的方法:

|| ||

[====================================================

yi = interp1(x,Y,xi,method) interpolates using alternative methods:

methodDescription

nearestNearest neighbor interpolation

linearLinear interpolation (default)

splinesplineCubic spline interpolation

pchipPiecewise cubic Hermite interpolation

cubic(Same as 'pchip')

v5cubicCubic interpolation used in MATLAB 5

======================================================]

簡單程序示例

>>x=[0.0 0.1 0.195 0.3 0.401 0.5];

>>y=[0.39849 0.39695 0.39142 0.38138 0.36812 0.35206];

>>plot(x,y);

>>T=interp1(x,y,.25,'linear') %線性插值

(返回結(jié)果T=0.3862)

>> T=interp1(x,y,.25,'nearest') % 兩點(diǎn)插值

(返回結(jié)果T=0.3814)

>>T=interp1(x,y,.25,'spline') % 三次樣條插值

(返回結(jié)果T =0.3867)

>>T=interp1(x,y,.25,'cubic') %三次插值

(返回結(jié)果T =0.3867)

本詞條內(nèi)容貢獻(xiàn)者為:

尚軼倫 - 副教授 - 同濟(jì)大學(xué)數(shù)學(xué)科學(xué)學(xué)院