Fast Linear Interpolation

版本 (3.4 KB) 作者: Umberto Picchini
Performs linear interpolation with a speed acceleration of (up to) 4x.

4.3K 次下载

更新时间 2006/4/20


F = lininterp1f(X,Y,XI,Ydefault) returns the value of the 1-D function Y at the points XI using linear interpolation. Length(F)=length(XI). The vector X specifies the coordinates of the underlying interval. Ydefault is returned for values of XI outside the coordinates in X.
For lininterp1f to work properly:
X must be a monotonically increasing array;
Y must be an array with length(Y)=length(X);
XI must be an array.
Ydefault must be a scalar value or an empty matrix [].

>> x = [1:1:1000];
>> y =log(sqrt(x+1.001)-1.001);
>> xv =[5:.001:100];
>> yinterp =lininterp1f(x,y,xv,[]);

Warning: not much in the way of error checking, since this slows things down, so pay attention to the argument passed to the function!!!

Installation (Windows users):

Simply copy the lininterp1f.dll file in a directory recognizable by MATLAB. You won't need lininterp1f.c to perform computations, but it is useful if you want to read the user instructions or to customize your code. If you modify lininterp1f.c then you must run the following command

mex lininterp1f.c

in order to obtain the new dll file.

Installation (other OS users):

You have to compile lininterp1f.c with your favourite C compiler (write "mex -setup" at the MATLAB prompt), then write

mex lininterp1f.c

in order to obtain the corresponding mex-file (see the table below)

OS ---> Extension
sol2, SunOS 5.x ---> .mexsol
hpux ---> .mexhpux
hp700 ---> .mexhp7
ibm_rs ---> .mexrs6
sgi ---> .mexsg
alpha ---> .mexaxp
glnx86 ---> .mexglx



Umberto Picchini (2023). Fast Linear Interpolation (, MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R13
Windows macOS Linux
Help CenterMATLAB Answers 中查找有关 Interpolation 的更多信息

启发作品: ScaleTime, interp_linear_c

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明

No changes