Documentation Center

  • Trial Software
  • Product Updates

interpft

1-D interpolation using FFT method

Syntax

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

Description

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.

Examples

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);
plot(x,y,'o',xi,yi,'*')
legend('Original data','Interpolated data')

More About

expand all

Algorithms

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

Was this topic helpful?