Find frequency from fourier transform
이전 댓글 표시
I have the following code which generates a sine wave of frequency 30Hz:
num_sam =1000; %number of samples
sam_int = 0.001; %sample interval in seconds
time = sam_int*(1:num_sam); %sample times, in sec's
sin_freq = 30; %in hertz
y = exp(1i*sin_freq*time);
I'd like to perform a Fourier transform of this wave to find the frequency, but every graph I get isn't peaking (if at all) at 30Hz. How can I achieve this?
Thanks.
댓글 수: 1
Adam
2017년 1월 17일
Have you looked at
doc fft
? There are examples of how to do this.
답변 (1개)
Honglei Chen
2017년 1월 17일
The signal should be defined as
exp(1i*2*pi*sin_freq*time)
Otherwise, your frequency is scaled by 2*pi.
HTH
카테고리
도움말 센터 및 File Exchange에서 Discrete Fourier and Cosine Transforms에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!