Hi, all,
Have anyone done FFT on an nonuniform signal without interpolation? My measured data are spaced 10 logarithmically and the measurement time is from 0.0001 ms to 10 ms, a very short period of time. When I use logarithmically spaced time, at early time, there will be more sampling points. If I use linear spacing to interpolate these data, the advantage of logarithmic spacing, early time with more data points and late time with few data points, will go away. So I am wondering if there is a method to do nonuniform signal FFT. If there is, how can I set the corresponding frequency in frequency domain?

 Akzeptierte Antwort

Wayne King
Wayne King am 4 Nov. 2013

0 Stimmen

You can use interp1() to interpolate the data to an evenly spaced grid, or you can use software specialized for this task:

1 Kommentar

Wanjie
Wanjie am 4 Nov. 2013
Thank you, Wayne. You are so nice. Can I interpolate the data logarithmically? If I can, how should I calculate the frequency? In linear interpolation, I calculated my frequencies by "f=(0:NFFT/2-1)*Fs/NFFT;", where NFFT is my FFT total points, and Fs is the sampling frequency. I do not know if I used log spaced interpolation, how I calculate the corresponding frequency.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 4 Nov. 2013

Kommentiert:

am 4 Nov. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by