| MATLAB Function Reference | ![]() |
Syntax
VI = interpn(X1,X2,X3,...,V,Y1,Y2,Y3,...) VI = interpn(V,Y1,Y2,Y3,...) VI = interpn(V,ntimes) VI = interpn(...,method)
Description
VI = interpn(X1,X2,X3,...,V,Y1,Y2,Y3,...)
經由內插法求得 VI,其中X1 、 X2...是資料點的輸入部分,V 是資料點的輸入部分,Y1 、 Y2...是內插點,超出範圍的值會傳回 NaN。對 N-D 的 V來說, interpn 需要 2*N+1 個參數,所以 interpn 可以對2維與2維以上的資料作運算。
VI = interpn(V,Y1,Y2,Y3,...)
會假設 X1 = 1:size(V,1) 、 X2 = 1:size(V,2) 、 X3 = 1:size(V,3) 等等以此類推。
VI = interpn(V,ntimes)
藉著在每個元素間插入內插值來延展 V ,遞迴的作 ntimes 次。 interpn(V,1) 就等於 interpn(V)。
VI = interpn(...,method)
可以指定內插的方法:
'linear' |
多維線性內插法 (預設值) |
'cubic' |
多維三次內插 |
'spline' |
多維三次 spline 內插法 |
'nearest' |
鄰近點內插 |
Discussion
這裡所有的內插方法都需要 X1 、 X2 和 X3 是單調的(monotonic),且與 ("plaid") 有相同的格式就好像由 meshgrid 所產生的。在進行內插之前,會把 X1 、 X2 、 X3 ...、 Y1 、 Y2 、 Y3... 調整成等距來作處理。當 X1 、 X2 、 X3 ...已是等距且單調時,就可以用 '*linear'、 '*cubic' 、 ' 或 '*nearest' 來加快執行的速度。
See Also
interp1, interp2, interp3, ndgrid
| interpft | interpstreamspeed | ![]() |