How to do an nonuniform signal FFT?

조회 수: 4 (최근 30일)
Wanjie
Wanjie 2013년 11월 4일
댓글: Wanjie 2013년 11월 4일
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일
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개)

카테고리

Help CenterFile Exchange에서 Fourier Analysis and Filtering에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by