資源描述:
《插值算法與matlab代碼》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、Matlab中插值函數(shù)匯總和使用說明MATLAB中的插值函數(shù)為interp1,其調(diào)用格式為:??yi=?interp1(x,y,xi,'method')???????????其中x,y為插值點,yi為在被插值點xi處的插值結(jié)果;x,y為向量,'method'表示采用的插值方法,MATLAB提供的插值方法有幾種:'method'是最鄰近插值,'linear'線性插值;'spline'三次樣條插值;'cubic'立方插值.缺省時表示線性插值???注意:所有的插值方法都要求x是單調(diào)的,并且xi不能夠超過x的范圍。例如:
2、在一天24小時內(nèi),從零點開始每間隔2小時測得的環(huán)境溫度數(shù)據(jù)分別為???????????12,9,9,10,18,24,28,27,25,20,18,15,13,推測中午12點(即13點)時的溫度.x=0:2:24;??????y=[12??9??9??10??18?24??28??27??25??20?18?15?13];a=13;?????y1=interp1(x,y,a,'spline')結(jié)果為:?27.8725若要得到一天24小時的溫度曲線,則:xi=0:1/3600:24;yi=interp1(x,y,x
3、i,'spline');plot(x,y,'o',xi,yi)命令1interp1功能一維數(shù)據(jù)插值(表格查找)。該命令對數(shù)據(jù)點之間計算內(nèi)插值。它找出一元函數(shù)f(x)在中間點的數(shù)值。其中函數(shù)f(x)由所給數(shù)據(jù)決定。x:原始數(shù)據(jù)點Y:原始數(shù)據(jù)點xi:插值點Yi:插值點格式(1)yi=interp1(x,Y,xi)?返回插值向量yi,每一元素對應(yīng)于參量xi,同時由向量x與Y的內(nèi)插值決定。參量x指定數(shù)據(jù)Y的點。若Y為一矩陣,則按Y的每列計算。yi是階數(shù)為length(xi)*size(Y,2)的輸出矩陣。(2)yi=in
4、terp1(Y,xi)?假定x=1:N,其中N為向量Y的長度,或者為矩陣Y的行數(shù)。(3)yi=interp1(x,Y,xi,method)?用指定的算法計算插值:’nearest’:最近鄰點插值,直接完成計算;’linear’:線性插值(缺省方式),直接完成計算;’spline’:三次樣條函數(shù)插值。對于該方法,命令interp1調(diào)用函數(shù)spline、ppval、mkpp、umkpp。這些命令生成一系列用于分段多項式操作的函數(shù)。命令spline用它們執(zhí)行三次樣條函數(shù)插值;’pchip’:分段三次Hermite插值。
5、對于該方法,命令interp1調(diào)用函數(shù)pchip,用于對向量x與y執(zhí)行分段三次內(nèi)插值。該方法保留單調(diào)性與數(shù)據(jù)的外形;’cubic’:與’pchip’操作相同;’v5cubic’:在MATLAB5.0中的三次插值。對于超出x范圍的xi的分量,使用方法’nearest’、’linear’、’v5cubic’的插值算法,相應(yīng)地將返回NaN。對其他的方法,interp1將對超出的分量執(zhí)行外插值算法。(4)yi=interp1(x,Y,xi,method,'extrap')?對于超出x范圍的xi中的分量將執(zhí)行特殊的外插值法
6、extrap。(5)yi=interp1(x,Y,xi,method,extrapval)?確定超出x范圍的xi中的分量的外插值extrapval,其值通常取NaN或0。例11.2.>>x=0:10;y=x.*sin(x);3.>>xx=0:.25:10;yy=interp1(x,y,xx);4.>>plot(x,y,'kd',xx,yy)復(fù)制代碼例21.2.>>year=1900:10:2010;3.>>product=[75.99591.972105.711123.203131.669150.697179.3
7、23203.212226.5054.249.633256.344267.893];5.>>p1995=interp1(year,product,1995)6.>>x=1900:1:2010;7.>>y=interp1(year,product,x,'pchip');8.>>plot(year,product,'o',x,y)復(fù)制代碼插值結(jié)果為:1.1.p1995=2.252.9885復(fù)制代碼命令2interp2功能二維數(shù)據(jù)內(nèi)插值(表格查找)格式?(1)ZI=interp2(X,Y,Z,XI,YI)?返回矩陣ZI,
8、其元素包含對應(yīng)于參量XI與YI(可以是向量、或同型矩陣)的元素,即Zi(i,j)←[Xi(i,j),yi(i,j)]。用戶可以輸入行向量和列向量Xi與Yi,此時,輸出向量Zi與矩陣meshgrid(xi,yi)是同型的。同時取決于由輸入矩陣X、Y與Z確定的二維函數(shù)Z=f(X,Y)。參量X與Y必須是單調(diào)的,且相同的劃分格式,就像由命令meshgrid生成的一樣。若Xi與Yi