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?

 채택된 답변

Wayne King
Wayne King 2013년 11월 4일

0 개 추천

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

댓글 수: 1

Wanjie
Wanjie 2013년 11월 4일
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.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Fourier Analysis and Filtering에 대해 자세히 알아보기

질문:

2013년 11월 4일

댓글:

2013년 11월 4일

Community Treasure Hunt

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

Start Hunting!

Translated by