This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.


1-D interpolation using FFT method


y = interpft(x,n)
y = interpft(x,n,dim)


y = interpft(x,n) returns the vector y that contains the value of the periodic function x resampled to n equally spaced points.

If length(x) = m, and x has sample interval dx, then the new sample interval for y is dy = dx*m/n. Note that n cannot be smaller than m.

If X is a matrix, interpft operates on the columns of X, returning a matrix Y with the same number of columns as X, but with n rows.

y = interpft(x,n,dim) operates along the specified dimension.


Interpolate a triangle-like signal using an interpolation factor of 5. First, set up signal to be interpolated:

y = [0 .5 1 1.5 2 1.5 1 .5 0 -.5 -1 -1.5 -2 -1.5 -1 -.5 0];
N = length(y);

Perform the interpolation:

L = 5;
M = N*L;
x = 0:L:L*N-1;
xi = 0:M-1;
yi = interpft(y,M);
legend('Original data','Interpolated data')

More About

collapse all


The interpft command uses the FFT method. The original vector x is transformed to the Fourier domain using fft and then transformed back with more points.

See Also

Introduced before R2006a

Was this topic helpful?